Выбор ключей на основе метаданных возможен с Amazon S3? - PullRequest
0 голосов
/ 06 мая 2010

Я отправляю файлы в мое хранилище S3, которые в основном являются сжатыми дампами базы данных. Эти ключи представляют собой удобочитаемую дату ("2010-05-04.dump"), и наряду с этим я устанавливаю в поле метаданных время UNIX для дампа.

Я хочу написать скрипт, который извлекает последний дамп из корзины. То есть я хочу ключ с наибольшим значением метаданных времени Unix. Это возможно с Amazon S3, или это не так, как S3 предназначен для работы?

Я использую как инструмент командной строки aws, так и библиотеку python boto

1 Ответ

1 голос
/ 06 мая 2010

Здесь, кажется, это работает, но, возможно, не самый идеальный (с помощью boto)

latest_key = None
latest_ts = 0
for key in bucket.get_all_keys():
    # go through all keys and return the one with the higest timestamp
    ts = key.get_metadata('timestamp')

    if ts > latest_ts:
        latest_key = key
        latest_ts = ts
...