AWS DynamoDB conta com tabelas e índices para armazenar e organizar os dados. Nessas tabelas, existem chaves primárias que ajudam na organização de dados e na recuperação de itens. Assim, uma tabela ou índice de dynamoDB sempre tem uma chave primária simples ou chave primária composta.
Já discutimos as chaves primárias simples neste site. Este artigo se concentra nas chaves de partição do DynamoDB. As seções que cobrimos incluem a definição de uma chave composta, as melhores práticas para criar teclas compostas e como criar uma chave composta para sua tabela.
O que é uma chave composta do dynamoDB?
Uma chave composta do DynamoDB é um conjunto de atributos consiste em uma chave de partição e uma chave de classificação. Todas as mesas com teclas de classificação têm teclas primárias compostas, enquanto todas as mesas sem teclas de classificação têm teclas primárias simples. Eles também são conhecidos como teclas de alcance de hash ou teclas primárias compostas de dynamoDB.
Curiosamente, as chaves compostas não existem dentro dos itens da tabela, como nos outros atributos. Em vez disso, é um conceito abstrato que você pode criar ou considerar uma combinação de uma chave de partição e uma chave de classificação.
Considere as teclas compostas como suas chaves primárias ao consultar suas mesas ou ao realizar quaisquer operações que exijam uma chave primária. Assim, todas as atualizações, excluir, atualizar ou qualquer itens que precisam da inclusão de uma chave primária têm a chave da partição e a chave de classificação.
Embora uma chave de partição ou uma chave primária simples ainda ajude na maioria das operações, as teclas compostas adicionam uma eficiência na maioria das operações do dynamoDB e melhoram o desempenho do seu banco de dados. Além disso, as chaves de partição também permitem filtrar os resultados da consulta com mais eficiência usando as operações de comparação.
Melhores práticas para criar as chaves compostas do DynamoDB
Certifique -se de que você adira ao seguinte:
Escolha uma chave de partição única: Sua chave de partição deve ser única e ter o mais alta cardinalidade possível. Uma chave de partição com uma cardinalidade extremamente baixa pode afetar seu armazenamento e distribuição de dados.
Você pode usar os valores que não são compartilháveis entre os itens em uma tabela. Eles podem incluir os endereços de e -mail, números de identificação ou nomes de usuário. Portanto, um user_id funciona bem na coluna da chave de partição para uma tabela de usuários. Da mesma forma, uma tabela de funcionários pode ter o funcionário_id como a chave de partição.
Sua chave de classificação deve complementar os padrões de acesso: Sua chave de classificação deve reunir as informações relacionadas em um único local para operações de consulta eficientes. Uma boa chave de classificação melhora a seletividade dos itens da sua tabela durante a recuperação por um comando de consulta.
Como criar uma chave composta no DynamoDB
Para criar uma chave composta, você pode usar o comando Create-Table com os parâmetros -key-schema e -attribute-Definitions.
O parâmetro -Key -schema especifica a estrutura principal da tabela e pode incluir um ou mais elementos. Especifique o elemento do esquema chave primeiro, seguido por qualquer índice secundário. Cada elemento no esquema chave consiste em um nome de atributo e um tipo de chave.
Por outro lado, o parâmetro -attribute -Definitions especifica os atributos que compõem a chave primária e quaisquer índices secundários. Cada definição de atributo consiste em um nome de atributo e um tipo de atributo.
Aqui está um exemplo de como você pode usar esses parâmetros para criar uma tabela DynamoDB com uma chave primária composta que consiste em dois atributos: partition_key e sort_key:
AWS DynamoDB Create-Table \
--Nome da tabela\
--atributo-definições atributeName = partition_key, atributeType = s atributeName = sort_key, atributeType = s \
--key-schema AttributEname = partition_key, keytype = hash atributeName = sort_key, keytype = range \
--provisionou-throughput readCapacityUnits = 10, WriteCapacityUnits = 10
O comando dado cria uma nova tabela de dynamoDB com uma chave primária composta que consiste no atributo partition_key como a tecla Partition (hash) e o atributo sort_key como a tecla Sort (Range). Prossiga definir os principais atributos principais no parâmetro -Attribute -Definitions e o esquema -chave no parâmetro -key -schema.
Você também pode criar uma chave composta simplesmente definindo a chave de partição do item e a chave composta usando a operação PutItem. Por exemplo:
DynamoDBClient.PutItem (
"Nome do tablete": "MyTableName",
"Item":
"pk":
"S": "PartitionKey"
,
"SK":
"S": "Sortkey"
,
"e-mail":
"S": "[email protected] "
)
Conclusão
Este artigo contém tudo o que você precisa saber sobre as teclas compostas do DynamoDB. Notavelmente, é essencial escolher a chave da partição e classificar a chave com cuidado, pois eles afetam significativamente o desempenho e a escalabilidade da sua tabela de dynamoDB. Uma chave primária composta é ideal para consultar e filtrar os dados no DynamoDB com base na chave de partição e na chave de classificação.