У меня есть файлы JSON в корзине S3, которая следует этой схеме:
{
"object1" : {...},
"arrayObjects1" : [
{...},{...},...
],
"object2" : {...},
"arrayObjects2" : [
{...}, {...}, ...
],
"object3" " {...},
"arrayObjects3" : [
{...}, {...}, ...
]
}
Я хотел бы создать отдельную таблицу для каждого из индексов первого уровня. В этом случае это будет означать 6 таблиц, по одной для object1, object2 и т. Д. Каждая из них может быть довольно длинной, если для каждой таблицы требуется отдельная таблица.
До сих пор я пытался добавить некоторые пользовательские классификаторы, чтобы попытаться достичь того, что я ищу. Они выглядят так:
Попробуйте 1:
$.object1
$.arrayObjects1
и т.д.
Попробуйте 2:
$.object1
$.arrayObjects1[*]
и т.д.
Работая с этими классификаторами, я получаю ту же схему для своей таблицы, которая была у меня, когда я запускал сканер без специального классификатора. После дальнейшего прочтения я полагаю, что эти классификаторы вместо этого ограничат то, что данные фактически делают в мою таблицу, вместо того, чтобы создавать отдельную таблицу для каждого индекса.
Возможно, я поступаю по этому поводу совершенно неправильно, но я хотел бы иметь возможность создавать таблицы из Glue с использованием сканеров и классификаторов вместо создания таблиц через Athena, что, как мы надеемся, позволит сэкономить на расходах по мере увеличения размера набора данных. Если у кого-то есть рекомендации, это было бы здорово.
ОБНОВЛЕНИЕ: Я изучал AWS Glue Jobs, и похоже, что это путь. Если у кого-то есть опыт здесь, это было бы очень полезно. Спасибо