Recuperación de metadatos de un almacén de Amazon Glacier con AWS SDK para Java - Amazon Glacier

Esta página es solo para los clientes actuales del servicio Amazon Glacier que utilizan Vaults y la API de REST original de 2012.

Si busca soluciones de almacenamiento de archivos, se recomienda 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 almacenes) 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 con sus propias API 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 hay que hacer migraciones. Para un almacenamiento de archivos a largo plazo y de bajo costo, AWS recomienda las clases de almacenamiento Amazon S3 Glacier, que ofrecen una experiencia del cliente superior con las API basadas en buckets de S3, Región de AWS disponibilidad total, costos más bajos e AWS integración de servicios. Si desea mejorar las capacidades, considere la posibilidad de migrar a las clases de almacenamiento de Amazon S3 Glacier mediante nuestra AWSGuía de soluciones para la transferencia de datos de los almacenes de Amazon Glacier a las clases de almacenamiento de Amazon S3 Glacier.

Recuperación de metadatos de un almacén de Amazon Glacier con AWS SDK para Java

Recuperación de los metadatos de un almacén

Puede recuperar los metadatos de un almacén específico o de todos los almacenes de una determinada región de AWS. A continuación, se indican los pasos necesarios para recuperar los metadatos de un almacén específico con la API de bajo nivel de Amazon SDK para Java.

  1. Cree una instancia de la clase AmazonGlacierClient (el cliente).

    Debe especificar la región de AWS en la que se encuentra el almacén. Todas las operaciones que realice con este cliente se aplican a esa región de AWS.

  2. Proporcione la información de la solicitud creando una instancia de la clase DescribeVaultRequest.

    Amazon Glacier (Amazon Glacier) requiere que proporcione el nombre del almacén y el ID de la cuenta. Si no proporciona el ID de la cuenta, se presumirá que se trata del ID de cuenta asociado a las credenciales proporcionadas para firmar la solicitud. Para obtener más información, consulte Uso de AWS SDK para Java con Amazon Glacier.

  3. Ejecute el método describeVault proporcionando el objeto de solicitud como parámetro.

    La información de los metadatos del almacén que Amazon Glacier devuelve está disponible en el objeto DescribeVaultResult.

En el siguiente fragmento de código Java, se ilustran los pasos anteriores.

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());

nota

Para obtener información acerca de la API de REST subyacente, consulte Descripción del almacén (GET almacén).

Recuperación de los metadatos de todos los almacenes de una región

También puede utilizar el método listVaults para recuperar los metadatos de todos los almacenes de una determinada región de AWS.

En el fragmento de código Java siguiente, se recupera una lista de almacenes de la región us-west-2. La solicitud restringe a cinco el número de almacenes que se devuelven en la respuesta. A continuación, se realiza una serie de llamadas a listVaults para recuperar toda la lista de almacenes de la región de AWS.

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);

En el segmento de código anterior, si no especifica el valor Limit en la solicitud, Amazon Glacier devuelve hasta 10 almacenes, según lo establecido en la API de Amazon Glacier. Si no hay más almacenes para mostrar, el campo marker de la respuesta contiene el nombre de recurso de Amazon (ARN) del almacén en el que continuará la lista cuando se envíe una nueva solicitud; de lo contrario, el campo marker es null.

Tenga en cuenta que la información que se devuelve sobre cada almacén de la lista es la misma que la información que se obtiene llamando al método describeVault en un determinado almacén.

nota

El método listVaults llama a la API de REST subyacente (consulte Enumeración de almacenes (GET almacenes)).

Ejemplo: Recuperación de metadatos de un almacén con Amazon SDK para Java

Para ver un ejemplo de código funcional, consulte Ejemplo: Creación de un almacén con la AWS SDK para Java. En el ejemplo de código Java, se crea un almacén y se recuperan los metadatos del almacén.