Canônico
A biblioteca é um complemento à base de código SQLite existente que adiciona suporte a protocolo de rede para interconectar múltiplas instâncias de um aplicativo em execução em diferentes hosts. Uma aplicação compilada com Dqlite pode funcionar como um cluster autossuficiente e tolerante a falhas, independente de SGBDs externos. Na prática, Dqlite é utilizado pela Canonical em seu sistema de gerenciamento de containers
Para garantir consistência na replicação de dados, é usado um método de consenso baseado em algoritmo
Comparado com um projeto semelhante
Recursos do Dqlite:
- Execute todas as operações de disco e rede de forma assíncrona;
- Disponibilidade de um conjunto de testes para confirmar a exatidão dos dados;
- Baixo consumo de memória e troca eficiente de dados pela rede;
- Armazenamento permanente da base de dados e log de transações em disco (com possibilidade de cache na memória);
- Recuperação rápida de falhas;
- Cliente CLI estável em linguagem Go, que pode ser utilizado para inicializar o banco de dados, configurar replicação e conectar/desconectar nós;
- Suporta arquiteturas ARM, X86, POWER e IBM Z;
- A implementação do algoritmo Raft é otimizada para minimizar atrasos na confirmação de transações.
Fonte: opennet.ru