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

Si aún no se ha familiarizado con el almacenamiento de archivos en Amazon Simple Storage Service (Amazon S3), se recomienda que comience por obtener más información sobre las clases de almacenamiento de S3 Glacier en Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive. Para obtener más información, consulte Clases de almacenamiento de S3 Glacier y Clases de almacenamiento para archivar objetos en la Guía del usuario de Amazon S3.

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

AWS ofrece SDK para el desarrollo de 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 proporcionar sus credenciales de seguridad de AWS en el código y las bibliotecas calculan la firma necesaria y la incluyen en la solicitud enviada a S3 Glacier. Los SDK de AWS proporcionan bibliotecas que se asignan a la API de REST subyacente y contienen objetos que le permiten crear solicitudes y procesar las respuestas con facilidad.

La AWS Command Line Interface (AWS CLI) es una herramienta unificada para administrar los Servicios de AWS, incluido S3 Glacier. Para obtener más información sobre la descarga de la 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.

Bibliotecas de SDK de AWS para Java y .NET

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

Puede encontrar ejemplos de trabajo con Amazon S3 Glacier con AWS SDK for Java y AWS SDK for .NET en toda 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.