Таблица разделов в AWS Glue для нескольких столов с помощью клея - PullRequest
0 голосов
/ 08 января 2019

У меня есть файлы JSON в корзине S3, которая следует этой схеме:

{
    "object1" : {...},
    "arrayObjects1" : [
        {...},{...},...
    ],
    "object2" : {...},
    "arrayObjects2" : [
        {...}, {...}, ...
    ],
    "object3" " {...}, 
    "arrayObjects3" : [
        {...}, {...}, ...
    ]
}

Я хотел бы создать отдельную таблицу для каждого из индексов первого уровня. В этом случае это будет означать 6 таблиц, по одной для object1, object2 и т. Д. Каждая из них может быть довольно длинной, если для каждой таблицы требуется отдельная таблица.

До сих пор я пытался добавить некоторые пользовательские классификаторы, чтобы попытаться достичь того, что я ищу. Они выглядят так:

Попробуйте 1:

$.object1
$.arrayObjects1

и т.д.

Попробуйте 2:

$.object1
$.arrayObjects1[*]

и т.д.

Работая с этими классификаторами, я получаю ту же схему для своей таблицы, которая была у меня, когда я запускал сканер без специального классификатора. После дальнейшего прочтения я полагаю, что эти классификаторы вместо этого ограничат то, что данные фактически делают в мою таблицу, вместо того, чтобы создавать отдельную таблицу для каждого индекса.

Возможно, я поступаю по этому поводу совершенно неправильно, но я хотел бы иметь возможность создавать таблицы из Glue с использованием сканеров и классификаторов вместо создания таблиц через Athena, что, как мы надеемся, позволит сэкономить на расходах по мере увеличения размера набора данных. Если у кого-то есть рекомендации, это было бы здорово.

ОБНОВЛЕНИЕ: Я изучал AWS Glue Jobs, и похоже, что это путь. Если у кого-то есть опыт здесь, это было бы очень полезно. Спасибо

...