Cómo usar los índices secundarios globales de Dynamodb

Cómo usar los índices secundarios globales de Dynamodb
Los índices secundarios globales de Dynamodb son índices que contienen claves de clasificación y claves de partición que son diferentes de la clave principal de la tabla base. Derivan su nombre "global" del hecho de que permiten el acceso a los datos desde varias particiones de la tabla base durante las operaciones de consulta.

Los índices secundarios globales son adecuados para aplicaciones y programas que pueden necesitar realizar varios tipos de consultas utilizando conjuntos de diferentes atributos como criterios de consulta. Los índices secundarios globales admiten tales aplicaciones. Crear uno o más GSIS en su tabla lo ayudará a emitir las solicitudes de consulta contra los índices en Amazon Dynamodb.

En particular, una tabla DynamodB puede tener múltiples índices secundarios globales. Esto es increíblemente valioso para las aplicaciones, ya que tener múltiples claves secundarias en una sola tabla mejora el acceso a los datos utilizando los atributos distintos de las claves principales. Además, GSIS puede admitir atributos no únicos, dando más flexibilidad al permitirle ejecutar las consultas contra atributos no clave.

Cómo crear un índice secundario global

Si bien puede crear un índice secundario global cuando inicialmente cree una tabla, como es común al crear índices secundarios locales, también tiene la flexibilidad de agregar un índice secundario global después de crear una tabla. Cuando elige el método anterior, DynamodB rellena automáticamente su GSI utilizando los datos en la tabla ya creada.

Discutamos brevemente los dos métodos:

a. Creación de un índice secundario global para una nueva tabla

Puede crear un GSI utilizando la consola de administración de AWS. Inicie sesión en su cuenta de AWS en la consola y haga clic en Dynamodb.

Haga clic en las tablas y vaya a la sección Crear tabla como lo hace normalmente al crear una nueva tabla. Esta sección le permite personalizar sus tablas adecuadamente. Nombre su tabla como se desee y haga clic en Configuración de personalización.

Aparece una nueva sección en la parte inferior de la página anterior cuando hace clic en Configuración de personalización. La nueva interfaz le permite crear los índices secundarios secundarios o globales locales. Haga clic en el cuadro "Crear índice global" y continuar.

El paso anterior lo lleva a la sección final donde necesita proporcionar los detalles de su índice secundario global definiendo su clave de partición, nombre de índice, clave de clasificación y proyecciones de atributos.

b. Crear un índice secundario global para una tabla existente

Existen dos opciones para crear un índice secundario global: los comandos AWS CLI o el uso de la consola de administración de AWS. Usar el comando CLI es bastante sencillo. Todo lo que necesita es el comando de índice de nombre y defina su nombre de tabla en el comando.

AWS Dynamodb Update-Table \
--Colección de música de nombre de mesa \
--ATTRIBUTE-DEFINICIONES ATRIBTENAME = name, attributeType = s \
--Global-Secundary-Index-Updates \
"[" Create ": " indexName ":" name-odex "," keySchema ": [" attributeName ":" name "," keyType ":" hash "], \
"ProvisionedThroughput": "ReadCapacityUnits": 10, "WriteCapacityUnits": 5, "Proyección": "ProyectType": "Todos"] "

Si desea utilizar la consola de administración de AWS, diríjase a su lista de tablas, elija la tabla en la que tiene la intención de crear un índice secundario global y navegue a la pestaña de índices. Haga clic en la pestaña "Crear índice".

Haga clic en la pestaña "Crear índice" lo lleva al asistente de índice secundario global donde personaliza su índice con los atributos relevantes.

Uso de tablas secundarias de Dynamo Global

Los siguientes son algunos de los casos de uso de índices secundarios globales de Dynamodb:

a. Consulta el índice secundario global

Puede usar el comando de consulta de la API DynamodB para realizar las operaciones de consulta en sus índices secundarios globales. El comando de consulta es como se muestra en lo siguiente:

AWS Dynamodb Query \
--Colección de música de nombre de mesa \
--Songtitle-Index \ de nombre de índice \
--EXPRESIÓN DE CONDICIÓN CLAVE "Songtitle =: Name" \
--Expression-attribute-values ​​'": name": "s": "gráficos de cobertura"'
"Capacidad consumida": NULL

b. Escaneo de las tablas secundarias Global Dynamodb

También puede ejecutar una operación de escaneo en su GSI utilizando el comando Dynamodb Scan. Por lo general, el comando de escaneo se ve así:

$ AWS Dynamodb Scan \
--Colección de música de nombre de mesa \
--nombre de índice Daterelado \
$ Local

C. Proyecciones de atributos

Las proyecciones son conjuntos de atributos que se copian de las tablas en índices secundarios. Por lo general, las claves de partición, las claves de clasificación y otros atributos se encuentran entre los más proyectados en los índices para respaldar los requisitos de consulta de sus aplicaciones.

Consultar un índice permite a AmazondB acceder a cualquier atributo en la proyección como acceder a los atributos que están en sus tablas independientes. Asegúrese de especificar los atributos que se proyectarán en su índice. Las tres opciones proporcionadas por Dynamodb incluyen las siguientes:

  • Keys_only- Esto consiste en los índices secundarios más pequeños posibles, con cada elemento en el índice que contiene solo la clave de clasificación y los valores de clave de partición de la tabla, así como los valores de la clave de índice.
  • Incluir: esta opción tiene todos los atributos en la categoría Keys_only y cualquier otro atributo no clave que especifique.
  • Todo- Esta opción tiene todos los atributos de su tabla fuente.

Conclusión

Eso nos lleva al final de este tutorial. Encontrará el Dynamodb bastante útil para cualquier desarrollador dedicado de la explicación. Tómese su tiempo y aprenda a crear y usar las tablas secundarias Global Dynamodb.