11 Repos
Ensures data consistency by requiring a minimum number of replica acknowledgments for read and write operations.
Distinct from Read-Write Splitting: None of the candidates cover distributed consensus or quorum logic; they focus on ACLs, sharding, or routing.
Explore 11 awesome GitHub repositories matching data & databases · Quorum-Based Consistency. Refine with filters or upvote what's useful.
FoundationDB is an ACID-compliant distributed transactional key-value store. It functions as a scalable database engine that ensures strict serializability and data consistency across a cluster of servers using a shared-nothing architecture. The system is distinguished by its multi-region replication capabilities, allowing data to be synchronized across different datacenters for high availability and disaster recovery. It utilizes optimistic concurrency control to manage distributed transactions and employs a majority-based coordination system to maintain cluster state. The platform provides
Maintains cluster state and consistency by requiring a quorum of nodes for configuration updates.
Algodeck is an open-source collection of flash cards designed for reviewing algorithms, data structures, and system design concepts, specifically curated for technical interview preparation. The project organizes knowledge into atomic question-and-answer pairs and incorporates spaced repetition scheduling to optimize long-term memory retention. The flash card catalog covers a broad range of computer science topics, including classic sorting algorithms like quicksort and mergesort, data structure operations for arrays, trees, heaps, tries, and graphs, as well as bit manipulation techniques for
Explains quorum voting mechanisms requiring majority node approval for operations.
Dragonboat ist eine Go-Implementierung des Raft-Konsensprotokolls, die darauf ausgelegt ist, einen konsistenten Status über einen verteilten Cluster von Knoten hinweg aufrechtzuerhalten. Sie bietet eine Bibliothek zum Aufbau verteilter Zustandsautomaten, die Datenintegrität und Fehlertoleranz bei Systemausfällen gewährleisten. Das Projekt zeichnet sich durch eine Multi-Group-Raft-Implementierung aus, die Daten über unabhängige Konsensgruppen partitioniert, um Arbeitslasten zu verteilen und die gesamte Verarbeitungskapazität des Systems zu erhöhen. Es integriert zudem gegenseitiges TLS (mTLS), um die Kommunikation zwischen Knoten zu verschlüsseln und die Identität von Clustermitgliedern zu verifizieren. Das System umfasst Funktionen für hochperformante Zustandsautomaten mit Unterstützung für Speicher- und Festplattenpersistenz. Es bietet Optimierungen für den Read-Path, um Konsistenz ohne Generierung neuer Log-Einträge zu gewährleisten, ein pluggbares Speicher-Interface für benutzerdefinierte Log-Backends sowie administrative Tools für die Quorum-Wiederherstellung, um die Verfügbarkeit nach einem permanenten Verlust der Knotenmehrheit wiederherzustellen. Die operative Stabilität wird durch den Export von Cluster-Gesundheitsmetriken unterstützt.
Provides administrative tooling to restore cluster availability by manually reconfiguring membership after a permanent majority loss.
GlusterFS ist ein softwaredefiniertes verteiltes Dateisystem und Scale-Out-Storage-Cluster, das Festplattenressourcen von mehreren Servern in einem einzigen globalen Namensraum aggregiert. Es fungiert als vereinheitlichte Speicherplattform, die es ermöglicht, dieselben zugrunde liegenden Daten über Datei-, Block- und Objektspeicherschnittstellen bereitzustellen. Das System zeichnet sich durch eine dezentrale Architektur aus, die konsistentes Hashing verwendet, um Dateien über Netzwerkknoten hinweg ohne zentralen Metadaten-Server zu verteilen. Es stellt Datenintegrität und -verfügbarkeit durch selbstheilende Replikation, Quorum-basierte Konsistenz zur Vermeidung von Split-Brain-Szenarien sowie asynchrone Geo-Replikation für die Notfallwiederherstellung über entfernte geografische Standorte hinweg sicher. Die Plattform bietet eine breite Abdeckung von Funktionen über Multi-Protokoll-Speicherexport via NFS, Samba und iSCSI sowie umfassende Volume-Verwaltung, einschließlich Point-in-Time-Snapshots, Speicherkontingenten und elastischer Kapazitätserweiterung. Die Sicherheit wird durch TLS-Verschlüsselung für Daten während der Übertragung, Identitätsmanagement-Integration und granulare POSIX-Zugriffskontrolle gehandhabt. Die Software ist als Binärpakete über Community-Repositories für verschiedene Linux-Distributionen verfügbar.
Prevents data divergence and split-brain scenarios by requiring a minimum number of active nodes before allowing write operations.
m3 ist eine verteilte Zeitreihendatenbank, die für hochauflösende Metriken und die Verwaltung von Daten mit hoher Kardinalität entwickelt wurde. Sie fungiert als skalierbares Speichersystem und Multi-Cluster-Query-Engine und bietet einen verteilten Metrik-Aggregator, der Daten vor dem Speichern downsamplen und zusammenfassen kann. Das Projekt zeichnet sich durch ein koordiniertes Clustermodell aus, das etcd für die Knotenmitgliedschaft und Shard-Platzierung nutzt. Es unterstützt mehrere Ingestion-Protokolle, einschließlich des Prometheus-Remote-Write-Protokolls, des InfluxDB-Line-Protokolls und des Graphite-Carbon-Plaintext-Protokolls, und bietet kompatible Query-Schnittstellen für PromQL und Graphite. Das System deckt breite Funktionsbereiche ab, einschließlich spaltenorientierter Zeitreihenspeicherung, synchroner Datenreplikation und verteiltem Query-Fan-out. Es integriert Daten-Lifecycle-Automatisierung, Quorum-basiertes Konsistenz-Tuning und Tag-basierte Serienindizierung, um Datenintegrität und Abfragegeschwindigkeit über isolierte Namespaces hinweg aufrechtzuerhalten. Cluster-Orchestrierung und Komponentenplatzierung werden durch automatisierte Tools und Operatoren verwaltet, um hohe Verfügbarkeit und eine ausgewogene Datenverteilung sicherzustellen.
Uses quorum-based consistency levels to maintain data integrity across distributed replicas.
Blitzar ist eine verifizierbare SQL-Proof-Engine und kryptografische Bibliothek, die für verifizierbare SQL-Berechnungen entwickelt wurde. Sie ermöglicht die Ausführung von Datenbankabfragen off-chain, während Zero-Knowledge-Proofs generiert werden, die die Korrektheit der Ergebnisse für die on-chain-Verifizierung zertifizieren. Das Projekt zeichnet sich durch einen GPU-beschleunigten Proof-Accelerator aus, der rechenintensive kryptografische Workloads auf Grafikprozessoren auslagert und so die für die Generierung prägnanter Proofs erforderliche Zeit reduziert. Es bietet hochperformante kryptografische Primitive für C++- und Rust-Anwendungen, mit Fokus auf elliptische Kurvenoperationen und Multi-Skalar-Multiplikation. Das System deckt eine breite Fläche an Datenmanagement und Sicherheit ab, einschließlich trustless Datenintegration, die Blockchain-Indizierung mit off-chain-Datensätzen zu manipulationssicheren relationalen Tabellen kombiniert. Es nutzt BFT-Konsens und Threshold-Signaturen zur Aufrechterhaltung der Statusintegrität, neben Mechanismen für Quorum-basierte Datensynchronisation und verifizierte Ergebniszustellung via Smart-Contract-Callbacks. Die Codebasis bietet native Bindings für C++ und Rust, um ihre kryptografischen Toolsets und Proof-Berechnungsbibliotheken offenzulegen.
Transforms blockchain events into relational rows by requiring a quorum of independent indexers to agree.
Redsync ist ein verteilter Lock-Manager und eine Go-Redis-Client-Erweiterung, die für den exklusiven Zugriff auf gemeinsam genutzte Ressourcen entwickelt wurde. Sie implementiert gegenseitigen Ausschluss (Mutual Exclusion) über mehrere Prozesse hinweg, indem sie ein Redis-Backend zur Koordinierung der Synchronisation nutzt und Race Conditions in verteilten Umgebungen verhindert. Die Bibliothek stellt die Gültigkeit von Locks durch einen quorum-basierten Konsens sicher, der erfolgreiche Schreibvorgänge auf einer Mehrheit unabhängiger Redis-Knoten erfordert. Sie verwendet Lua-skriptbasierte atomare Operationen für das Sperren und Freigeben, während sie wertbasierte Eigentumsvalidierung und Time-to-Live-Ablaufzeiten einsetzt, um Deadlocks zu vermeiden. Das Projekt bietet Funktionen für verteilte Koordinierung und Anwendungssynchronisation und nutzt clientseitiges Retry-Polling, um Timeouts bei der Ressourcenbeschaffung zu verwalten.
Ensures lock validity by requiring a majority of independent Redis nodes to approve the acquisition via quorum voting.
Riak ist ein dezentraler NoSQL-Key-Value-Store, der für hohe Verfügbarkeit und Fehlertoleranz entwickelt wurde. Es handelt sich um eine verteilte Datenbank im Dynamo-Stil, die konsistentes Hashing und Eventual Consistency nutzt, um Daten über einen Cluster von Knoten zu skalieren. Das System fungiert als geo-replizierter Datenspeicher, der Daten über mehrere physische Standorte hinweg synchronisiert, um Disaster Recovery zu ermöglichen und die Verfügbarkeit bei regionalen Ausfällen aufrechtzuerhalten. Es verwendet ein Multi-Master-Replikationsmodell, das Schreibvorgänge auf jedem Knoten im Cluster erlaubt. Die Plattform deckt breite Funktionsbereiche ab, einschließlich dezentraler Cluster-Koordinierung, hochverfügbarer Datenverwaltung und großskaliger Datenablaufsteuerung. Sie verwaltet die Datenbeständigkeit durch quorum-basierte Konsistenz und Schreibverifizierung, während sie spezialisierte Datenstrukturen verwendet, um gleichzeitige Updates automatisch zusammenzuführen.
Ensures data durability and consistency by requiring a minimum number of node acknowledgments for operations.
sofa-jraft is a Java implementation of the Raft consensus algorithm. It serves as a distributed consensus engine and linearizable state machine designed to ensure high availability and data consistency across a cluster of nodes. The project provides a replicated key-value store and a coordination engine for managing distributed state. It distinguishes itself through support for multi-group consensus sharding to distribute traffic and a service provider interface that allows for custom log storage and entry encoding implementations. The system covers a wide range of distributed capabilities,
Provides administrative mechanisms to manually rebuild a cluster when a quorum is permanently lost.
Olric is a distributed data grid and in-memory key-value store that partitions and replicates data across a cluster of servers. It serves as a shared memory system for managing distributed maps, performing atomic operations, and acting as an in-memory data cache. The system provides a distributed locking mechanism for concurrency control and a pub-sub messaging system that broadcasts and routes messages over named channels across the cluster. The platform covers wide-ranging capabilities including cluster management and orchestration, data replication with configurable quorums, and automated
Requires a minimum number of successful replica operations before returning a result to the client.
Garage is a distributed object storage system that provides an S3-compatible API gateway. It is designed to synchronize metadata across distributed nodes using conflict-free replicated data types and Merkle-tree state alignment to maintain cluster-wide consistency. The system ensures data resilience through zone-aware replication, distributing data copies across multiple physical locations. It employs quorum-based request routing and versioned layout management to validate and commit cluster configuration changes. The project covers a broad range of operational capabilities, including automa
Ensures data integrity by requiring a quorum of replica acknowledgments for routing and resolving object requests.