Compreendendo a operação do DynamoDB GetItem

Compreendendo a operação do DynamoDB GetItem
A chamada da API GetItem ajuda a recuperar os itens que são os principais blocos de construção no DynamoDB. Curiosamente, esta chamada da API suporta todas as linguagens de programação suportadas pelo DynamoDB. Assim, você pode recuperar os itens ao usar um idioma de sua escolha.

Você pode usar JavaScript, Python, Php, Kotlin, Java, Go ou C++. Você também pode usar o console GNU em vez de qualquer ferramenta de programação. Este artigo explica como a operação GetItem funciona e como você pode usá-la para recuperar os itens.

Como funciona a operação GetItem

Usar a chamada da API GetItem depende com sucesso de como você enquadra sua chamada. Certifique -se de especificar o nome da tabela correto e a chave primária do item que você pretende recuperar. Inclua todas as seções da chave primária que a torna completa.

O comportamento getItem depende de três padrões. Ele é executado como uma leitura consistente, os resultados têm todos os atributos e não fornece seu consumo de unidade de capacidade. Com base nesses parâmetros, você pode substituir o comportamento padrão desta API.

Notavelmente, o DynamoDB mantém a confiabilidade de primeira linha, mantendo as várias cópias em vários servidores. Enquanto um artigo bem-sucedido cria essas cópias, executá-las pode levar uma quantidade considerável de tempo para atender ao eventual parâmetro padrão de consistência.

A implicação é que tentar uma leitura imediatamente após escrever um item é uma missão fútil. A interface sempre retorna um valor -chave para as chaves existentes. No entanto, traz de volta uma resposta nula para chaves indisponíveis.

Sintaxe getItem:

A seguir, a sintaxe getItem:

getItem (Keyname)

Na sintaxe dada, a Keyname é o parâmetro principal e deve conter um nome completo do item ou chave cujo valor é o que você pretende recuperar. A resposta deve ser uma string com o valor da chave solicitada. Mas as chaves que não existem retornam uma resposta nula.


"Attributestoget": ["string_value"],
"ConsistenteRead": booleano,
"ExpressionAttributeNames":
"String_value": "String_value"
,
"Chave":
"string_value":
"B": BLOB,
"Bool": booleano,
"BS": [BLOB],
"EU": [
"Valor do atributo"
],
"M":
"String": "AttributeValue"
,
"N": "string",
"NS": ["string_value"],
"NULL": booleano,
"S": "string_value",
"Ss": ["string_value"]

,
"ProjectionExpression": "string_value",
"ReturnConsumedCapacity": "String_value",
"Nome do tablete": "string_value"

Solicitar opções/parâmetros:

Usando o formato JSON, a solicitação GetItem aceita os seguintes dados:

  • Chave - É um nome de atributo para atribui objetos e uma representação da chave primária devida para recuperação. Todas as solicitações devem conter a string de chave.
  • Nome da tabela - Esta é uma string que descreve o nome da tabela que contém a chave ou item solicitado. Também deve estar lá em cada solicitação.
  • Atributestoget - É um parâmetro legado que contém uma variedade de strings com pelo menos 1 item.
  • CosistentRead - Este parâmetro determina suas solicitações de leitura de consistência modelo. A operação GetItem usa o modelo de consistência eventual por padrão. No entanto, definir este parâmetro para true garante que o processo use as leituras consistentes mais decisivas.
  • ReturnConsumedCapacity - Este parâmetro determina o nível de detalhe sobre o consumo de rendimento de que a resposta retornará. Eles vêm em três categorias diferentes, no total, e nenhum.
  • ExpressionAttributen names - Em certos casos, é aconselhável usar os nomes do ExpressionAttributEn. Por exemplo, você pode acessar os atributos cujos nomes não estão em conjunto com palavras reservadas do DynamoDB ou criar um espaço reservado em casos de repetição de ocorrências. Além disso, você pode usar os nomes de expressão de expressão para impedir a interpretação errônea de caracteres especiais em uma expressão.
  • Projeção de expressão - Esta string identifica os atributos para a recuperação da tabela. Esses atributos podem incluir conjuntos, elementos ou escalares. Certifique -se de separar cada atributo usando vírgulas. No entanto, o comando getItem retorna todos os atributos se você não especificar nenhum atributo.

Guia passo a passo sobre o uso da operação GetItem

As etapas a seguir ilustram como você pode obter as chaves de uma tabela DynamoDB usando o GetItem. Usamos o JavaScript para esta ilustração:

Etapa 1: Crie um cliente de dynamoDB

Você precisa de um cliente do dynamoDB para esta operação. Assim, o primeiro passo é criar um cliente do DynamoDB.

Etapa 2: Crie um documento de dynamoDB

Depois de ter um lado do cliente, você deve criar um documento ou tabela de cliente do DynamoDB da qual você recupere os itens.

Etapa 3: Solicite um item da sua tabela

Amostra 1: Obtenha um único item de uma tabela

A seguinte linha de comando deve ajudá -lo a obter um item da tabela:

importar usegetCommand de "@AWS-SDK/DynamoDB_LIB";
importar dynamodbdocclient de "… /libs /ddbdocclient.js ";
// Defina os parâmetros.
Parâmetros const export =
TableName: "Table_name",
Chave:
PrimaryKey: "String_1",
Sortkey: "String_2",
,
;
exportar const getItem = async () =>
tentar
const Data = Aguar.send (novo getCommand (parâmetros));
console.log ("Sucesso:", dados.Item);
catch (err)
console.log ("erro");

;
getItem ();

Amostra 2: Obtenha um lote de itens de uma tabela

O comando a seguir ajuda você a obter um lote de itens:

importar BatchExecutestatementCommand
importar ddbdocclient
const tableName = processo.argv [2];
const Songyear1 = Processo.argv [3];
const SongTitle1 = Processo.argv [4];
const Songyear2 = Processo.argv [5];
const SongTitle2 = Processo.argv [6];
exportar const run = assíncrono (
Nome da tabela,
Songyear1,
SongTitle1,
Songyear2,
SongTitle2
) =>
Parâmetros const =
Declarações: [

Declaração: "Selecione _ de" + tableName + "onde title =? e ano =?",
Parâmetros: [s: movietitle1, n: Movieyear1],
,

Declaração: "Selecione * de" + tableName + "onde title =? e ano =?",
Parâmetros: [S: Songtitle2, n: Songyear2],
,
],
;
tentar
const Data = Aguar.enviar(
Novo BatchExecutestatementCommand (parâmetros)
);
para (vamos i = 0; i < data.Responses.length; i++)
console.log (dados.Respostas [i].Item.ano);
console.log (dados.Respostas [i].Item.título);

retornar "Run com sucesso";
catch (err)
console.erro (err);

;
Run (tableName, Songyear1, Songtitle1, Songyear2, Songtitle2);

Conclusão

Você pode usar os métodos fornecidos para encontrar os itens que correspondam corretamente aos parâmetros especificados em uma tabela Dynamogb. A chamada da API GetItem experimenta os valores da loja persistente interna de um aplicativo. Notavelmente, todos os valores armazenados no Dynamogb são compartilhados entre todas as sessões e perfis e estão disponíveis enquanto o aplicativo permanecer instalado.