S3 Glacier で AWS SDK for Java を使用してボールトからアーカイブをダウンロードする - Amazon S3 Glacier

このページは、Vaults と 2012 RESTAPI年のオリジナルを使用する 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、高度なオプションの暗号化機能などの機能を提供します。

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

S3 Glacier で AWS SDK for Java を使用してボールトからアーカイブをダウンロードする

次の Java コード例では、AWS SDK for Java の高レベル API を使用して、前のステップでアップロードしたアーカイブをダウンロードします。このコード例では、以下の点に注意してください。

  • この例では、AmazonGlacierClient クラスのインスタンスを作成します。

  • このコードでは、「ステップ 2: S3 Glacier でボールトを作成する」でボールトを作成した場所に合わせて、us-west-2 リージョン 米国西部(オレゴン) を使用します。

  • この例では、AWS SDK for Java の高レベル API の ArchiveTransferManager クラスの download API オペレーションを使用します。この例は、Amazon Simple Notification Service (Amazon SNS) トピックと、そのトピックにサブスクライブされている Amazon Simple Queue Service (Amazon SQS) キューを作成します。「ステップ 1: S3 Glacier の使用を開始する前に」の説明に従って AWS Identity and Access Management (IAM) 管理ユーザーを作成した場合、ユーザーには Amazon SNS トピックと Amazon SQS キューの作成と使用に必要な IAM アクセス許可があります。

この例を実行するための詳しい手順については、「Eclipse を使用した Amazon S3 Glacier の Java 実行例」を参照してください。ここに示したコードは、「ステップ 3: S3 Glacier でボールトにアーカイブをアップロードする」でアップロードしたファイルのアーカイブ ID で更新する必要があります。

例 - AWS SDK for Java を使用してアーカイブをダウンロードする
import java.io.File; import java.io.IOException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.glacier.AmazonGlacierClient; import com.amazonaws.services.glacier.transfer.ArchiveTransferManager; import com.amazonaws.services.sns.AmazonSNSClient; import com.amazonaws.services.sqs.AmazonSQSClient; public class AmazonGlacierDownloadArchive_GettingStarted { public static String vaultName = "examplevault"; public static String archiveId = "*** provide archive ID ***"; public static String downloadFilePath = "*** provide location to download archive ***"; public static AmazonGlacierClient glacierClient; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); glacierClient = new AmazonGlacierClient(credentials); sqsClient = new AmazonSQSClient(credentials); snsClient = new AmazonSNSClient(credentials); glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com"); sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com"); snsClient.setEndpoint("sns.us-west-2.amazonaws.com"); try { ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient); atm.download(vaultName, archiveId, new File(downloadFilePath)); } catch (Exception e) { System.err.println(e); } } }