O DBMS immudb 1.0 foi publicado, fornecendo proteção contra corrupção de dados

Foi introduzida uma versão significativa do SGBD immudb 1.0, garantindo a imutabilidade e preservação de todos os dados já adicionados, além de fornecer proteção contra alterações retroativas e fornecer a capacidade de comprovação criptográfica da propriedade dos dados. Inicialmente, o projeto foi desenvolvido como um armazenamento NoSQL especializado que manipula dados no formato chave/valor, mas a partir da versão 1.0 o immudb está posicionado como um SGBD completo com suporte SQL. O código do projeto é escrito em Go e distribuído sob a licença Apache 2.0.

As informações no immudb são armazenadas por meio de uma estrutura tipo blockchain que garante a integridade de toda a cadeia de registros existentes e não permite alterar dados já armazenados ou substituir/inserir uma entrada no histórico de transações. O armazenamento suporta apenas a adição de novos dados, sem a capacidade de excluir ou alterar informações já adicionadas. Uma tentativa de alterar registros no SGBD apenas leva ao salvamento de uma nova versão do registro; os dados antigos não são perdidos e permanecem disponíveis no histórico de alterações.

Além disso, ao contrário das soluções típicas baseadas em blockchain, o immudb permite atingir desempenho no nível de milhões de transações por segundo e pode ser usado para lançar serviços leves ou para incorporar sua funcionalidade em aplicativos na forma de uma biblioteca.

O DBMS immudb 1.0 foi publicado, fornecendo proteção contra corrupção de dados

O alto desempenho é alcançado através do uso de uma árvore LSM (Log-structured merge-tree) com log de valores, que fornece acesso rápido aos registros com alta intensidade de adição de dados. Para manter a integridade do armazenamento, uma estrutura de árvore chamada Árvore Merkle é usada adicionalmente, na qual cada ramificação verifica todas as ramificações e nós subjacentes graças ao hashing conjunto (árvore). Tendo o hash final, o usuário pode verificar a exatidão de todo o histórico de operações, bem como a exatidão dos estados anteriores do banco de dados (o hash de verificação raiz do novo estado do banco de dados é calculado levando em consideração o estado passado ).

Clientes e auditores recebem prova criptográfica de propriedade e integridade dos dados. O uso de criptografia de chave pública não exige que o cliente confie no servidor, e conectar cada novo cliente ao SGBD aumenta o nível geral de confiança em todo o armazenamento. As chaves públicas e as listas de chaves revogadas são armazenadas no banco de dados, e os enclaves Intel SGX podem ser usados ​​ao executar operações de criptografia.

Entre as funcionalidades do SGBD, suporte SQL, modo de armazenamento de chave/valor, índices, segmentação de banco de dados (sharding), criação de snapshots de estado de dados, transações ACID com suporte para isolamento de snapshot (SSI), alto desempenho de leitura e gravação, otimizações para são mencionados operação eficiente em drives SSD, suporte para trabalho na forma de servidor e biblioteca embarcada, suporte para API REST e presença de interface web para gerenciamento. As aplicações típicas nas quais SGBDs como o immudb são solicitados incluem transações de cartão de crédito, armazenamento de chaves públicas, certificados digitais, somas de verificação e logs e criação de armazenamento de backup para campos importantes em SGBDs tradicionais. Bibliotecas cliente para trabalhar com immudb estão preparadas para Go, Java, .NET, Python e Node.js.

Principais melhorias na versão immudb 1.0:

  • Suporte SQL com a capacidade de proteger linhas contra modificações ocultas.
  • Modo TimeTravel, que permite mudar o estado do banco de dados para um determinado ponto no passado. Em particular, o tempo de corte de dados pode ser definido no nível de subconsultas individuais, o que simplifica a análise de alterações e a comparação de dados.
  • Suporte para o protocolo cliente PostgreSQL, que permite usar aplicativos e bibliotecas existentes projetadas para funcionar com PostgreSQL com imudb. Além das bibliotecas clientes nativas, você pode usar bibliotecas clientes padrão Ruby, C, JDBC, PHP e Perl.
  • Web Console para navegação interativa de dados e administração de SGBD. Através da interface web você pode enviar solicitações, criar usuários e gerenciar dados. Além disso, o ambiente de aprendizagem Playground está disponível.
    O DBMS immudb 1.0 foi publicado, fornecendo proteção contra corrupção de dados
    O DBMS immudb 1.0 foi publicado, fornecendo proteção contra corrupção de dados


    Fonte: opennet.ru

Adicionar um comentário