¿Cómo puedo hacer una copia de seguridad de una tabla de DynamoDB en Amazon S3?

4 minutos de lectura
0

Quiero hacer una copia de seguridad de mi tabla de Amazon DynamoDB mediante Amazon Simple Storage Service (Amazon S3).

Descripción breve

DynamoDB ofrece dos métodos de copia de seguridad integrados:

Ambos métodos son adecuados para realizar copias de seguridad de las tablas con fines de recuperación de desastres. Sin embargo, con estos métodos, no puede utilizar los datos para casos de uso relacionados con el análisis de datos o las tareas de extracción, transformación y carga (ETL). La característica Exportar a S3 de DynamoDB es la forma más sencilla de crear copias de seguridad que puede descargar localmente o utilizar con otro servicio de AWS. Para personalizar el proceso de creación de copias de seguridad, puede utilizar Amazon EMR o AWS Glue.

Resolución

Característica Exportar a S3 de DynamoDB

Con esta característica, puede exportar datos de una tabla de Amazon DynamoDB en cualquier momento dentro de su período de recuperación puntual a un bucket de Amazon S3. Para obtener más información, consulte Exportación de datos de DynamoDB a Amazon S3.

Para ver un ejemplo de cómo utilizar esta característica, consulte Exportar datos de tablas de Amazon DynamoDB a su lago de datos en Amazon S3, sin necesidad de escribir ningún código.

El uso de la característica Exportar a S3 le permite utilizar sus datos de otras formas, entre las que se incluyen las siguientes:

  • Realice ETL con los datos exportados en S3 e importe los datos de nuevo a DynamoDB
  • Conserve las instantáneas históricas para la auditoría
  • Integre los datos con otros servicios o aplicaciones
  • Cree un lago de datos de S3 a partir de los datos de DynamoDB y analice los datos de varios servicios, como Amazon Athena, Amazon Redshift o Amazon SageMaker
  • Ejecute consultas según sea necesario de sus datos desde Athena o Amazon EMR sin que esto repercuta en su capacidad de DynamoDB

Tenga en cuenta las siguientes ventajas e inconvenientes al utilizar esta característica:

  • Ventajas: Esta característica le permite exportar datos entre regiones y cuentas de AWS sin crear aplicaciones personalizadas ni escribir código. Las exportaciones no afectan a la capacidad de lectura ni a la disponibilidad de las tablas de producción.
  • Inconvenientes: Esta característica exporta los datos de la tabla únicamente en formato JSON de DynamoDB o Amazon Ion. Para volver a importar los datos de forma nativa con un bucket de S3, consulte Importación de datos de DynamoDB desde Amazon S3. También puede crear una plantilla nueva o utilizar AWS Glue, Amazon EMR o AWS SDK para volver a importar los datos.

Amazon EMR

Utilice Amazon EMR para exportar sus datos a un bucket de S3. Puede hacerlo con uno de estos métodos:

  • Ejecute consultas de Hive/Spark en tablas de DynamoDB usando DynamoDBStorageHandler. Para obtener más información, consulte Exportar datos de DynamoDB.
  • Utilice el código abierto emr-dynamodb en GitHub para exportar/importar tablas de DynamoDB.

Tenga en cuenta las siguientes ventajas e inconvenientes al utilizar estos métodos:

  • Ventajas: Si es un usuario activo de Amazon EMR y no tiene problemas en usar Hive o Spark, puede administrar mejor sus configuraciones con estos métodos que con la función nativa Exportar a S3. También puede utilizar los clústeres existentes para este propósito.
  • Inconvenientes: Estos métodos requieren que cree y mantenga un clúster de EMR. Si usa DynamoDBStorageHandler, conoce bien Hive o Spark.

AWS Glue

Utilice AWS Glue para copiar la tabla en Amazon S3. Para obtener más información, consulte Exportar con AWS Glue y Amazon DynamoDB.

  • Ventajas: Dado que AWS Glue es un servicio sin servidor, usted no necesita crear ni mantener recursos. Puede volver a escribir directamente en DynamoDB. Al exportar datos, puede añadir una lógica ETL personalizada para casos de uso, tales como el filtrado y la conversión. También puede elegir el formato que prefiera entre CSV, JSON, Parquet u ORC. Para obtener más información, consulte Opciones de formato de datos para entradas y salidas en AWS Glue.
  • Inconvenientes: Si elige esta opción, debe saber cómo usar Spark. También debe conservar el código fuente para su trabajo de ETL de AWS Glue. Para obtener más información, consulte «connectionType»: «dynamodb».

Si ninguna de estas opciones ofrece la flexibilidad que necesita, puede utilizar la API DynamoDB para crear su propia solución.

Información relacionada

Solicitar una exportación de tabla en DynamoDB

Cómo exportar una tabla de Amazon DynamoDB a Amazon S3 con AWS Step Functions y AWS Glue

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 9 meses