Amazon S3 Glacier でのボールト​インベントリのダウンロード - Amazon S3 Glacier

Amazon S3 Glacier でのボールト​インベントリのダウンロード

最初のアーカイブをボールトにアップロードすると、Amazon S3 Glacier (S3 Glacier) により、ボールトインベントリが自動的に作成され、インベントリが約 1 日 1 回のペースで更新されます。S3 Glacier によって最初に作成されるインベントリは、取得できるようになるまで、通常半日から最大 1 日かかります。次の 2 ステップのプロセスで、S3 Glacier からボールトインベントリを取得できます。

  1. ジョブの開始 (ジョブの POST) オペレーションを使用して、インベントリの取得ジョブを開始します。

    重要

    データ取り出しポリシーにより、PolicyEnforcedException 例外が発生して、取り出しジョブの開始リクエストが失敗することがあります。データ取り出しポリシーの詳細については、「Amazon S3 Glacier のデータ取り出しポリシー」を参照してください。PolicyEnforcedException 例外の詳細については、「エラーレスポンス」を参照してください。

  2. ジョブが完了したら、ジョブの出力の取得 (GET output) オペレーションを使用してバイトをダウンロードします。

たとえば、アーカイブまたはボールトインベントリを取得するには、最初に取得ジョブを開始する必要があります。ジョブのリクエストは非同期的に実行されます。取得ジョブを開始すると、S3 Glacier はジョブを作成し、レスポンスでジョブ ID を返します。S3 Glacier がジョブを完了すると、ジョブの出力、アーカイブのバイト数、またはボールトインベントリデータを取得できます。

出力を取得する前にジョブが完了している必要があります。次のオプションを使用してジョブのステータスを確認できます。

  • ジョブの完了の通知を待つ — ジョブの完了後に S3 Glacier が通知を投稿する Amazon Simple Notification Service (Amazon SNS) トピックを指定できます。以下のメソッドを使用して、Amazon SNS トピックを指定できます。

    • ジョブごとに Amazon SNS トピックを指定する。

      ジョブを開始する際に、オプションで Amazon SNS トピックを指定できます。

    • ボールトに通知設定を指定する。

      ボールトに特定のイベントに対する通知設定を指定できます (「Amazon S3 Glacier でのボールト通知の設定」を参照)。指定されたイベントが発生するたびに、S3 Glacier により、指定された SNS トピックにメッセージが送信されます。

    ボールトに通知設定を指定し、さらに、ジョブを開始する際に Amazon SNS トピックを指定した場合、S3 Glacier は両方のトピックにジョブの完了メッセージを送信します。

    E メールで通知を受け取るか、アプリケーションがポーリングできる Amazon Simple Queue Service (Amazon SQS) にメッセージを格納するように SNS トピックを設定できます。メッセージがキューに表示されたら、ジョブが正常に完了したかどうかを確認し、ジョブの出力をダウンロードできます。

  • 明示的にジョブ情報をリクエストする — S3 Glacier では、ジョブの説明オペレーション (ジョブの説明 (GET JobID)) も用意されており、ジョブの情報をポーリングできるようになっています。このリクエストを定期的に送信して、ジョブ情報を取得できます。ただし、Amazon SNS 通知を使用することをお勧めします。

注記

SNS 通知により取得する情報は、ジョブの説明を呼び出して取得する情報と同じです。

インベントリについて

S3 Glacier はボールトインベントリを約 1 日 1 回のペースで更新します。この更新は、アーカイブがボールトに最初にアップロードされた日から開始します。最後のインベントリ以降に、ボールトに対してアーカイブの追加や削除が行われていない場合、インベントリの日付は更新されません。ボールトインベントリに対してジョブを開始すると、S3 Glacier により最後に生成されたインベントリが返されます。そのインベントリはポイントインタイムのスナップショットであり、リアルタイムのデータではありません。S3 Glacier によりボールトに対して最初に作成されるインベントリは、取得できるようになるまで、通常半日から最大 1 日かかることに注意してください。

アーカイブをアップロードするごとにボールトインベントリを取得することは、あまり便利には感じられないかもしれません。しかし、S3 Glacier にアップロードしたアーカイブに関するメタデータに関連付けられたデータベースをクライアント側で管理する場合を考えてみてください。そのような場合には、実際のボールトインベントリとデータベース内の情報とを必要に応じて照合できるため、ボールトインベントリの利便性が実感できるものと思われます。アーカイブの作成日でフィルタするか、クォータを設定することによって、取得されるインベントリの項目数を制限できます。インベントリの取得の制限の詳細については、「インベントリの取得の範囲」を参照してください。

インベントリは、カンマ区切り値 (CSV) と JSON の 2 つの形式で返すことができます。インベントリジョブを開始する際に、オプションで形式を指定できます。デフォルト形式は JSON です。インベントリジョブの出力で返されるデータフィールドの詳細については、ジョブの出力の取得 API の「レスポンス本文」を参照してください。