Ejemplos de consultas de DynamoDB

Ejemplos De Consultas De Dynamodb



Una base de datos es una colección de datos; DynamoDB no es una excepción. Las bases de datos contienen muchos datos que pueden ser difíciles de recuperar sin un mecanismo predefinido. Aquí es donde el comando de consulta juega un papel importante.

Como cualquier sistema de administración de bases de datos, DynamoDB ofrece varios métodos de consulta a través de los cuales puede interactuar con el sistema para acceder y manipular sus datos. La consulta en DynamoDB es una herramienta muy poderosa que le permite recuperar un elemento o un grupo de elementos relacionados con el comando de consulta.

Este artículo describe los principales ejemplos de las operaciones de consulta de DynamoDB.







Ejemplos comunes de consultas de DynamoDB

El comportamiento predeterminado para la operación de consulta en DynamoDB es devolver todos los elementos asociados con los elementos de consulta. Curiosamente, el comando de consulta en DynamoDB se puede usar con tablas o índices secundarios.



Cualquiera que sea el caso, asegúrese siempre de especificar la condición de igualdad para el valor de su clave de partición. Nuevamente, es posible que deba proporcionar una condición diferente para la clave de clasificación en caso de que use una en el comando.



Otros parámetros que encontrará al consultar DynamoDB también incluyen KeyConditionExpression y FilterExpression. KeyConditionExpression especifica los valores clave que desea consultar. Por otro lado, FilterExpression elimina elementos de los resultados de la consulta antes de obtener una respuesta. Utilizará ExpressionAttributeValues ​​como marcadores de posición para los parámetros de expresión mencionados.





Los ejemplos de consultas de DynamoDB incluyen:

Búsqueda de un único elemento de una tabla basada en claves primarias

Puede usar la utilidad Consulta en DynmoDB para encontrar un solo elemento basándose en una combinación de la clave de partición del elemento y los valores de la clave de ordenación. La sintaxis para tal operación es la siguiente:



consulta aws dynamodb \

--table-name MiNombreDeTabla \

--clave-condición-expresión 'PartitionKey = :pk Y SortKey = :sk' \

--expresión-valores-atributos '{':pk':{'S':'a123b'},':sk':{'S':'def456b'}}'

La utilidad de consulta anterior tiene como objetivo recuperar un elemento con un valor de clave de partición a1234b y un valor de clave de clasificación odef456b de la tabla MyTableName. Por ejemplo, podemos usar la utilidad anterior para encontrar un artículo en nuestra tabla de 'Pedidos'. El valor de la clave de partición del elemento se puede wr546gg que representa el Customer_ID, mientras que su valor de clave de clasificación puede ser 24536433 que representa el número de pedido.

El resultado puede ser el siguiente:

El resultado anterior recupera Holiday Books como el único elemento que tiene un valor de clave de partición de wr546gg y un valor de clave de ordenación de 24536433. También le brinda todos los demás atributos adicionales asociados con el elemento. En nuestra ilustración, devuelve el número de factura y el importe pagado.

En particular, el comando de consulta devolverá una lista en blanco si no hay ningún elemento que coincida con los valores de clave principal especificados.

Recuperar Todos los elementos de una tabla de DynamoDB que coinciden con valores de atributos específicos

Utilice una expresión de filtro para recuperar todos los elementos que tienen un valor de atributo similar en una tabla específica de DynamoDB.

El comando para esta operación de consulta se muestra a continuación.

consulta aws dynamodb \

--table-name MiNombreDeTabla \

--expresión-filtro 'OtroAtributo1 = :val' \

--expresión-valores-atributos '{':valor':{'S':'valor1'}}'

Por ejemplo, podemos usar el comando de consulta anterior para recuperar canciones con más de 5 minutos en nuestra tabla Música. Para lograr esto, estableceremos nuestro valor OtherAttribute1 en 5.00 y MyTableName en Music.

El resultado puede ser como se muestra a continuación:

Es necesario truncar la lista por razones de brevedad. Pero a partir de los resultados, nuestro comando de consulta recuperó 11 elementos con un valor de expresión de filtro de 5,00 de nuestra tabla Música de DynamoDB.

Recuperación de todos los elementos con un rango particular de valores de atributo

El siguiente comando es útil cuando se recuperan elementos dentro de una tabla en particular:

consulta aws dynamodb \

--table-name \

--clave-condición-expresión 'nombre_atributo ENTRE :val1 Y :val2' \

--expresión-valores-atributos '{':val1':{'N':''},':val2':{'N':''}}'

Por supuesto, deberá reemplazar todos los atributos con sus credenciales personalizadas como debería hacerlo con cualquier otra línea de comando. Por ejemplo, usaremos nuestra tabla de empleados con un atributo clave de rango bautizado como 'edad'. Apuntaremos a recuperar empleadores de entre 30 y 42 años.

Nuestra nueva línea de comando será la siguiente:

consulta aws dynamodb \

--nombre-tabla Usuarios \

--clave-condición-expresión 'edad ENTRE :val1 Y :val2' \

--expresión-valores-atributos '{':val1':{'N':'30'},':val2':{'N':'42'}}'

Ejecutar la utilidad anterior traerá una respuesta similar a la de la figura a continuación;

La ilustración anterior muestra que la consulta devolvió 6 elementos, lo que indica el valor del atributo para cada consulta. ScannedCount es la cantidad de elementos escaneados en la tabla, mientras que CapacityUnits es la cantidad de unidades consumidas durante la operación.

Conclusión

Dado que DynamoDB es una base de datos NoSQL, su operación de consulta no se comporta como la de su base de datos AQL ordinaria. Pero una vez que lo haga, descubrirá que la operación es bastante poderosa y hará que su interacción con la base de datos sea breve.