Download di un archivio da un vault in S3 Glacier mediante l'AWS SDK for Java - Amazon S3 Glacier

Questa pagina è riservata ai clienti esistenti del servizio S3 Glacier che utilizzano Vaults e l'originale del 2012. REST API

Se stai cercando soluzioni di archiviazione, ti consigliamo di utilizzare le classi di storage S3 Glacier in Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Per ulteriori informazioni su queste opzioni di storage, consulta le classi di storage S3 Glacier e lo storage dei dati a lungo termine con le classi di storage S3 Glacier nella Amazon S3 User Guide. Queste classi di storage utilizzano Amazon S3API, sono disponibili in tutte le regioni e possono essere gestite all'interno della console Amazon S3. Offrono funzionalità come Storage Cost Analysis, Storage Lens, funzionalità di crittografia opzionali avanzate e altro ancora.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Download di un archivio da un vault in S3 Glacier mediante l'AWS SDK for Java

L'esempio di codice Java seguente utilizza l'API di alto livello dell'AWS SDK for Java per eseguire il download dell'archivio caricato nella fase precedente. Nell'esempio di codice, nota quanto segue:

  • L'esempio crea un'istanza della classe AmazonGlacierClient.

  • Il codice utilizza la regione Stati uniti occidentali (Oregon) (us-west-2), ovvero l'ubicazione in cui hai creato il vault in Passaggio 2: creazione di una vault in S3 Glacier.

  • Nell'esempio viene utilizzata l'operazione API download della classe ArchiveTransferManager dell'API di alto livello dell'AWS SDK for Java. L'esempio crea un argomento Amazon Simple Notification Service (Amazon SNS) e una coda Amazon Simple Queue Service (Amazon SQS) sottoscritta a quell'argomento. Se hai creato un utente amministratore di AWS Identity and Access Management (IAM) come illustrato in Passaggio 1: prima di iniziare a utilizzare S3 Glacier, il tuo utente dispone delle autorizzazioni IAM necessarie per la creazione e l'utilizzo dell'argomento Amazon SNS e della coda Amazon SQS.

Per istruzioni dettagliate su come eseguire questo esempio, consulta Esecuzione di esempi Java per Amazon S3 Glacier mediante Eclipse. Devi aggiornare il codice con l'ID archivio del file che hai caricato in Passaggio 3: caricamento di un archivio in una vault in S3 Glacier come indicato.

Esempio - Download di un archivio mediante l'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); } } }