Используя Boto3, я загрузил 12 файлов на Amazon's Glacier вчера вечером в 21:43 EST.
Я получил ArchiveID для всех 12 файлов, поэтому полагаю, что они загружены правильно.
Согласно консоли управления AWS, последняя инвентаризация была проведена сегодня утром в 02:53 EST. Итак, примерно через 5 часов после загрузки.
Но в инвентаре нет этих 12 файлов. Есть только 1 файл (который я загрузил неделю назад).
Я знаю, что мне нужно подождать еще один день, чтобы запустить следующий AWS Inventory, но я подумал, что спрошу, ожидается ли такое поведение?
Не совпадает ли время, которое amazon вычислило / сообщило время инвентаризации, когда оно было запущено? Возможно ли, что инвентаризация была проведена до того, как я загрузил эти файлы?
Если нет, то почему я должен получить идентификаторы archiveID (указывающие на успешную загрузку), но они не указаны в намеренном запуске ПОСЛЕ их загрузки?
Редактировать:
Файлы действительно появились в следующей инвентаризации.
Но мне все еще любопытно, почему время последней инвентаризации в консоли AWS, которое было через 5 часов после загрузки, сообщило об отсутствии файлов. Мое единственное объяснение состоит в том, что время «последней инвентаризации» консоли AWS - это время, когда информация была загружена в консоль AWS. Но ФАКТИЧЕСКАЯ инвентаризация могла быть запущена на несколько часов раньше (следовательно, недавно загруженные файлы были пропущены).
Когда вы инициируете задание для инвентаризации хранилища, Amazon Glacier возвращает последний созданный им инвентарь, который представляет собой моментальный снимок на определенный момент времени, а не данные в реальном времени.
http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html
Запрос инвентаризации, по-видимому, не запускает фактическую генерацию - он просто подготавливает последний инвентарь для выборки.
Инвентаризация обновляется примерно раз в 24 часа, поэтому есть большая вероятность, что эти новые файлы не появятся в расписании, которое вы описываете.
Если вас не интересуют функции, доступные только через Glacier API, такие как замки хранилища, вы можете обнаружить, что интеграция S3 / Glacier предоставляет более полезный интерфейс. Файлы, загруженные как объекты S3, а затем переданные в класс хранилища Glacier с помощью политик жизненного цикла, не видны через Glacier API - они продолжают отображаться как объекты S3, что упрощает итерацию по ним и их метаданным, что эффективно в реальном времени.