Visão geral da Amazon QLDB - Banco de dados Amazon Quantum Ledger (AmazonQLDB)

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á.

Visão geral da Amazon QLDB

Importante

Aviso de fim do suporte: os clientes existentes poderão usar a Amazon QLDB até o final do suporte em 31/07/2025. Para obter mais detalhes, consulte Migrar um Amazon QLDB Ledger para o Amazon Aurora Postgre. SQL

As seções a seguir fornecem uma visão geral de alto nível dos componentes de QLDB serviços da Amazon e de como eles interagem.

Diário primeiro

Na arquitetura tradicional de banco de dados, você geralmente grava dados em tabelas como parte de uma transação. Um log de transações — normalmente uma implementação interna — registra todas as transações e as modificações do banco de dados que elas fazem. O log de transações é um componente essencial do banco de dados. Você precisa do log para reproduzir transações em caso de falha do sistema, recuperação de desastres ou replicação de dados. No entanto, os logs de transações do banco de dados não são imutáveis e não foram projetados para fornecer acesso direto e fácil aos usuários.

Na AmazonQLDB, a revista é o núcleo do banco de dados. Estruturalmente semelhante a um log de transações, o diário é uma estrutura de dados imutável, somente para anexar, que armazena os dados do seu aplicativo junto com os metadados associados. Todas as transações de gravação, incluindo atualizações e exclusões, são confirmadas primeiro no diário.

QLDBusa o diário para determinar o estado atual dos dados contábeis, materializando-os em tabelas consultáveis e definidas pelo usuário. Essas tabelas também fornecem um histórico acessível de todos os dados da transação, incluindo revisões de documentos e metadados. Além disso, o diário lida com simultaneidade, sequenciamento, verificação criptográfica e disponibilidade dos dados do ledger.

O diagrama a seguir ilustra a arquitetura do QLDB periódico.

Diagrama intituladoQLDB: o diário é o banco de dados, mostrando a arquitetura do diário, com um aplicativo que se conecta a um livro contábil e confirma transações no diário, que são materializadas em tabelas.
  • Neste exemplo, um aplicativo se conecta a um ledger e executa transações que inserem, atualizam e excluem um documento em uma tabela chamada cars.

  • Os dados são primeiro gravados no diário em ordem sequenciada.

  • Em seguida, os dados são materializados na tabela com visualizações integradas. Essas visualizações permitem que você consulte o estado atual e o histórico completo do carro, comum número de versão atribuído a cada revisão.

  • Você também pode exportar ou transmitir dados diretamente do diário.

Imutável

Como o QLDB diário é somente para anexar, ele mantém um registro completo de todas as alterações em seus dados que não podem ser modificadas ou sobrescritas. Não existem APIs ou outros métodos para alterar os dados confirmados. Essa estrutura de diário permite acessar e consultar o histórico completo do seu ledger.

nota

A única exceção à imutabilidade QLDB compatível é a redação de dados. Com esse recurso, você pode cumprir os estatutos regulatórios, como o Regulamento Geral de Proteção de Dados (GDPR) na União Europeia e a Lei de Privacidade do Consumidor da Califórnia (CCPA).

QLDBfornece uma operação de redação que permite excluir permanentemente revisões de documentos inativas no histórico de uma tabela. Essa operação exclui somente os dados do usuário na revisão especificada e deixa a sequência do diário e os metadados do documento inalterados. Isso mantém a integridade geral dos dados do seu ledger. Para ter mais informações, consulte Redigir revisões de documentos.

QLDBgrava um bloco no diário em uma transação. Cada bloco contém objetos de entrada que representam os documentos que você insere, atualiza e exclui, junto com as instruções que você executou para confirmá-las. Esses blocos são sequenciados e encadeados em hash para garantir a integridade dos dados.

O diagrama a seguir ilustra essa estrutura do diário.

Os registros intitulados do diagrama não podem ser alterados, mostrando a estrutura de diário imutável, somente anexadaQLDB, com o número de sequência de cada bloco de diário encadeado em hash.

