Запрос файлов корзины S3 по дате создания
Можно ли запросить и получить файлы в корзине s3 в последнем порядке создания с нумерацией страниц?
Я даже могу сохранить метку времени создания в качестве суффикса в имени моего файла.
Любая помощь будет оценена.
2 ответа
Может быть, эта ссылка поможет. Он использует пакет SDK boto3.
По сути, напишите функцию, которая будет:
- используйте вызов API list_all_objects
- цикл по объектам
- Сохраните атрибут Key(name) и "LastModified" объекта в словаре.
Сортируйте словарь и возвращайте его.
def sort_objects_in_bucket_by_timestamp( bucket_name ): sorted_objects_dict = {} for curr_obj_attr_dict in s3_client.list_objects_v2( Bucket = bucket_name )['Contents']: sorted_objects_dict[curr_obj_attr_dict['Key']] = curr_obj_attr_dict['LastModified'] return sorted(sorted_objects_dict.items(), key=lambda x: x[1])
Функция вернет список объектов в определенном сегменте, упорядоченный от самого старого до самого нового, по отметке времени LastModified.
Если вам не нужна метка времени LastModified, измените функцию, чтобы она считывала часть метки времени из имени сегмента (которое, как вы сказали, было жизнеспособным), и установите значение метки времени.
29 ноября 2017 года в AWS Re: изобретать AWS объявили о сервисе под названием S3 Select, который доступен в Preview.
S3 Select - это новая возможность Amazon S3, предназначенная для извлечения только тех данных, которые вам нужны, от объекта, что значительно повышает производительность и снижает стоимость приложений, которым необходим доступ к данным в
Также,
Во время предварительного просмотра вы можете использовать Amazon S3 Select через доступный коннектор Presto, с AWS Lambda или из любого другого приложения, использующего S3 Select SDK для Java или Python. Этот предварительный просмотр доступен в регионах AWS США Восток (Северная Вирджиния), Восток США (Огайо), Запад США (Орегон), ЕС (Ирландия) и Азиатско-Тихоокеанский регион (Сингапур).
Вы можете подать заявку на предварительный просмотр здесь
Спасибо