Cargue un archivo en una bóveda de Amazon Glacier mediante el AWS SDK para .NET - Amazon Glacier

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, que ofrecen una experiencia de cliente superior con S3 basada en cubos APIs, 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 Guía de AWS soluciones para transferir datos de los almacenes de Amazon Glacier a las clases de almacenamiento de 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.

Cargue un archivo en una bóveda de Amazon Glacier mediante el AWS SDK para .NET

El siguiente ejemplo de código en C# utiliza la API de alto nivel del AWS SDK para .NET para cargar un archivo de muestra en el almacén. En el ejemplo de código, observe lo siguiente:

  • El ejemplo crea una instancia de la ArchiveTransferManager clase para el punto final de la región Amazon Glacier especificado.

  • En este ejemplo de código se utiliza la región Oeste de EE. UU. (Oregón) (us-west-2).

  • En el ejemplo se usa la operación de API Upload de la clase ArchiveTransferManager para cargar el archivo. En el caso de archivos pequeños, esta operación carga el archivo directamente en Amazon Glacier. Para archivos de mayor tamaño, esta operación utiliza la operación de API de carga multiparte de Amazon Glacier para dividir la carga en varias partes con el fin de mejorar la recuperación de errores, en caso de que se detecte algún error al transmitir los datos a Amazon Glacier.

Para step-by-step obtener instrucciones sobre cómo ejecutar el siguiente ejemplo, consulteEjecución de los ejemplos de código. Debe actualizar el código que se muestra con el nombre del almacén y el nombre del archivo que quiere cargar.

nota

Amazon Glacier mantiene un inventario de todos los archivos de sus almacenes. Cuando cargue el archivo del ejemplo siguiente, este no aparecerá en ningún almacén de la consola de administración hasta que se haya actualizado el inventario del almacén. Por lo general, esta actualización se realiza una vez al día.

ejemplo — Carga de un archivo mediante la API de alto nivel del AWS SDK para .NET
using System; using Amazon.Glacier; using Amazon.Glacier.Transfer; using Amazon.Runtime; namespace glacier.amazon.com.rproxy.govskope.ca.docsamples { class ArchiveUploadHighLevel_GettingStarted { static string vaultName = "examplevault"; static string archiveToUpload = "*** Provide file name (with full path) to upload ***"; public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); // Upload an archive. string archiveId = manager.Upload(vaultName, "getting started archive test", archiveToUpload).ArchiveId; Console.WriteLine("Copy and save the following Archive ID for the next step."); Console.WriteLine("Archive ID: {0}", archiveId); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } } }