Exemplos de consulta do DynamoDB

Exemplos De Consulta Do Dynamodb



Um banco de dados é uma coleção de dados — o DynamoDB não é exceção. Os bancos de dados contêm muitos dados que podem ser difíceis de recuperar sem um mecanismo predefinido. É aqui que o comando de consulta desempenha um papel importante.

Como qualquer sistema de gerenciamento de banco de dados, o DynamoDB oferece vários métodos de consulta por meio dos quais você pode interagir com o sistema para acessar e manipular seus dados. A consulta no DynamoDB é uma ferramenta muito poderosa que permite recuperar um item ou um grupo de itens relacionados ao comando de consulta.

Este artigo descreve os principais exemplos das operações de consulta do DynamoDB.







Exemplos comuns de consulta do DynamoDB

O comportamento padrão da operação de consulta no DynamoDB é retornar todos os itens associados aos itens de consulta. Curiosamente, o comando query no DynamoDB pode ser usado com tabelas ou índices secundários.



Seja qual for o caso, sempre certifique-se de especificar a condição de igualdade para o valor de sua chave de partição. Novamente, pode ser necessário fornecer uma condição diferente para a chave de classificação caso você use uma no comando.



Outros parâmetros que você encontrará ao consultar o DynamoDB também incluem KeyConditionExpression e FilterExpression. A KeyConditionExpression especifica os valores de chave que você pretende consultar. Por outro lado, a FilterExpression remove itens dos resultados da consulta antes de obter uma resposta. Você usará ExpressionAttributeValues ​​como espaços reservados para os parâmetros de expressão mencionados.





Os exemplos de consulta do DynamoDB incluem:

Encontrar um único item de uma tabela com base em chaves primárias

Você pode usar o utilitário Query no DynmoDB para localizar um único item contando com uma combinação da chave de partição do item e valores de chave de classificação. A sintaxe para tal operação é a seguinte:



consulta aws dynamodb \

--table-name MyTableName \

--expressão-chave-condição 'PartitionKey = :pk AND SortKey = :sk' \

--expressão-atributo-valores '{':pk':{'S':'a123b'},':sk':{'S':'def456b'}}'

O utilitário de consulta acima visa recuperar um item com um valor de chave de partição a1234b e um valor de chave de classificação odef456b da tabela MyTableName. Por exemplo, podemos usar o utilitário acima para encontrar um item em nossa tabela ‘Pedidos’. O valor da chave de partição do item pode ser wr546gg representando o Customer_ID, enquanto seu valor de chave de classificação pode ser 24536433 representando o número do pedido.

O resultado pode ser o seguinte:

O resultado acima traz de volta Holiday Books como o único item que tem um valor de chave de partição de wr546gg e um valor de chave de classificação de 24536433. Ele também traz todos os outros atributos adicionais associados ao item. Em nossa ilustração, ele traz de volta o número da nota fiscal e o valor pago.

Notavelmente, o comando de consulta trará de volta uma lista em branco se não houver nenhum item que corresponda aos valores de chave primária especificados.

Recuperar Todos os itens de uma tabela do DynamoDB que correspondem a valores de atributos específicos

Use uma expressão de filtro para recuperar todos os itens que têm um valor de atributo semelhante em uma tabela específica do DynamoDB.

O comando para esta operação de consulta é mostrado abaixo.

consulta aws dynamodb \

--table-name MyTableName \

--filter-expressão 'OutroAtributo1 = :val' \

--expressão-atributo-valores '{':val':{'S':'valor1'}}'

Por exemplo, podemos usar o comando de consulta acima para recuperar músicas com mais de 5 minutos em nossa tabela Music. Para conseguir isso, definiremos nosso valor OtherAttribute1 como 5,00 e MyTableName como Music.

O resultado pode ser o mostrado abaixo:

É necessário truncar a lista para brevidade. Mas, a partir dos resultados, nosso comando de consulta recuperou 11 itens com um valor de expressão de filtro de 5,00 de nossa tabela de músicas do DynamoDB.

Recuperando todos os itens com um determinado intervalo de valores de atributos

O comando abaixo é útil ao recuperar itens em uma tabela específica:

consulta aws dynamodb \

--table-name \

--expressão-chave-condição 'attribute_name ENTRE :val1 E :val2' \

--expressão-atributo-valores '{':val1':{'N':''},':val2':{'N':''}}'

Obviamente, você precisará substituir todos os atributos por suas credenciais personalizadas, como faria com qualquer outra linha de comando. Por exemplo, usaremos nossa tabela Employee com um atributo-chave de intervalo batizado de “idade”. Nosso objetivo será resgatar empregadores com idade entre 30 e 42 anos.

Nossa nova linha de comando será a seguinte:

consulta aws dynamodb \

--table-name Usuários \

--expressão-chave-condição 'idade ENTRE :val1 E :val2' \

--expressão-atributo-valores '{':val1':{'N':'30'},':val2':{'N':'42'}}'

A execução do utilitário acima trará uma resposta semelhante à da figura abaixo;

A ilustração acima mostra que a consulta trouxe de volta 6 itens, indicando o valor do atributo para cada consulta. O ScannedCount é o número de itens verificados na tabela enquanto o CapacityUnits é a quantidade de unidades consumidas durante a operação.

Conclusão

Como o DynamoDB é um banco de dados NoSQL, sua operação de consulta não se comporta como a do seu banco de dados AQL comum. Mas, depois de fazer isso, você descobrirá que a operação é bastante poderosa e facilitará sua interação com o banco de dados.