Preguntas frecuentes sobre tablas globales - AWS Guía prescriptiva

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.

Preguntas frecuentes sobre tablas globales

En esta sección, se brindan respuestas a las preguntas frecuentes sobre las tablas globales de DynamoDB.

¿Cuál es el precio de las tablas globales?

  • El precio de una operación de escritura en una tabla de DynamoDB tradicional se calcula en unidades de capacidad de escritura (WCU) para tablas aprovisionadas o unidades de solicitud de escritura (WRU) para tablas bajo demanda. Si escribe un elemento de 5 KB, se genera un cargo de 5 unidades. El precio de una escritura en una tabla global se calcula en unidades de capacidad de escritura replicada (rWCU) para tablas aprovisionadas o unidades de solicitud de escritura replicada (rWRU) para tablas bajo demanda.

  • Las rWCU y las rWRU incluyen el costo de la infraestructura de streaming necesaria para administrar la replicación. Por ello, su precio es un 50 % superior al de las WCU y las WRU. Se aplican tarifas de transferencia de datos entre regiones.

  • Los cargos de RWCu y RWru se incurren en todas las regiones en las que el artículo se escriba directamente o mediante replicación.

  • La escritura en un índice secundario global (GSI) se considera una operación de escritura local y utiliza unidades de escritura normales.

  • En este momento no hay capacidad reservada disponible para las rWCU. Adquirir capacidad reservada para WCU puede seguir siendo beneficioso para las tablas con GSI que consumen unidades de escritura.

  • Al agregar una nueva región a una tabla global, DynamoDB inicia la nueva región automáticamente y le cobra como si se tratara de una restauración de tabla, en función del tamaño de GB de la tabla. También cobra tarifas de transferencia de datos entre regiones.

¿Qué regiones admiten las tablas globales?

Las tablas globales son compatibles con todas las Regiones de AWS.

¿Cómo se gestionan los GSI con las tablas globales?

En las tablas globales (actualmente, versión 2019) cuando se crea un GSI en una región, se crea automáticamente en otras regiones participantes y se repone de forma automática.

¿Cómo detengo la replicación de una tabla global?

Puede eliminar una tabla de réplica del mismo modo que eliminaría cualquier otra tabla. Al eliminar la tabla global se detiene la replicación en esa región y se elimina la copia de la tabla guardada en dicha región. No obstante, no se puede detener la replicación mientras se mantienen copias de la tabla como entidades independientes, ni tampoco se puede pausar.

¿Cómo interactúa Amazon DynamoDB Streams con las tablas globales?

Cada tabla global produce un flujo independiente basado en todas sus operaciones de escritura, independientemente de dónde hayan comenzado. Puede elegir consumir el flujo de DynamoDB en una región o en todas las regiones (de forma independiente). Si desea procesar operaciones de escritura locales pero no replicadas, puede agregar su propio atributo de región a cada elemento para identificar la región de escritura. A continuación, puede utilizar un filtro de eventos AWS Lambda para llamar a la función de Lambda solo para las operaciones de escritura en la región local. Esta acción ayuda en las operaciones de inserción y actualización, pero no en las de eliminación.

¿Cómo gestionan las transacciones las tablas globales?

Las operaciones transaccionales proporcionan garantías de atomicidad, uniformidad, aislamiento y durabilidad (ACID, por sus siglas en inglés) solo en la región en la que se creó la operación de escritura originalmente. No se admiten las transacciones entre regiones en las tablas globales. Por ejemplo, si tiene una tabla global con réplicas en las regiones Este de EE. UU. (Ohio) y Oeste de EE. UU. (Oregón) y realiza una operación TransactWriteItems en la región Este de EE. UU. (Ohio), puede observar transacciones completadas parcialmente en la región Oeste de EE. UU. (Oregón) a medida que los cambios se replican. Los cambios se replican en otras regiones solo cuando se han confirmado en la región de origen.

¿Cómo interactúan las tablas globales con la memoria caché de DynamoDB Accelerator (DAX)?

Las tablas globales eluden DAX mediante la actualización directa de DynamoDB, por lo que DAX no tiene constancia de que está almacenando datos obsoletos. La memoria caché de DAX solo se actualiza cuando caduca el TTL de la memoria caché.

¿Se propagan las etiquetas de las tablas?

No, las etiquetas no se propagan automáticamente.

¿Debo hacer copias de seguridad de las tablas de todas las regiones o solo de una?

La respuesta depende de la finalidad de la copia de seguridad.

  • Si desea garantizar la durabilidad de los datos, DynamoDB ya proporciona esa protección. El servicio garantiza la durabilidad.

  • Si desea conservar una instantánea para los registros históricos (por ejemplo, para cumplir los requisitos normativos), la copia de seguridad en una región debería ser suficiente. Puede copiar la copia de seguridad a más regiones mediante AWS Backup.

  • Si desea recuperar datos borrados o modificados por error, utilice la point-in-time recuperación de DynamoDB (PITR) en una región.

¿Cómo puedo desplegar tablas globales con AWS CloudFormation?

  • CloudFormation representa una tabla de DynamoDB y una tabla global como dos recursos independientes: y. AWS::DynamoDB::Table AWS::DynamoDB::GlobalTable Un enfoque consiste en crear todas las tablas que puedan ser potencialmente globales mediante el constructo GlobalTable, mantenerlas inicialmente como tablas independientes y agregar regiones después, si es necesario.

  • En CloudFormation, cada tabla global está controlada por una sola pila, en una sola región, independientemente del número de réplicas. Al implementar la plantilla, CloudFormation crea y actualiza todas las réplicas como parte de una operación de pila única. No debe desplegar el mismo recurso AWS::DynamoDB::GlobalTable en varias regiones. Se producirán errores y no se admite. Si despliega la plantilla de aplicación en varias regiones, puede usar condiciones para crear el recurso AWS::DynamoDB::GlobalTable en una sola región. O bien, puede optar por definir recursos AWS::DynamoDB::GlobalTable en una pila que sea independiente de la pila de aplicaciones y asegurarse de que despliega en una sola región.

  • Si tiene una tabla normal y quiere convertirla en una tabla global y, al mismo tiempo, administrarla de la siguiente manera CloudFormation: defina la política de eliminación comoRetain, elimine la tabla de la pila, conviértala en una tabla global en la consola y, a continuación, importe la tabla global como un nuevo recurso a la pila. Para obtener más información, consulta el AWS GitHub repositorio amazon-dynamodb-table-to- global-table-cdk.

  • En este momento no se admite la replicación entre cuentas.