У меня, как мне кажется, должен быть относительно простой вариант использования AWS Glue, но у меня много проблем с выяснением, как его реализовать.
У меня есть задание Kinesis Firehose, дампящее потоковые данныев ведро S3.Эти файлы состоят из серии отдельных событий просмотра веб-страниц, представленных в виде документов JSON с различной структурой (например, один документ может иметь поле «дата», но не поле «имя», тогда как другой может иметь «имя», но не «дата»).).
Я хочу запускать почасовые задания ETL для этих файлов, особенности которых не имеют отношения к данному вопросу.
Я пытаюсь запустить сканер каталога данных S3 ипроблема, с которой я сталкиваюсь, состоит в том, что выходной формат Kinesis - это не сам , а действительный JSON, что просто сбивает с толку.Вместо этого это набор документов JSON, разделенных переводом строки.Искатель может автоматически идентифицировать и анализировать файлы JSON, но не может это проанализировать.
Я думал о написании лямбда-функции для «исправления» файла Firehose, вызванного его созданием в корзине, но это звучит какдешевый обходной путь для двух частей, которые должны аккуратно совмещаться.
Другой вариант - это просто обойти каталог данных и выполнить необходимые преобразования в самом скрипте Glue, но я понятия не имею, какчтобы начать это.
Я что-то упустил?Есть ли более простой способ синтаксического анализа выходных файлов Firehouse или, если это не сработает, обходя необходимость в гусеничном шасси?
ура и заранее спасибо