Есть ли способ контролировать только для чтения S3 Bucket и копировать недавно добавленные данные? - PullRequest
0 голосов
/ 11 марта 2020

Я работаю над небольшим проектом, в котором у меня есть доступ только для чтения к одному сегменту s3, и моя задача - копировать данные из этого сегмента s3 в мой собственный сегмент s3 всякий раз, когда выполняется мой код.

Мой подход состоит в том, чтобы получить метаданные корзины только для чтения s3 и упорядочить объекты в порядке, отсортированном по дате, и я буду отслеживать последний скопированный файл и копировать только те, которых нет в моей корзине s3.

Я уже ссылался на некоторые решения, доступные при переполнении стека, например: Как составить список содержимого корзины Amazon S3 по дате изменения?

Но проблема в том, что я использую Java и не может использовать aws s3api.

Другое решение, которое я нашел здесь (https://www.quora.com/How-do-I-filter-files-in-an-S3-bucket-folder-in-AWS-based-on-date-using-boto), заключалось в том, чтобы использовать временные метки в самом имени файла, а затем получать данные из s3 на основе последнего скопированного имени файла. Но так как у меня есть доступ только для чтения, я не могу этого сделать.

Кто-нибудь знает, как этого добиться? Любое решение будет очень полезным. Я могу использовать любой сервис aws, если решение существует.

Заранее спасибо! :)


Редактировать: Как отметил @Marcin в комментариях, я не могу вызвать что-либо подобное событию PUT в корзине s3 только для чтения. Я могу только читать данные.

1 Ответ

0 голосов
/ 11 марта 2020

Вы можете синхронизировать c сегменты, чтобы избежать определения, какие объекты копировать. Например, используя awscli:

aws s3 sync s3://frombucket s3://tobucket
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...