O diagrama mostra que as transações são confirmadas no diário como blocos que são encadeados em hash para verificação. Cada bloco tem um número de sequência para especificar seu endereço.

Verificável criptograficamente

Os blocos de diário são sequenciados e encadeados com técnicas criptográficas de hashing, semelhantes às blockchains. QLDBusa a cadeia de hash do diário para fornecer integridade de dados transacionais usando um método de verificação criptográfica. Usando um resumo (um valor de hash que representa a cadeia de hash completa de um diário em um determinado momento) e uma prova de auditoria Merkle (um mecanismo que comprova a validade de qualquer nó em uma árvore de hash binária), você pode verificar se não houve alterações não intencionais em seus dados em qualquer momento.

O diagrama a seguir mostra um resumo que abrange toda a cadeia de hash de um diário em um determinado momento.

Diagrama intitulado encadeamento de hash usando SHA -256, mostrando um resumo cobrindo toda a cadeia de hash de um diário, com a estrutura de um bloco de diário contendo entradas que representam documentos Ion, instruções partiQL e metadados.

Neste diagrama, os blocos de diário são codificados usando a função hash criptográfica SHA -256 e são sequencialmente encadeados aos blocos subsequentes. Cada bloco contém entradas que incluem seus documentos de dados, metadados e as instruções partiQL executadas na transação.

Para ter mais informações, consulte Verificação de dados na Amazon QLDB.

SQL-semelhante e flexível em documentos

QLDBusa o PartiQL como sua linguagem de consulta e o Amazon Ion como seu modelo de dados orientado a documentos. O partiQL é uma linguagem de consulta de código aberto SQL compatível que foi estendida para funcionar com o Ion. Com o partiQL, você pode inserir, consultar e gerenciar seus dados com operadores conhecidosSQL. Quando você está consultando documentos simples, a sintaxe é a mesma usada SQL para consultar tabelas relacionais. Para saber mais sobre a QLDB implementação do partiQL, consulte o. Referência do Amazon QLDB PartiQL

Amazon Ion é um superconjunto de. JSON O Ion é um formato de dados de código aberto baseado em documentos que oferece a flexibilidade de armazenar e processar dados estruturados, semiestruturados e aninhados. Para saber mais sobre o Ion inQLDB, consulte Referência de formato de dados Amazon Ion na Amazon QLDB o.

Para uma comparação de alto nível dos principais componentes e recursos dos bancos de dados relacionais tradicionais versusQLDB, consulte. Do relacional ao ledger

Ferramentas de desenvolvedor de código aberto

Para simplificar o desenvolvimento de aplicativos, QLDB fornece drivers de código aberto em várias linguagens de programação. Você pode usar esses drivers para interagir com os dados API transacionais executando instruções partiQL em um livro contábil e processando os resultados dessas instruções. Para obter informações e tutoriais sobre as linguagens de driver atualmente suportadas, consulte Começando com o QLDB driver da Amazon.

O Amazon Ion também fornece bibliotecas de clientes que processam os dados do Ion para você. Para guias de desenvolvedores e exemplos de código de processamento de dados do Ion, consulte a documentação do Amazon Ion em GitHub.

Tecnologia sem servidor e altamente disponível

QLDBé totalmente gerenciado, sem servidor e altamente disponível. O serviço é escalado automaticamente para atender às demandas do seu aplicativo, e você não precisa provisionar instâncias ou capacidade. Várias cópias de seus dados são replicadas dentro de uma zona de disponibilidade e entre zonas de disponibilidade em uma Região da AWS.

Nível empresarial

QLDBas transações são totalmente compatíveis com as propriedades de atomicidade, consistência, isolamento e durabilidade (ACID). QLDBusa controle de simultaneidade otimista (OCC), e as transações operam com serialização total — o mais alto nível de isolamento. Isso significa que não há risco de ver leituras fantasmas, leituras sujas, distorção de gravação ou outros problemas de simultaneidade semelhantes. Para ter mais informações, consulte Modelo de QLDB concorrência da Amazon.