ジョブの開始 (ジョブの POST) - Amazon S3 Glacier

Amazon Simple Storage Service (Amazon S3) のアーカイブストレージを初めて使用する場合は、Amazon S3 の S3 Glacier ストレージクラス、S3 Glacier Instant RetrievalS3 Glacier Flexible RetrievalS3 Glacier Deep Archive について詳しく知ることから始めることをお勧めします。詳細については、Amazon S3 ユーザーガイドの「S3 Glacier ストレージクラス」と「オブジェクトをアーカイブするためのストレージクラス」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ジョブの開始 (ジョブの POST)

この操作では、次のタイプの Amazon S3 Glacier (S3 Glacier) ジョブを開始します。

  • archive-retrieval- アーカイブを取得

  • inventory-retrieval- ボールトのインベントリ

アーカイブまたはボールトインベントリ取得ジョブの初期化

アーカイブの取得やボールトインベントリの取得は、ユーザーがジョブを開始する必要がある非同期オペレーションです。一度開始したジョブはキャンセルできません。取得は、2 ステップのプロセスです。

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

    重要

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

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

取得のリクエストは非同期的に実行されます。取得ジョブを開始すると、S3 Glacier はジョブを作成し、レスポンスでジョブ ID を返します。S3 Glacier がジョブを完了すると、ジョブの出力 (アーカイブデータまたはインベントリデータ) を取得できます。ジョブの出力の取得については、「ジョブの出力の取得 (GET output)」を参照してください。

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

  • Amazon SNS 通知を使用する-ジョブの完了後に S3 Glacier が通知を送信する トピックを指定できます。ジョブのリクエストごとに SNS トピックを指定できます。S3 Glacier がジョブを完了した後にのみ、通知が送信されます。ジョブのリクエストごとに SNS トピックを指定することに加え、すべての取得に対してジョブの通知が送信されるように、ボールトにボールト通知を設定することもできます。詳細については、「ボールトの通知設定の指定 (PUT notification-configuration)」を参照してください。

  • ジョブの詳細を取得する-ジョブの進行中に ジョブの説明 (GET JobID) リクエストを実行して、ジョブのステータス情報を取得することができます。ただし、ジョブの完了を確認するには、Amazon SNS 通知を使用する方が効率的です。

注記

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

特定のイベントに対して、ボールトの通知設定を追加し、さらに、ジョブの開始リクエストで SNS トピックを指定した場合、S3 Glacier は両方の通知を送信します。詳細については、「ボールトの通知設定の指定 (PUT notification-configuration)」を参照してください。

ボールトインベントリ

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

S3 Glacier によりボールトに対して最初に作成されるインベントリは、取得できるようになるまで、通常半日から最大 1 日かかります。

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

インベントリの取得の範囲

アーカイブの作成日でフィルタするか、制限を設定することによって、取得されるインベントリの項目数を制限できます。

アーカイブの作成日によるフィルタリング

次の間に作成されたアーカイブのインベントリアイテムを取得できます。StartDateそしてEndDateこれらのパラメータの値をジョブの開始リクエスト。StartDate 以降から EndDate までに作成されたアーカイブが返されます。StartDate を指定せずに、EndDate のみを指定した場合、StartDate 以降に作成されたすべてのアーカイブのインベントリを取得します。EndDate を指定せずに、StartDate のみを指定した場合、EndDate までに作成されたすべてのアーカイブのインベントリを取得します。

インベントリ項目の取得ごとの制限

以下を設定することによって、返品されるインベントリの項目数を制限できます。Limitパラメータのジョブの開始リクエスト。インベントリジョブの出力には、Limit に指定した最大数のインベントリ項目が含まれます。利用可能なインベントリ項目がまだ存在する場合、結果がページ分割されます。ジョブの完了後、ジョブの説明 (GET JobID) オペレーションを使用して、次のジョブ開始リクエストで使用するマーカーを取得することができます。マーカーは、次に取得するインベントリ項目のセットの開始点を示します。繰り返し作成することで、インベントリ全体をページスルーできます。ジョブの開始前のマーカーを使用したリクエストジョブの説明出力。インベントリ項目がこれ以上存在しないことを示す、ジョブの説明のマーカーに null が返されるまでこれを行います。

Limit パラメータは日付範囲のパラメータとともに使用できます。

アーカイブの取得範囲

