Объедините несколько файлов S3 в один файл

#amazon-web-services #aws-glue #amazon-kinesis #amazon-kinesis-firehose

Вопрос:

Я включил поток Firehose для записи данных в S3. Firehose помещает данные в файл S3 с максимальным интервалом 900 секунд. Это означает, что в течение одного дня будет создано около 100 файлов, что является накладными расходами для пользователей, загружающих их вручную.

Существует ли решение для автоматического объединения нескольких файлов S3 в один файл с определенной частотой (например, ежедневно)?

Ответ №1:

Для этого не существует службы автоматического включения коробки, поскольку это проблема, специфичная для конкретного случая использования. Однако в блоге AWS под названием

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

Я не уверен, применимо ли это решение к вашему варианту использования, но, вероятно, его стоит рассмотреть.

В противном случае вам придется загрузить эти объекты, присоединиться к ним самостоятельно (например, заархивировать их) и повторно загрузить присоединенную папку. Это может быть автоматизировано, например, с помощью экземпляра или контейнера, которые вы запускаете автоматически один раз в день.