Las tablas globales de Amazon DynamoDB son una base de datos totalmente gestionada, sin servidor, multirregional y multiactiva. Las tablas globales ofrecen una disponibilidad del 99,999 %, una mayor resiliencia en las aplicaciones y una mejor continuidad empresarial. Como las tablas globales replican automáticamente sus tablas de Amazon DynamoDB en las regiones de AWS que elija, podrá lograr un rendimiento de lectura y escritura local y rápido.

En el raro caso de que se produzca un error en una sola región, no será necesaria la conmutación por error en la base de datos, ya que la arquitectura multiactiva de las tablas globales permite a los clientes leer y escribir en cualquier tabla de réplica. Las tablas globales también eliminan la difícil tarea de replicar datos entre regiones y resolver conflictos de actualización en cargas de trabajo multiactivas. Además, las tablas globales permiten que las aplicaciones conserven un alto nivel de disponibilidad, incluso en el raro caso de que se produzca aislamiento o deterioro de una región entera.

Puede configurar tablas globales en la Consola de administración de AWS con la interfaz de la línea de comandos de AWS (AWS CLI) o con AWS CloudFormation. No es necesario realizar cambios en la aplicación al leer o escribir en una tabla global, ya que las tablas globales utilizan las mismas API de DynamoDB que las tablas de una sola región.

No existen costos anticipados o compromisos por el uso de las tablas globales y solo pagará por los recursos que use. Obtenga más información sobre la configuración de tablas globales en la Guía para desarrolladores de Amazon DynamoDB. Para obtener más información sobre los precios de las tablas globales, consulte las opciones de precios de Amazon DynamoDB de capacidad bajo demanda y con aprovisionamiento.

Funcionamiento

Las tablas globales de DynamoDB se componen de varias tablas de réplica. Cada tabla de réplica existe en una región diferente, pero todas las réplicas tienen el mismo nombre y la misma clave principal. Cuando se escriben datos en cualquier tabla de réplica, DynamoDB replica automáticamente dichos datos en todas las demás tablas de réplica de la tabla global.

Por ejemplo, supongamos que su aplicación presta servicio a una gran base de clientes que abarca tres áreas geográficas: la Costa Este de EE. UU., Canadá y Europa Occidental. Sin tablas globales, tendría que crear una tabla en cada región de AWS y escribir código para replicar los cambios de datos en cada tabla de cada región.

Con las tablas globales, puede crear una tabla global con una tabla de réplica en las tres regiones más cercanas a cada área geográfica. DynamoDB replicará automáticamente los cambios de cualquier réplica en las réplicas de las demás regiones.

Las tablas globales permiten a los usuarios de la aplicación tener acceso de baja latencia a los datos sin importar dónde se encuentren. En el improbable caso de que una región de AWS deje de estar disponible temporalmente, sus clientes seguirán teniendo acceso a las tablas de réplica de las demás regiones.

Diagrama que muestra el funcionamiento de las tablas globales

Beneficios

Lectura y escritura local, acceso a los datos de manera global

La replicación multiactiva y multirregional garantiza que las actualizaciones que se realizan en una tabla de réplica de una región se repliquen en las tablas de réplica de otras regiones. Al final, la replicación entre réplicas de tablas en todas las regiones es coherente. Esto significa que las lecturas y escrituras locales en tablas de réplicas de la misma región que la aplicación pueden lograr una gran coherencia. Sin embargo, las lecturas de los elementos que se encuentran en otras tablas de réplica de una región son coherentes.

Rendimiento

Las tablas globales permiten leer y escribir datos localmente al ofrecer una latencia de milisegundos de un solo dígito para su aplicación distribuida globalmente a cualquier escala. Esto puede aumentar el rendimiento de las aplicaciones globales de gran escala.

Facilidad de configuración y uso

Las tablas globales eliminan la complejidad y la carga operativa de la implementación y administración de la replicación multiactiva y multirregional en Amazon DynamoDB. Basta con seleccionar las regiones en las que necesite que se repliquen sus datos y DynamoDB se encargará del resto. Las aplicaciones tienen acceso a las tablas globales mediante las API y los puntos de conexión de DynamoDB existentes.

Disponibilidad, durabilidad y tolerancia de error en múltiples regiones

Las tablas globales están diseñadas para ofrecer una disponibilidad del 99,999 %. Si una única región se aísla o se degrada, su aplicación puede redirigir a una región diferente y realizar lecturas y escrituras en una réplica de tabla diferente. Puede aplicar lógica empresarial personalizada para determinar cuándo se redirigen las solicitudes a otras regiones. 

Además, Amazon DynamoDB realiza un seguimiento de las tareas de escritura que se han realizado pero que aún no se han propagado a todas las réplicas de tablas. Cuando la región vuelve a estar en línea, Amazon DynamoDB reanuda la actividad al propagar cualquier tarea de escritura pendiente desde la región a las réplicas de tablas de otras regiones y viceversa.

Consistencia y resolución de conflictos

Cualquier cambio realizado en cualquier elemento de una réplica de tabla se replica en todas las réplicas contenidas en la misma tabla global. En una tabla global, un elemento que acaba de escribirse suele propagarse a todas las réplicas de tabla en un segundo.  Además, en una tabla global cada réplica de tabla almacena el mismo grupo de elementos de datos. Amazon DynamoDB no admite la replicación parcial solo de determinados elementos. Si las aplicaciones actualizan el mismo elemento en diferentes regiones al mismo tiempo, pueden producirse conflictos.

