Подход для большого набора данных для отчетности

У меня 220 миллионов необработанных файлов в AWS s3, которые я собираюсь объединить в один файл, который оценивается примерно в 10 терабайт. Файл слияния будет служить таблицей фактов, но в формате файла для отчетов для аудита.

Необработанные файлы - это исходные данные из приложения. Если в приложении появятся какие-либо новые данные, содержимое файла изменится.

Я хотел бы спросить, сталкивался ли кто-нибудь с этим непрерывным процессом для этого пользовательского случая?

s3 -> ETL (объединение файлов) -> s3 -> отчет (таблица)


person Alwin    schedule 03.07.2019    source источник


Ответы (1)


Я лично не пробовал, но это то, для чего создана Athena ... Пропуск процесса ETL и выполнение запросов непосредственно из файлов. Есть ли причина, по которой вы сбрасываете все это в один файл вместо того, чтобы хранить его разрозненно? Повторная перезапись файла размером 10 ТБ снова и снова очень дорого и требует много времени ... Я лично по крайней мере исследовал бы сохранение файлов 1-1 вместе с исходными файлами.

  1. Создайте триггер s3, который срабатывает при перезаписи файла на s3
  2. Создайте лямбда-выражение, которое создает файлы отчетов, готовых к аудиту, на s3
  3. Используйте AWS Athena для запроса этих файлов отчетов.
  4. Коннектор Tableau к Athena для ваших отчетов
person Rob Conklin    schedule 03.07.2019