Esta página es solo para los clientes actuales del servicio Amazon Glacier que utilizan Vaults y la API REST original de 2012.
Si busca soluciones de almacenamiento de archivos, le recomendamos que utilice las clases de almacenamiento de Amazon Glacier en Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive. Para obtener más información sobre estas opciones de almacenamiento, consulte las clases de almacenamiento de Amazon Glacier
Amazon Glacier (servicio original independiente basado en bóveda) ya no aceptará nuevos clientes a partir del 15 de diciembre de 2025, sin que ello afecte a los clientes actuales. Amazon Glacier es un servicio independiente propio APIs que almacena datos en almacenes y es distinto de las clases de almacenamiento Amazon S3 y Amazon S3 Glacier. Sus datos actuales permanecerán seguros y accesibles en Amazon Glacier de forma indefinida. No se requiere ninguna migración. Para un almacenamiento de archivos a largo plazo y de bajo costo, AWS recomienda las clases de almacenamiento Amazon S3 Glacier
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso del AWS SDK para Java con Amazon Glacier
AWS SDK para Java Proporciona tanto un nivel alto como un nivel bajo APIs para Amazon Glacier (Amazon Glacier), como se describe enUso del AWS SDKs con Amazon Glacier. Para obtener información sobre cómo descargarlo AWS SDK para Java, consulte Amazon SDK for Java
nota
AWS SDK para Java Proporciona clientes seguros contra subprocesos para acceder a Amazon Glacier. Como práctica recomendada, sus aplicaciones deben crear un cliente y reutilizar el cliente entre subprocesos.
Temas
Uso de la API de bajo nivel
La AmazonGlacierClient clase de nivel inferior proporciona todos los métodos que se asignan a las operaciones REST subyacentes de Amazon Glacier (Referencia de API para Amazon Glacier). Al llamar a cualquiera de estos métodos, debe crear el objeto de solicitud correspondiente y proporcionar un objeto de respuesta en el que el método pueda devolver la respuesta de Amazon Glacier a la operación.
Por ejemplo, la clase AmazonGlacierClient contiene el método createVault para crear un almacén. Este método se corresponde con la operación de REST Create Vault (consulte Creación de un almacén (almacén PUT)). Para usar este método, debe crear instancias del CreateVaultResult objeto que recibe la respuesta de Amazon Glacier, como se muestra en el siguiente fragmento de código de Java:
AmazonGlacierClient client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/"); CreateVaultRequest request = new CreateVaultRequest() .withAccountId("-") .withVaultName(vaultName); CreateVaultResult result = client.createVault(createVaultRequest);
En todos los ejemplos de bajo nivel de la guía se utiliza este patrón.
nota
En el segmento de código anterior, se especifica AccountID al crear la solicitud. Sin embargo, cuando se usa AWS SDK para Java, el valor AccountId de la solicitud es opcional y, por lo tanto, todos los ejemplos de bajo nivel de esta guía no establecen este valor. El AccountId es el Cuenta de AWS ID. Este valor debe coincidir con el Cuenta de AWS ID asociado a las credenciales utilizadas para firmar la solicitud. Puede especificar el Cuenta de AWS ID o, si lo desea, un '-', en cuyo caso Amazon Glacier utilizará el Cuenta de AWS ID asociado a las credenciales utilizadas para firmar la solicitud. Si especifica el ID de cuenta, no incluya ningún guion en él. Al usarlo AWS SDK para Java, si no proporciona el ID de la cuenta, la biblioteca establece el ID de la cuenta en «-».
Uso de la API de alto nivel
Para simplificar aún más el desarrollo de aplicaciones, AWS SDK para Java proporciona la ArchiveTransferManager clase que implementa una abstracción de nivel superior para algunos de los métodos de la API de bajo nivel. Esta clase tiene métodos útiles, como upload y download, para las operaciones con archivos.
Por ejemplo, en el siguiente fragmento de código Java, se utiliza el método upload de alto nivel para cargar un archivo.
String vaultName = "examplevault"; String archiveToUpload = "c:/folder/exampleArchive.zip"; ArchiveTransferManager atm = new ArchiveTransferManager(client, credentials); String archiveId = atm.upload(vaultName, "Tax 2012 documents", new File(archiveToUpload)).getArchiveId();
Tenga en cuenta que cualquier operación que realice se aplicará a la AWS región que especificó al crear el objeto. ArchiveTransferManager Si no especifica ninguna AWS región, se AWS SDK para Java establece us-east-1 como la AWS región por defecto.
En todos los ejemplos de alto nivel de esta guía, se utiliza este patrón.
nota
La clase ArchiveTransferManager de alto nivel puede crearse con una instancia de AmazonGlacierClient o de AWSCredentials.
Ejemplos de ejecución de Java para Amazon Glacier mediante Eclipse
La forma más sencilla de comenzar con los ejemplos de código Java es instalar la última versión de AWS Toolkit for Eclipse. Para obtener más información acerca de la instalación o actualización del último kit de herramientas, vaya a http://aws.amazon.com/eclipse
1 |
Cree un perfil de credenciales predeterminado para sus AWS credenciales, tal y como se describe en el AWS SDK para Java tema AWS Cómo proporcionar credenciales en Amazon SDK for Java. |
2 |
Cree un nuevo proyecto de AWS Java en Eclipse. El proyecto se configura previamente con AWS SDK para Java. |
3 |
Copie el código de la sección que lee en su proyecto. |
4 |
Actualice el código con cualquier dato requerido. Por ejemplo, si carga un archivo, proporcione la ruta del archivo y el nombre del bucket. |
5 |
Ejecute el código. Verifique que el objeto se cree con la AWS Management Console. Para obtener más información sobre el AWS Management Console, vaya a http://aws.amazon.com/console/ |
Configuración del punto de enlace
De forma predeterminada, AWS SDK para Java utiliza el punto finalhttps://glacier.us-east-1.amazonaws.com. Puede configurar el punto de enlace de forma explícita, tal como se ilustra en los siguientes fragmentos de código Java.
En el fragmento siguiente, se muestra cómo establecer el punto de conexión en la región Oeste de EE. UU. (Oregón) (us-west-2) en la API de bajo nivel.
client = new AmazonGlacierClient(credentials); client.setEndpoint("glacier.us-west-2.amazonaws.com");
En el fragmento siguiente, se muestra cómo establecer el punto de conexión en la región Oeste de EE. UU. (Oregón) en la API de alto nivel.
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"); ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient);
Para obtener una lista de AWS las regiones y puntos finales compatibles, consulteAcceso a Amazon Glacier.