Para resolver conflictos, las tablas globales de Amazon DynamoDB usan una reconciliación “last-writer-wins” (el último en escribir gana) entre actualizaciones simultáneas, en la que Amazon DynamoDB intenta determinar la escritura más reciente. Gracias a este mecanismo de resolución de conflictos, todas las réplicas coinciden en la actualización más reciente y convergen hacia un estado en el que todas tienen los mismos datos.

Introducción

Para comenzar a convertir sus tablas existentes en tablas globales o cuando cree una nueva tabla global, use la consola de Amazon DynamoDB, la AWS CLI o AWS CloudFormation. Si es la primera vez que usa Amazon DynamoDB, visite la página Introducción a DynamoDB. Antes de empezar, revise los precios de las tablas globales de capacidad bajo demanda o aprovisionada, en función de las necesidades de su aplicación.

      Preguntas frecuentes

      ¿Qué es una tabla global para Amazon DynamoDB?

      Una tabla global es un conjunto de una o varias tablas de réplicas, todas propiedad de una sola cuenta de AWS. Una sola tabla global de Amazon DynamoDB solo puede tener una tabla de réplica por región de AWS.

      ¿Qué es una tabla de réplica para Amazon DynamoDB?

      Una tabla de réplica es una sola tabla de DynamoDB. Cada tabla de réplica almacena el mismo conjunto de elementos de datos, tiene el mismo nombre de tabla y el mismo esquema de clave principal. Cuando una aplicación escribe datos en una tabla de réplica de una región, Amazon DynamoDB propaga automáticamente las escrituras a otras tablas de réplica de otras regiones de AWS.

      ¿Debo considerar las tablas globales de Amazon DynamoDB para mi estrategia de continuidad empresarial?

      Sí, las tablas globales de Amazon Dynamo refuerzan la continuidad empresarial, ya que aumentan la resiliencia de la aplicación y proporcionan coherencia en una sola región. Como las tablas globales son multiactivas, una aplicación puede leer o escribir en cualquier tabla de réplica. En el raro caso de que se produzca un evento regional no planificado, la aplicación se puede redirigir a otra réplica.

      ¿Cómo hago que la tabla de Amazon DynamoDB sea global?

      Puede crear una tabla global mediante la consola de Amazon DynamoDB, la AWS CLI o AWS CloudFormation con esta guía paso a paso.

      ¿Cuáles son los requisitos previos para las tablas globales de Amazon DynamoDB?

      Antes de agregar una réplica adicional en una región diferente a una tabla global de Amazon DynamoDB, la tabla debe tener habilitado DynamoDB Streams, debe tener el mismo nombre que todas las demás réplicas, debe tener la misma clave de partición que todas las demás réplicas y debe especificarse la misma configuración de capacidad de escritura.

      ¿Los nombres de las tablas de Amazon DynamoDB son únicos a nivel global?

      Todas las tablas de réplica de una tabla global de Amazon DynamoDB deben tener el mismo nombre.

      ¿Cuál es la diferencia entre la tabla de Amazon DynamoDB y la tabla global?

      Al igual que otras bases de datos, Amazon DynamoDB almacena los datos en tablas. Una tabla es una colección de elementos y cada elemento es una colección de atributos. Amazon DynamoDB usa claves principales para identificar de forma única cada elemento de una tabla y tiene índices secundarios para ofrecer una mayor flexibilidad de consulta.

      Por el contrario, una tabla global de Amazon DynamoDB es un conjunto de una o más tablas de réplica que pertenecen a una sola cuenta de AWS. Cada tabla de réplica es estructuralmente igual a una tabla normal de Amazon DynamoDB.

      ¿Está disponible la recuperación puntual en las tablas globales de Amazon DynamoDB?

      Sí, puede habilitar la recuperación puntual en cada réplica de una tabla global.

      Prácticas recomendadas

        Historias de clientes

        “Cuando comenzó la pandemia de COVID-19, había una gran demanda de servicios de audio y video. A principios de 2020, presenciamos un crecimiento sin precedentes del uso de estos servicios, cuyo número de participantes, tanto existentes como nuevos con la necesidad de conectarse de forma virtual, creció de 10 millones que se reunían a diario a 300 millones. Al final pudimos controlar este crecimiento con Amazon DynamoDB para reuniones por Zoom. La utilización de las tablas globales de DynamoDB con el modo bajo demanda nos permitió escalar prácticamente sin tener límites ni problemas de rendimiento, incluso durante el pico repentino del uso”.

        Yasin Mohammed, administrador de Ingeniería, Operaciones en la Nube en Zoom Video Communications, Inc.

        “Replicar datos en diferentes regiones es un problema bastante complejo y podemos usar las tablas globales de Amazon DynamoDB para resolver la cuestión de manera sencilla.”

        Saral Jain, director de Ingeniería, Infraestructura y Datos de Snap Inc.

        Lea el caso práctico »

        Disney+

        El equipo de descubrimiento de contenidos que está detrás de Disney+ usa tablas globales de DynamoDB para escalar y ofrecer funciones populares como “Continuar viendo”, “Mi lista” y “Recomendaciones personalizadas”.

        Vea el vídeo »

        Más información sobre las tablas globales
        Más información sobre las tablas globales de DynamoDB

        Consulte la guía para desarrolladores de DynamoDB.

        Más información 
        Regístrese para obtener una cuenta gratuita
        Regístrese para obtener una cuenta gratuita

        Obtenga acceso instantáneo a la capa gratuita de AWS. 

        Registrarse 
        Comience a crear en la consola
        Comenzar a crear en la consola

        Comience a crear tablas globales de DynamoDB en la consola de DynamoDB.

        Comenzar a crear