Лимит AWS Glue JSON

Попытка использовать AWS Glue для автоматического сканирования и каталогизации файлов JSON в корзине S3, как описано здесь:

https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html

Файлы размером менее 1 МБ успешно каталогизируются, однако файлы размером более 1 МБ не могут быть каталогизированы и классифицируются как Unknown.

Пробовали подход, указанный здесь: AWS Glue Crawler Классифицирует файл json как НЕИЗВЕСТНО

Однако без разницы.

Хотелось бы узнать, были ли у кого-нибудь подобные проблемы?


person timothyclifford    schedule 20.11.2018    source источник


Ответы (1)


У меня точно такая же проблема. Вы пробовали объединить данные в ORC или что-то подобное? Кажется, есть ограничение на вложенный JSON определенного размера, даже с настраиваемыми классификаторами. Или вы можете изменить свой JSON с

[
   { .... },
   { .....},
]

в просто

{ ... }
{ ... }

Что должно работать в Glue.

Это сценарий Python, который я запустил, чтобы получить это преобразование (работал с JSON 200 МБ):

import json
with open('./Data/data.json') as f:
    data = json.load(f)
with open('./Data/data_flat.json', 'w') as file:
    for entry in data['locations']:
        file.write(json.dumps(entry)+'\n')

Теперь клей правильно его классифицирует!

person Finn Ickler    schedule 26.11.2018
comment
Спасибо, посмотрю, поможет ли это! - person timothyclifford; 27.11.2018