Самый простой способ добиться этого - использовать Amazon Athena для чтения и объединения файлов. Athena - это управляемая служба запросов, основанная на Presto , которая может считывать файлы различных форматов.
Поток шагов будет следующим:
- Создание определения таблицы в Афинекоторый определяет форматы входного файла и расположение входных данных
- (Вы можете использовать сканер клея AWS, чтобы сделать это за вас)
- Использовать CREATETABLE AS для запроса исходной таблицы
- Это позволит извлечь данные из исходных файлов и записать вывод в новое местоположение
- Вы можете указать формат вывода и расположение
Думайте об Афине как о «слое запросов» поверх Amazon S3. Он считывает входные данные из всех файлов в данном каталоге S3 и может затем вывести результаты обратно на S3. Вы можете сделать простое SELECT *
, чтобы скопировать все данные, или вы можете управлять результатами, выбирая только нужные поля и записи (используя SELECT
и WHERE
).
Афина может быть запущенаиз консоли управления или запускается с помощью обычного пакета AWS SDK (например, Java).
Преимущество использования Athena заключается в том, что нет необходимости загружать исходные файлы и загружать результат - все это будет сделаноАфиной.
Афина взимается в зависимости от данных, прочитанных с диска . Сжатые файлы снижают эту стоимость.