Amazon S3 Glacier で AWS SDK for Java を使用してボールトメタデータを取得する - Amazon S3 Glacier

このページは、Vaults と 2012 年以降の元の REST API を使用する S3 Glacier サービスの既存のお客様のみを対象としています。

アーカイブストレージソリューションをお探しの場合は、Amazon S3、S3 Glacier Instant Retrieval、S3 Glacier Flexible Retrieval、S3 Glacier Deep Archive の S3 Glacier ストレージクラスを使用することをお勧めします。これらのストレージオプションの詳細については、「Amazon S3 ユーザーガイド」の「S3 Glacier ストレージクラス」およびS3 Glacier ストレージクラスを使用した長期データストレージ」を参照してください。 Amazon S3 これらのストレージクラスは Amazon S3 API を使用し、すべてのリージョンで利用でき、Amazon S3 コンソール内で管理できます。Storage Cost Analysis、Storage Lens、複数の暗号化オプションを含むセキュリティ機能などを提供します。

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

Amazon S3 Glacier で AWS SDK for Java を使用してボールトメタデータを取得する

特定のボールトのボールトメタデータの取得

特定のボールトのメタデータおよび特定のAWSリージョン内のすべてのボールトのメタデータを取得することができます。以下に、Amazon SDK for Java の低レベル API を使用して特定のボールトのボールトメタデータを取得する手順を示します。

  1. AmazonGlacierClient クラスのインスタンス(クライアント)を作成します。

    ボールトが属する AWS リージョンを指定する必要があります。このクライアントを使用して実行するすべてのオペレーションは、そのAWS リージョンに適用されます。

  2. DescribeVaultRequest クラスのインスタンスを作成することにより、リクエスト情報を指定します。

    Amazon S3 Glacier (S3 Glacier) には、ボールト名とアカウント ID を指定する必要があります アカウント ID を指定しなかった場合には、リクエストに署名する際に使用した認証情報に関連付けられているアカウント ID が使用されます。詳細については、「Amazon S3 Glacier でのAWS SDK for Javaの使用」を参照してください。

  3. リクエストオブジェクトをパラメータとして指定して、describeVault メソッドを実行します。

    S3 Glacier が返すボールトメタデータ情報は、DescribeVaultResult オブジェクトで使用できます。

以下の Java コードスニペットは、前述の手順を示しています。

DescribeVaultRequest request = new DescribeVaultRequest() .withVaultName("*** provide vault name***"); DescribeVaultResult result = client.describeVault(request); System.out.print( "\nCreationDate: " + result.getCreationDate() + "\nLastInventoryDate: " + result.getLastInventoryDate() + "\nNumberOfArchives: " + result.getNumberOfArchives() + "\nSizeInBytes: " + result.getSizeInBytes() + "\nVaultARN: " + result.getVaultARN() + "\nVaultName: " + result.getVaultName());

注記

基本となる REST API については、「ボールトの説明 (GET vault)」を参照してください。

リージョン内のすべてのボールトのボールトメタデータの取得

listVaults メソッドを使用して、特定のAWSリージョン内のすべてのボールトのメタデータを取得することもできます。

以下の Java コードスニペットにより、us-west-2 リージョン内のボールトのリストを取得します。リクエストでは、レスポンスで返されるボールトの数を 5 に制限します。このコードスニペットでは、AWS リージョンのボールトのリスト全体を取得する一連の listVaults 呼び出しを行います。

AmazonGlacierClient client; client.setEndpoint("https://glacier.us-west-2.amazonaws.com/"); String marker = null; do { ListVaultsRequest request = new ListVaultsRequest() .withLimit("5") .withMarker(marker); ListVaultsResult listVaultsResult = client.listVaults(request); List<DescribeVaultOutput> vaultList = listVaultsResult.getVaultList(); marker = listVaultsResult.getMarker(); for (DescribeVaultOutput vault : vaultList) { System.out.println( "\nCreationDate: " + vault.getCreationDate() + "\nLastInventoryDate: " + vault.getLastInventoryDate() + "\nNumberOfArchives: " + vault.getNumberOfArchives() + "\nSizeInBytes: " + vault.getSizeInBytes() + "\nVaultARN: " + vault.getVaultARN() + "\nVaultName: " + vault.getVaultName()); } } while (marker != null);

このコードスニペットにおいて、リクエストの Limit の値を指定しなかった場合、S3 Glacier は、S3 Glacier API に定められているように、最大 10 個のボールトを返します。リストに表示するボールトがさらに存在する場合、レスポンスの marker フィールドにボールト Amazon リソースネーム (ARN) が含まれ、この中に新しいリクエストのリストの続きが含まれます。そうでない場合、marker フィールドは null になります。

リスト内の各ボールトに対して返される情報は、特定のボールトに対して describeVault メソッドを呼び出して取得する情報と同じであることに注意してください。

注記

listVaults メソッドは基本となる REST API を呼び出します (「ボールトのリスト (GET vaults)」を参照)。

例: Amazon SDK for Java によるボールトメタデータの取得

コード例については、「例: AWS SDK for Java を使用したボールトの作成」を参照してください。この Java コード例では、ボールトを作成し、ボールトメタデータを取得します。