アーカイブ全体またはアーカイブの特定の範囲に対して、アーカイブの取得を開始することができます。アーカイブの取得範囲を指定する場合、返されるバイト範囲か、アーカイブ全体を指定できます。指定する範囲は、メガバイト (MB) 単位に調整されている必要があります。つまり、範囲の開始値は 1 MB で割り切れる値で、範囲の終了値は 1 を足すと 1 MB で割り切れる値またはアーカイブの終了値と同じである必要があります。アーカイブの取得範囲がメガバイト単位に調整されていない場合、このオペレーションではレスポンスで 400 が返されます。さらに、ジョブの出力の取得 (ジョブの出力の取得 (GET output)) を使用して、ダウンロードするデータのチェックサムの値を取得するには、指定する範囲が木構造ハッシュ可能になっている必要があります。木構造ハッシュ可能な範囲の詳細については、「データをダウンロードするときのチェックサムの受信」を参照してください。

迅速、標準、および大容量階層

アーカイブの取得ジョブを開始する際、リクエストボディの Tier フィールドに以下のオプションのいずれかを指定できます。

  • Expedited - 迅速では、アーカイブの復元についての緊急リクエストが臨時に必要になった場合にデータにすばやくアクセスできます。最大規模のアーカイブ (250 MB 以上) を除くすべてのアーカイブについては、迅速階層でアクセスしたデータは通常 1–5 分以内で使用可能になります。

  • Standard - 標準では、数時間以内にすべてのアーカイブにアクセスできます。標準階層を使用してアクセスしたデータは、通常 3-5 時間以内に利用できるようになります。このオプションは、階層オプションを指定しないでジョブリクエストを行った場合のデフォルトです。

  • Bulk - バルクはS3 Glacierの最低コスト層であり、1日で大量のデータ(ペタバイト)を安価に取得できるようにします。大容量階層を使用してアクセスしたデータは、通常 5-12 時間以内に利用できるようになります。

迅速取り出しと大容量取り出しの詳細については、「AWS コンソールを使用した S3 Glacier アーカイブの取得」を参照してください。

リクエスト

ジョブを開始するには、HTTP POST メソッドを使用し、ボールトの jobs サブリソースをリクエストの範囲として指定します。リクエストの JSON ドキュメントでジョブのリクエストの詳細を指定します。ジョブのタイプは Type フィールドで指定します。S3 Glacier がジョブの完了後に通知を送信する Amazon SNS トピックを指定する SNSTopic フィールドをオプションで指定できます。

注記

Amazon SNS に通知を送信するには、トピックが存在しない場合は新しくトピックを作成する必要があります。 ではトピックを自動的に作成しません。S3 Glacier はトピックを作成しません。トピックには、S3 Glacier ボールトからパブリケーションを受け取るためのアクセス許可が必要です。S3 Glacier では、トピックへのパブリッシュのアクセス許可がボールトにあるかどうかは確認しません。アクセス許可が適切に設定されていない場合、ジョブが完了しても、通知が送信されない可能性があります。

構文

以下に示しているのは、ジョブの開始に対するリクエスト構文です。

POST /AccountId/vaults/VaultName/jobs HTTP/1.1 Host: glacier.Region.amazonaws.com Date: Date Authorization: SignatureValue x-amz-glacier-version: 2012-06-01 { "jobParameters": { "ArchiveId": "string", "Description": "string", "Format": "string", "InventoryRetrievalParameters": { "EndDate": "string", "Limit": "string", "Marker": "string", "StartDate": "string" }, "OutputLocation": { "S3": { "AccessControlList": [ { "Grantee": { "DisplayName": "string", "EmailAddress": "string", "ID": "string", "Type": "string", "URI": "string" }, "Permission": "string" } ], "BucketName": "string", "CannedACL": "string", "Encryption": { "EncryptionType": "string", "KMSContext": "string", "KMSKeyId": "string" }, "Prefix": "string", "StorageClass": "string", "Tagging": { "string" : "string" }, "UserMetadata": { "string" : "string" } } }, "RetrievalByteRange": "string", "SelectParameters": { "Expression": "string", "ExpressionType": "string", "InputSerialization": { "csv": { "Comments": "string", "FieldDelimiter": "string", "FileHeaderInfo": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "RecordDelimiter": "string" } }, "OutputSerialization": { "csv": { "FieldDelimiter": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "QuoteFields": "string", "RecordDelimiter": "string" } } }, "SNSTopic": "string", "Tier": "string", "Type": "string" } }
注記

-AccountIdvalueAWS アカウントボールトを所有するアカウントの ID。AWS アカウント ID、または Amazon S3 Glacier がリクエストの署名に使用した認証情報に関連する AWS アカウント ID を使用している場合はオプションで`-`「-」のどちらかを指定できます。アカウント ID を使用する場合は、ID にハイフン ('-') を含めないでください。

