Principais diferenças entre o SQL e o DynamoDB ao ler dados de uma tabela - Amazon DynamoDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Principais diferenças entre o SQL e o DynamoDB ao ler dados de uma tabela

Com o SQL, você usa a instrução SELECT para recuperar uma ou mais linhas de uma tabela. Use a cláusula WHERE para determinar os dados que são retornados para você.

Esse recurso é diferente ao usar o Amazon DynamoDB, que oferece as seguintes operações para leitura de dados:

  • ExecuteStatement recupera um ou vários itens de uma tabela. BatchExecuteStatement recupera vários itens de tabelas diferentes em uma única operação. Ambas as operações usam PartiQL, uma linguagem de consulta compatível com SQL.

  • GetItem: recupera um único item de uma tabela. Esta é a maneira mais eficiente de ler um único item, pois ele dá acesso direto à localização física do item. (O DynamoDB também oferece a operação BatchGetItem, permitindo que você realize até 100 chamadas GetItem em uma única operação.)

  • Query: recupera todos os itens que têm uma chave de partição específica. Nesses itens, você pode aplicar uma condição à chave de classificação e recuperar apenas um subconjunto dos dados. Query fornece acesso rápido e eficiente às partições em que os dados são armazenados. (Para ter mais informações, consulte Partições e distribuição de dados.)

  • Scan: recupera todos os itens da tabela especificada. (Essa operação não deve ser usada com tabelas grandes, pois ela pode consumir grandes quantidades de recursos do sistema.)

nota

Com um banco de dados relacional, você pode usar a instrução SELECT para juntar os dados de várias tabelas e retornar os resultados. Junções são fundamentais para o modelo relacional. Para garantir que as junções sejam executadas de forma eficiente, o banco de dados e suas aplicações devem ter a performance ajustada de forma contínua. O DynamoDB é um banco de dados NoSQL não relacional que não é compatível com junções de tabelas. Em vez disso, os aplicativos leem dados de uma tabela por vez.

As seções a seguir descrevem diferentes casos de uso para a leitura de dados e como executar essas tarefas com um banco de dados relacional e com o DynamoDB.