Creación de una tabla global - Amazon DynamoDB

Creación de una tabla global

importante

Esta documentación corresponde a la versión 2017.11.29 (heredada) de las tablas globales, lo que debe evitarse en el caso de las tablas globales nuevas. Los clientes deberían utilizar la versión 2019.11.21 (actual) de las tablas globales siempre que sea posible, ya que proporciona mayor flexibilidad, mayor eficacia y consume menos capacidad de escritura que la 2017.11.29 (heredada).

Para determinar qué versión utiliza, consulte Determinación de la versión de las tablas globales utilizadas. Para actualizar las tablas globales existentes de la versión 2017.11.29 (heredada) a la versión 2019.11.21 (actual), consulte Actualización de tablas globales.

En esta sección se indica cómo crear una tabla global mediante la consola de Amazon DynamoDB o la AWS Command Line Interface (AWS CLI).

Creación de una tabla global (consola)

Siga estos pasos para crear una tabla global mediante la consola. En el siguiente ejemplo se crea una tabla global con tablas de réplica en los Estados Unidos y Europa.

  1. Abra la consola de DynamoDB en https://console.aws.amazon.com/dynamodb/home. Para realizar este ejemplo, elija la región us-east-2 (EE. UU. Este [Ohio]).

  2. En el panel de navegación del lado izquierdo de la consola, elija Tables (Tablas).

  3. Seleccione Create Table (Crear tabla).

    En Nombre de la tabla, introduzca Music.

    En Primary key (Clave principal) introduzca Artist. Elija Add sort key (Añadir clave de ordenación) e introduzca SongTitle. (Tanto Artist como SongTitle deben ser cadenas).

    Para crear la tabla, seleccione Create (Crear). Esta tabla le servirá a modo de primera tabla de réplica en una nueva tabla global. Será el prototipo para crear otras tablas de réplica que quiera añadir más tarde.

  4. Elija la pestaña Tablas globales y, a continuación, elija Crear una réplica de la versión 2017.11.29 (heredada).

    
                        Captura de pantalla de la consola que muestra el botón Crear una réplica de la versión 2017.11.29 (heredada).
  5. En el menú desplegable Available replication Regions (Regiones de replicación disponibles), elija US West (Oregon) (Oeste de EE. UU. (Oregón).

    La consola comprueba el proceso para asegurarse de que no haya ninguna tabla con el mismo nombre en la región seleccionada. Si ya existe una tabla con el mismo nombre, debe eliminar la tabla existente antes de crear una nueva tabla de réplica en esa región.

  6. Elija Create replica (Crear réplica). Esto comienza el proceso de creación de la tabla en Oeste de EE. UU (Oregón).

    La pestaña Global Table (Tabla global) de la tabla seleccionada (y de cualquier otra tabla de réplica) indica que la tabla se ha replicado en varias regiones.

  7. Ahora puede añadir otra región para que la tabla global se replique y sincronice en los Estados Unidos y Europa. Para ello, repita el paso 5, pero esta vez especifique Europe (Fráncfort) (Europa (Fráncfort) en lugar de US West (Oregon) (Oeste de EE. UU. (Oregón)).

  8. Debe seguir usando la AWS Management Console en la región (Este de EE. UU. (Ohio)). Seleccione Items (Elementos) en el menú de navegación izquierdo, seleccione la tabla Music (Música) y, a continuación, elija Create Item (Crear elemento).

    1. En Artist (Artista), escriba item_1.

    2. En SongTitle, escriba Song Value 1.

    3. Para escribir el elemento, elija Create item (Crear elemento).

  9. Después de un breve periodo de tiempo, el elemento se replica en las tres regiones de la tabla global. Para comprobar esto, en la consola, vaya al selector de regiones que se encuentra en la esquina superior derecha y elija Europa (Frankfurt). La tabla Music de Europa (Frankfurt) debe contener el nuevo elemento.

  10. Repita el paso 9 y elija US West (Oregon) (Oeste de EE. UU. [Oregón]) para verificar la replicación en esa región.

Creación de una tabla global (AWS CLI)

Siga estos pasos para crear una tabla global Music mediante la AWS CLI. En el siguiente ejemplo se crea una tabla global con tablas de réplica en los Estados Unidos y en Europa.

  1. Cree una nueva tabla (Music) en EE. UU. Este (Ohio) con DynamoDB Streams habilitada (NEW_AND_OLD_IMAGES).

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region us-east-2
  2. Cree un tabla Music idéntica en EE. UU. Este (Norte de Virginia).

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region us-east-1
  3. Cree una tabla global (Music) que se componga de réplicas de tablas en las regiones us-east-2 y us-east-1.

    aws dynamodb create-global-table \ --global-table-name Music \ --replication-group RegionName=us-east-2 RegionName=us-east-1 \ --region us-east-2
    nota

    El nombre de la tabla global (Music) debe coincidir con el nombre de cada una de las réplicas de tabla (Music). Para obtener más información, consulte Prácticas recomendadas y requisitos para la administración de tablas globales.

  4. Cree otra tabla en Europa (Irlanda), con la misma configuración que usó en los pasos 1 y 2:

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region eu-west-1

    Después de realizar este paso, agregue la nueva tabla a la tabla global Music.

    aws dynamodb update-global-table \ --global-table-name Music \ --replica-updates 'Create={RegionName=eu-west-1}' \ --region us-east-2
  5. Para verificar que la replicación funciona, agregue un nuevo elemento a la tabla Music en EE. UU. Este (Ohio).

    aws dynamodb put-item \ --table-name Music \ --item '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region us-east-2
  6. Espere unos segundos y, a continuación, verifique si el elemento se replicó correctamente en las regiones EE. UU. Este (Norte de Virginia) y Europa (Irlanda).

    aws dynamodb get-item \ --table-name Music \ --key '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region us-east-1
    aws dynamodb get-item \ --table-name Music \ --key '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region eu-west-1