リクエスト本文

リクエストは、リクエストの本文にある JSON 形式で以下のデータを受け入れます。

jobParameters

ジョブ情報を指定するためのオプションを提供します。

タイプ: jobParameters オブジェクト

必須: はい

レスポンス

S3 Glacier がジョブを作成します。レスポンスでは、ジョブの URI が返されます。

構文

HTTP/1.1 202 Accepted x-amzn-RequestId: x-amzn-RequestId Date: Date Location: location x-amz-job-id: jobId x-amz-job-output-path: jobOutputPath

レスポンスヘッダー

[Header] (ヘッダー) 説明
Location

ジョブの相対 URI パス。この URI パスを使用して、ジョブのステータスを確認することができます。詳細については、「ジョブの説明 (GET JobID)」を参照してください。

型: 文字列

デフォルト: なし

x-amz-job-id

ジョブの ID。この値も Location ヘッダーの一部として含まれます。

型: 文字列

デフォルト: なし

x-amz-job-output-path

Select の結果が保存されている場所へのパス。

型: 文字列

デフォルト: なし

レスポンス本文

このオペレーションでは、レスポンス本文は返しません。

エラー

この操作には、すべての Amazon S3 Glacier オペレーションに共通する可能性のあるエラーに加えて、次のエラーが含まれます。Amazon S3 Glacier のエラーとエラーコードのリストについては、「」を参照してください。エラーレスポンス

コード 説明 HTTP ステータスコード タイプ
InsufficientCapacityException この迅速リクエストを処理する容量が足りない場合に返されます。このエラーは、迅速取り出しにのみ該当し、標準取り出しまたは大容量取り出しには該当しません。 503 Service Unavailable サーバー

リクエストの例: アーカイブ取得ジョブを開始する

POST /-/vaults/examplevault/jobs HTTP/1.1 Host: glacier.us-west-2.amazonaws.com x-amz-Date: 20170210T120000Z x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Type": "archive-retrieval", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "Description": "My archive description", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example", "Tier" : "Bulk" }

以下は、RetrievalByteRange フィールドを使用して、取得するアーカイブの範囲を指定するリクエストの本文の例です。

{ "Type": "archive-retrieval", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "Description": "My archive description", "RetrievalByteRange": "2097152-4194303", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example", "Tier" : "Bulk" }

レスポンスの例

HTTP/1.1 202 Accepted x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

リクエストの例: インベントリ取得ジョブを開始する

以下のリクエストでは、インベントリ取得ジョブを開始して、examplevault ボールトからアーカイブのリストを取得します。リクエストボディで FormatCSV に設定されています。これは、インベントリが CSV 形式で返されることを示しています。

POST /-/vaults/examplevault/jobs HTTP/1.1 Host: glacier.us-west-2.amazonaws.com x-amz-Date: 20170210T120000Z Content-Type: application/x-www-form-urlencoded x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Type": "inventory-retrieval", "Description": "My inventory job", "Format": "CSV", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-InventoryRetrieval-topic-Example" }

レスポンスの例

HTTP/1.1 202 Accepted x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

リクエストの例: 日付によるフィルタリングを使用し、制限を設定してインベントリの取得ジョブを開始し、後続のリクエストでインベントリ項目の次のページを取得する。

次のリクエストでは、日付によるフィルタリングを使用し、制限を設定して、ボールトインベントリ取得ジョブを開始します。

{ "ArchiveId": null, "Description": null, "Format": "CSV", "RetrievalByteRange": null, "SNSTopic": null, "Type": "inventory-retrieval", "InventoryRetrievalParameters": { "StartDate": "2013-12-04T21:25:42Z", "EndDate": "2013-12-05T21:25:42Z", "Limit" : "10000" }, }

以下のリクエストは、ジョブの説明 (GET JobID) で取得したマーカーを使用して、インベントリ項目の次のページを取得する後続のリクエストの例です。

{ "ArchiveId": null, "Description": null, "Format": "CSV", "RetrievalByteRange": null, "SNSTopic": null, "Type": "inventory-retrieval", "InventoryRetrievalParameters": { "StartDate": "2013-12-04T21:25:42Z", "EndDate": "2013-12-05T21:25:42Z", "Limit": "10000", "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0" }, }

レスポンスの例

HTTP/1.1 202 Accepted x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID x-amz-job-output-path: test/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/

関連するセクション