Amazon S3 Glacier での Amazon SDK の使用 - Amazon S3 Glacier

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

Amazon S3 Glacier での Amazon SDK の使用

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

S3 Glacier Support する Amazon SDK

S3 Glacier は、次の Amazon SDK でサポートされています。

この開発者ガイド全体で、Java および .NET SDK を使用した S3 Glacier の操作例が示されています。すべての言語のライブラリとサンプルコードについては、「サンプルコードとライブラリ」を参照してください。

-AWS Command Line Interface(AWS CLI) は、AWSサービス, S3 Glacierを含みます. AWS CLI のダウンロードの詳細については、「AWS Command Line Interface」を参照してください。S3 Glacier CLI コマンドの一覧については、AWS CLIコマンドリファレンス

Java 用と .NET 用の Amazon SDK ライブラリ

Java 用と .NET 用の Amazon SDK は高レベルと低レベルのラッパーライブラリを提供します。

低レベル API とは

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

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

高レベル API とは

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

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

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

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

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

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