Amazon S3 Glacier AWS SDKs の使用 - 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 ストレージクラス」および「オブジェクトをアーカイブするためのストレージクラス」を参照してください。 Amazon S3

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

Amazon S3 Glacier AWS SDKs の使用

AWS は、Amazon S3 Glacier 用のアプリケーションを開発するための SDKs を提供します。SDK ライブラリは基本となる S3 Glacier API をラップし、プログラミングタスクを簡素化します。たとえば、S3 Glacier に送信する各リクエストに対して、リクエストを認証するために署名を含める必要があります。SDK ライブラリを使用する場合は、コードに AWS セキュリティ認証情報のみを指定する必要があり、ライブラリは必要な署名を計算し、S3 Glacier に送信されるリクエストに含めます。 AWS SDKs は、基盤となる REST API にマッピングするライブラリを提供し、リクエストを簡単に構築してレスポンスを処理するために使用できるオブジェクトを提供します。

AWS Command Line Interface (AWS CLI) は、S3 Glacier を含む AWS のサービスを管理するための統合ツールです。のダウンロードについては、 AWS CLI「」を参照してくださいAWS Command Line Interface。S3 Glacier CLI コマンドのリストについては、「AWS CLI コマンドリファレンス」を参照してください。

AWS Java および .NET 用の SDK ライブラリ

Java および .NET 用 AWS SDKs は、高レベルおよび低レベルのラッパーライブラリを提供します。

Amazon S3 Glacier の使用例については、このデベロッパーガイド AWS SDK for .NET の AWS SDK for Java 「」と「」を参照してください。

低レベル API とは

低レベルのラッパーライブラリは、S3 Glacier でサポートされる基本となる REST API (Amazon S3 Glacier の API リファレンス) に厳密にマップしています。低レベル API では、各 S3 Glacier REST オペレーションに対して、対応するメソッド、リクエスト情報を指定するリクエストオブジェクト、および S3 Glacier レスポンスを処理するレスポンスオブジェクトを提供します。低レベルのラッパーライブラリは、基本となる S3 Glacier オペレーションの最も完全な実装です。

これらの SDK ライブラリの詳細については、「Amazon S3 Glacier でのAWS SDK for Javaの使用」および「Amazon S3 Glacier でのAWS SDK for .NETの使用」を参照してください。

高レベル API とは

アプリケーション開発をさらに簡素化するために、これらのライブラリでは一部のオペレーションに対して高レベルの抽象化を提供します。例:

  • アーカイブのアップロード - 低レベル API を使用して、ファイル名およびアーカイブの保存先となるボールトの名前とともにアーカイブをアップロードする場合は、ペイロードのチェックサム (SHA-256 木構造ハッシュ) を指定する必要があります。一方、高レベル API ではチェックサムが自動的に計算されます。

  • アーカイブまたはボールトインベントリのダウンロード - 低レベル API を使用して、アーカイブをダウンロードする場合、まずジョブを開始し、ジョブが完了するまで待機してから、ジョブの出力を取得します。S3 Glacier でジョブの完了時に通知されるように、Amazon Simple Notification Service (Amazon SNS) トピックを設定する追加コードを記述する必要があります。また、ジョブの完了メッセージがトピックに投稿されたかどうかを確認するポーリングのメカニズムも必要です。高レベル API には、これらのすべてのステップに対応した、アーカイブをダウンロードするためのメソッドが用意されています。必要な操作は、アーカイブ ID と、ダウンロードしたデータを保存するフォルダーのパスを指定することのみです。

これらの SDK ライブラリの詳細については、「Amazon S3 Glacier でのAWS SDK for Javaの使用」および「Amazon S3 Glacier でのAWS SDK for .NETの使用」を参照してください。

高レベル API と低レベル API を使用する場合

一般的に、オペレーションの実行に必要なメソッドが高レベル API に用意されている場合は、シンプルな高レベル API を使用してください。ただし、高レベル API でその機能が提供されていない場合は、低レベル API を使用できます。また、低レベル API では、エラー発生時の再試行ロジックなど、オペレーションを細かく制御できます。たとえば、アーカイブをアップロードするときに、高レベル API ではファイルのサイズに応じて、単一オペレーションでアーカイブをアップロードするか、マルチパートアップロード API を使用するかを決定します。APIには、アップロードが失敗した場合の再試行ロジックも組み込まれています。ただし、アプリケーションでこれらの決定を細かく制御する必要がある場合は、低レベル API を使用します。