Consultar e verificar um índice - 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á.

Consultar e verificar um índice

Compare a consulta e a verificação de um índice usando a instrução SELECT em SQL com as operações Query e Scan no Amazon DynamoDB.

Consultar e verificar um índice com o SQL

Em um banco de dados relacional, você não trabalha diretamente com índices. Em vez disso, você consulta tabelas, emitindo instruções SELECT, e o otimizador de consultas pode fazer uso de índices.

Um otimizador de consultas é um componente do sistema de gerenciamento de banco de dados relacional (RDBMS - relational database management system) que avalia os índices disponíveis e determina se eles podem ser usados para agilizar uma consulta. Se os índices puderem ser usados para acelerar uma consulta, o RDBMS acessará o índice primeiro e, em seguida, o usará para localizar os dados na tabela.

Aqui estão algumas instruções SQL que podem ser usadas GenreAndPriceIndexpara melhorar o desempenho. Presumimos que a tabela Music tenha dados suficientes para que o otimizador de consultas decida usar esse índice, em vez de simplesmente verificar a tabela inteira.

/* All of the rock songs */ SELECT * FROM Music WHERE Genre = 'Rock';
/* All of the cheap country songs */ SELECT Artist, SongTitle, Price FROM Music WHERE Genre = 'Country' AND Price < 0.50;

Consultar e verificar um índice no DynamoDB

No DynamoDB, execute as operações Query e Scan diretamente no índice, como faria em uma tabela. É possível usar a API do DynamoDB ou do PartiQL (uma linguagem de consultas compatível com SQL) para consultar ou verificar o índice. Você deve especificar TableName e IndexName.

Veja a seguir algumas consultas GenreAndPriceIndexno DynamoDB. (O esquema de chaves desse índice consiste em Genre e Price.)

DynamoDB API
// All of the rock songs { TableName: "Music", IndexName: "GenreAndPriceIndex", KeyConditionExpression: "Genre = :genre", ExpressionAttributeValues: { ":genre": "Rock" }, };

Este exemplo usa uma ProjectionExpression para indicar que somente alguns dos atributos, em vez de todos eles, são exibidos nos resultados.

// All of the cheap country songs { TableName: "Music", IndexName: "GenreAndPriceIndex", KeyConditionExpression: "Genre = :genre and Price < :price", ExpressionAttributeValues: { ":genre": "Country", ":price": 0.50 }, ProjectionExpression: "Artist, SongTitle, Price" };

O seguinte é um escaneamento ativado GenreAndPriceIndex.

// Return all of the data in the index { TableName: "Music", IndexName: "GenreAndPriceIndex" }
PartiQL for DynamoDB

Com PartiQL, use a instrução Select PartiQL para realizar consultas e varreduras no índice.

// All of the rock songs SELECT * FROM Music.GenreAndPriceIndex WHERE Genre = 'Rock'
// All of the cheap country songs SELECT * FROM Music.GenreAndPriceIndex WHERE Genre = 'Rock' AND Price < 0.50

O seguinte é um escaneamento ativado GenreAndPriceIndex.

// Return all of the data in the index SELECT * FROM Music.GenreAndPriceIndex
nota

Para obter exemplos de códigos que usam Select, consulte Instruções Select em PartiQL para DynamoDB.