Gerenciando quantidades volumosas de dados podem ser uma tarefa difícil para os gerentes de dados, principalmente se sua consulta ou varredura chegarem a várias páginas. A paginação no DynamoDB permite que o banco de dados lide com as grandes quantidades de dados, dividindo os resultados em várias páginas gerenciáveis.Esta redação explica a paginação do DynamoDB e fornece vários possíveis casos de uso e exemplos. Ele também destaca como a paginação no DynamoDB difere da paginação em outros bancos de dados.
O que é paginação no dynamoDB?
Geralmente, a paginação, derivada das páginas da palavra, é uma técnica usada por bancos de dados para dividir os registros de dados em vários pedaços, segmentos ou páginas. E como o AWS DynamoDB suporta o armazenamento de grandes quantidades de dados, ele apresenta recursos de paginação confiáveis.
O componente de paginação do DynamoDB garante que você só possa recuperar até 1 GB de dados por varredura ou consulta. Embora seja uma configuração padrão, você pode adicionar um parâmetro limite em uma consulta para especificar um limite. Você pode definir ainda um limite para o número de registros em cada consulta de varredura.
Notavelmente, existem algumas diferenças entre a paginação no DynamoDB e a paginação em um banco de dados SQL típico. Mais obviamente, cada registro paginado que é recuperado no DynamoDB tem um custo direto, tornando esta uma regra não escrita ao usar a paginação no DynamoDB. Esse recurso faz da paginação um fator vital para limitar os registros recuperados e os custos diretos.
Como usar a paginação no dynamoDB
1. Paginação durante uma operação de consulta
No DynamoDB, uma consulta retorna apenas os resultados de até 1 MB. Mas você pode confirmar efetivamente se há mais resultados examinando seus resultados. Notavelmente, um resultado de operação de consulta de baixo nível contém um elemento LastEvaluedKey que não é nulo para indicar que existem mais itens relacionados à sua consulta que você deve recuperar.
Um resultado sem um elemento Keyky LastEvalued que não é nulo, implica que todos os itens que correspondem à consulta se encaixam no limite de 1 MB e não há mais itens para recuperação. Obviamente, você também pode definir um limite para o número de itens por resultado. Veja o seguinte comando de amostra:
AWS DynamoDB Consulta \Você pode usar o comando anterior para consultar sua tabela para os itens com os mesmos valores de expressão de condição -chave. Vamos pesquisar nossa tabela de “pedidos” para order_ids da Darry Tech. Também definimos um limite para 10 itens por página. Outra opção para o parâmetro -limit é usar o parâmetro -size -size para o mesmo objetivo.
A paginação é uma operação automática na AWS CLI para itens abaixo de 1 MB de dados. Você pode adicionar uma chave de início exclusiva ao comando se quiser que sua consulta comece de um pedido específico.
A resposta se parece com a seguinte:
Os resultados fornecidos mostram 10 Darry Tech na primeira página. Você pode usar os valores do LastEvaluedKey para obter mais ordens que correspondem aos valores -chave de expressão de sua pesquisa para construir uma nova consulta. A nova solicitação de consulta contém os valores do LastEvaluedKey no parâmetro exclusivestartKey.
Um exemplo da sintaxe é mostrado no seguinte:
AWS DynamoDB Consulta \O comando anterior produz os próximos pedidos de compensação na próxima página, começando com o ID do pedido que possui a chave primária especificada, i.e. "PartitionKey": "S": Darry Tech "," SortKey ": " S ":" 5356-SY ".
2. Paginação durante operações de varredura
Também é possível usar a paginação para operações de varredura. Tudo funciona da mesma maneira que com os comandos de consulta. No entanto, você precisa usar o atributo de expressão de filtro. O comando se parece com o que temos aqui:
AWS DynamoDB Scan \O comando anterior se retira até 20 itens por página da tabela MyTable, começando com o item cuja chave primária é "PartitionKey": "ABC123", "Sortkey": "XYZ987". Ele filtra os resultados para incluir apenas os itens em que o atributo AttributeName tem o valor "ABC123".
Na resposta, o LastevaluedKey O campo contém a chave primária do último item no conjunto de resultados. Você pode usar esse valor como o ExclusivestartKey em um subsequente Varredura operação para recuperar a próxima página de resultados.
Conclusão
A paginação no DynamoDB melhora a capacidade de gerenciamento de dados. No entanto, é vital saber se seus sistemas se beneficiarão da paginação. É necessário usar a paginação se você tiver uma longa lista de itens em um aplicativo. Embora a ilustração fornecida se concentre na chamada da AWS CLI, você também pode usar a paginação com SDKs da AWS, como o Python's BOTO3 ou qualquer SDK que você preferir.