Uso de los AWS SDK con Amazon S3 Glacier - Amazon S3 Glacier

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

Si busca soluciones de almacenamiento de archivos, le sugerimos que utilice las clases de almacenamiento S3 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 Clases de almacenamiento de S3 Glacier y Almacenamiento de datos a largo plazo con clases de almacenamiento de S3 Glacier en la Guía del usuario de Amazon S3. Estas clases de almacenamiento utilizan la API de Amazon S3, están disponibles en todas las regiones y se pueden gestionar en la consola de Amazon S3. Ofrecen funciones como el análisis de costos de almacenamiento, Storage Lens, funciones de seguridad que incluyen múltiples opciones de cifrado y más.

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 de los AWS SDK con Amazon S3 Glacier

AWS proporciona SDK para que desarrolle aplicaciones para Amazon S3 Glacier. Las bibliotecas de los SDK encapsulan esta API subyacente de S3 Glacier, lo que simplifica las tareas de programación. Por ejemplo, para cada solicitud enviada a S3 Glacier, debe incluir una firma para autenticar las solicitudes. Al utilizar las bibliotecas del SDK, solo debe incluir sus credenciales de AWS seguridad en el código y las bibliotecas calculan la firma necesaria y la incluyen en la solicitud que se envía a S3 Glacier. AWS Los SDK proporcionan bibliotecas que se asignan a la API REST subyacente y proporcionan objetos que puede usar para crear solicitudes y procesar respuestas con facilidad.

El AWS Command Line Interface (AWS CLI) es una herramienta unificada para administrar su Glacier Servicios de AWS, incluido S3. Para obtener información sobre cómo descargar el AWS CLI, consulte AWS Command Line Interface. Para obtener una lista de los comandos de la CLI de S3 Glacier, consulte Referencia de comandos de la AWS CLI.

AWS Bibliotecas de SDK para Java y .NET

Los AWS SDK para Java y .NET ofrecen bibliotecas contenedoras de alto y bajo nivel.

Puede encontrar ejemplos de cómo trabajar con Amazon S3 Glacier en la guía para desarrolladores AWS SDK for Java y la que encontrará a AWS SDK for .NET lo largo de esta guía para desarrolladores.

¿Qué es la API de bajo nivel?

Las bibliotecas de encapsulamiento de bajo nivel se asignan minuciosamente a la API de REST subyacente (Referencia de la API para Amazon S3 Glacier) admitida por S3 Glacier. Para cada operación REST de S3 Glacier, la API de bajo nivel proporciona un método correspondiente, un objeto de solicitud para que pueda proporcionar información de la solicitud y un objeto de respuesta para que pueda procesar la respuesta de S3 Glacier. Las bibliotecas de encapsulamiento de bajo nivel son la implementación más completa de las operaciones de S3 Glacier subyacentes.

Para obtener más información acerca de estas bibliotecas de SDK, consulte Uso de AWS SDK for Java con Amazon S3 Glacier y Uso de AWS SDK for .NET con Amazon S3 Glacier.

¿Qué es la API de alto nivel?

Para simplificar aún más el desarrollo de aplicaciones, estas bibliotecas ofrecen una abstracción de un nivel más alto de algunas de las operaciones. Por ejemplo:

  • Carga de un archivo: para cargar un archivo mediante la API de bajo nivel, además del nombre de archivo y el nombre del almacén donde desea guardar el archivo, debe proporcionar una suma de comprobación (hash en árbol SHA-256) de la carga. Sin embargo, la API de alto nivel calculará la suma de comprobación automáticamente.

  • Descarga de un archivo o inventario de almacén: para descargar un archivo con la API de bajo nivel, primero debe iniciar una tarea, esperar a que la tarea se complete y, después, obtener la salida del trabajo. Debe escribir código adicional para configurar un tema de Amazon Simple Notification Service (Amazon SNS) para S3 Glacier con el fin de recibir una notificación cuando se haya completado el trabajo. También necesita un mecanismo de sondeo para comprobar si en el tema se ha publicado un mensaje de finalización del trabajo. La API de alto nivel proporciona un método para descargar un archivo que se encarga de todos estos pasos. Solo tiene que especificar un ID de archivo y una ruta de carpeta en la que desee guardar los datos descargados.

Para obtener más información acerca de estas bibliotecas de SDK, consulte Uso de AWS SDK for Java con Amazon S3 Glacier y Uso de AWS SDK for .NET con Amazon S3 Glacier.

Cuándo utilizar la API de alto nivel y de bajo nivel

En general, si la API de alto nivel proporciona los métodos que necesita para realizar una operación, debe utilizarla debido a la simplicidad que ofrece. Sin embargo, si la API de alto nivel no ofrece la funcionalidad, puede utilizar la API de bajo nivel. Además, la API de bajo nivel permite un control específico de la operación, como la lógica de reintentos si se produce un error. Por ejemplo, durante la carga de un archivo la API de alto nivel utiliza el tamaño de archivo para determinar si carga el archivo en una sola operación o utiliza la API de carga multiparte. La API también incorpora una carga lógica de reintentos en caso de que se produzca un error en una carga. Sin embargo, su aplicación puede necesitar un control específico de estas decisiones, en cuyo caso puede utilizar la API de bajo nivel.