Kanonisches Unternehmen
Die Bibliothek ist ein Add-on zur bestehenden SQLite-Codebasis, das Netzwerkprotokollunterstützung für die Verbindung mehrerer Instanzen einer Anwendung hinzufügt, die auf verschiedenen Hosts ausgeführt wird. Eine mit Dqlite kompilierte Anwendung kann als eigenständiger fehlertoleranter Cluster fungieren, unabhängig von externen DBMS. In der Praxis wird Dqlite von Canonical in seinem Container-Management-System verwendet
Um die Konsistenz bei der Datenreplikation sicherzustellen, wird eine algorithmusbasierte Konsensmethode verwendet
Im Vergleich zu einem ähnlichen Projekt
Funktionen von Dqlite:
- Führen Sie alle Festplatten- und Netzwerkvorgänge asynchron aus;
- Verfügbarkeit eines Testsatzes zur Bestätigung der Richtigkeit der Daten;
- Geringer Speicherverbrauch und effizienter Datenaustausch über das Netzwerk;
- Permanente Speicherung der Datenbank und des Transaktionsprotokolls auf der Festplatte (mit der Möglichkeit der Zwischenspeicherung im Speicher);
- Schnelle Wiederherstellung nach Ausfällen;
- Stabiler CLI-Client in der Go-Sprache, der zum Initialisieren der Datenbank, zum Konfigurieren der Replikation und zum Verbinden/Trennen von Knoten verwendet werden kann;
- Unterstützt ARM-, X86-, POWER- und IBM Z-Architekturen;
- Die Implementierung des Raft-Algorithmus ist optimiert, um Verzögerungen beim Festschreiben von Transaktionen zu minimieren.
Source: opennet.ru