13 dépôts
Mechanisms for synchronizing and replicating data across multiple cluster nodes to ensure consistency.
Distinct from Core Data Sync Servers: Focuses on cluster-wide data replication using quorums, rather than client-server synchronization for specific frameworks like Core Data.
Explore 13 awesome GitHub repositories matching data & databases · Distributed Data Replication. 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
Synchronizes and replicates data across multiple cluster nodes and servers to ensure high availability and prevent data loss.
Rook is a Kubernetes storage orchestrator and distributed storage operator that automates the deployment and management of storage clusters. It serves as a multi-protocol storage provider, offering block, file, and object storage capabilities to containerized workloads. The system focuses on providing a self-healing storage cluster that replicates data across hardware nodes to maintain availability and recover from failures. It uses an operator-led model to handle the installation, scaling, and upgrades of storage nodes and daemons. The orchestrator covers a broad range of provisioning servi
Replicates data across multiple hardware nodes to ensure consistency and prevent data loss during failures.
FastDFS is a distributed file system and object store designed as a high-capacity file server. It functions as a cluster storage manager that saves, syncs, and accesses large volumes of unstructured data across a network of distributed servers. The system uses unique identifiers for file retrieval and indexing instead of traditional hierarchical naming to avoid metadata bottlenecks. It manages file attributes through key-value metadata mapping and employs a distributed replication model to ensure high availability and data redundancy across storage groups. The project provides capabilities f
Synchronizes and replicates files across multiple cluster nodes to ensure high availability and prevent data loss.
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Distributes copies of data partitions across different cluster members to ensure continuous availability.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Mentions storing file copies across servers for fault tolerance as a conceptual topic.
Fluvio est une plateforme de streaming d'événements distribuée et un moteur de streaming cloud-native conçu pour collecter, persister et répliquer des flux de données en temps réel à travers un cluster distribué. Il fonctionne comme un pipeline de données temps réel pour construire des workflows avec état qui ingèrent, enrichissent et exportent des données entre des sources et des destinations externes. La plateforme se distingue par son utilisation de WebAssembly pour exécuter des modules compilés pour des transformations et filtrages de données en ligne. Cela permet l'exécution d'une logique métier personnalisée pour remodeler l'information en mouvement sans nécessiter de redémarrage du cluster. Le système couvre un large éventail de capacités, incluant l'ingestion de données basée sur des connecteurs depuis des protocoles externes, un stockage immuable structuré en logs avec E/S zéro-copie, et une mise à l'échelle horizontale du cluster. Il prend en charge la création de pipelines complexes pilotés par les événements qui utilisent le traitement avec état, les agrégations par fenêtrage et la distribution de données basée sur les partitions. Le moteur peut être déployé comme un binaire léger sur diverses architectures système, y compris des appareils IoT ARM64 pour le traitement de données en périphérie (edge).
Distributes data partition copies across nodes with automated leader election for continuous availability.
GlusterFS est un système de fichiers distribué défini par logiciel et un cluster de stockage scale-out qui agrège les ressources disque de plusieurs serveurs en un seul espace de noms global. Il fonctionne comme une plateforme de stockage unifiée, permettant aux mêmes données sous-jacentes d'être exposées via des interfaces de stockage de fichiers, de blocs et d'objets. Le système se distingue par une architecture décentralisée qui utilise le hachage cohérent pour distribuer les fichiers sur les nœuds réseau sans serveur de métadonnées central. Il garantit l'intégrité et la disponibilité des données en utilisant la réplication auto-réparatrice, la cohérence basée sur le quorum pour éviter les scénarios de split-brain, et la géo-réplication asynchrone pour la reprise après sinistre sur des sites géographiques distants. La plateforme offre une large couverture de capacités via l'exportation de stockage multi-protocoles via NFS, Samba et iSCSI, ainsi qu'une gestion complète des volumes incluant des snapshots point-in-time, des quotas de stockage et une expansion élastique de la capacité. La sécurité est gérée via le chiffrement TLS pour les données en transit, l'intégration de la gestion des identités et un contrôle d'accès POSIX granulaire. Le logiciel est disponible sous forme de paquets binaires via des dépôts communautaires pour diverses distributions Linux.
Copies data across multiple servers to ensure high availability and protection against hardware failure.
m3 est une base de données de séries temporelles distribuée conçue pour les métriques haute résolution et la gestion de données à haute cardinalité. Elle fonctionne comme un système de stockage évolutif et un moteur de requête multi-cluster, fournissant un agrégateur de métriques distribué capable de sous-échantillonner et de résumer les données avant qu'elles ne soient validées dans le stockage. Le projet se distingue par un modèle de cluster coordonné utilisant etcd pour l'appartenance aux nœuds et le placement des shards. Il prend en charge plusieurs protocoles d'ingestion, notamment le protocole d'écriture à distance Prometheus, le protocole InfluxDB line et le protocole Graphite Carbon en texte brut, et fournit des interfaces de requête compatibles pour PromQL et Graphite. Le système couvre de larges domaines de capacités, notamment le stockage de séries temporelles en colonnes, la réplication synchrone des données et le fan-out de requêtes distribuées. Il intègre l'automatisation du cycle de vie des données, le réglage de la cohérence basé sur le quorum et l'indexation des séries basée sur les tags pour maintenir l'intégrité des données et la vitesse de récupération à travers des espaces de noms isolés. L'orchestration du cluster et le placement des composants sont gérés via des outils automatisés et des opérateurs pour assurer une haute disponibilité et une distribution équilibrée des données.
Synchronizes and replicates data across cluster nodes using configurable consistency levels for fault tolerance.
Iggy est une plateforme de streaming de messages distribuée et un courtier de messages multi-protocole qui fonctionne comme un magasin de journaux distribué persistant. Il fournit une infrastructure pour publier et consommer des messages binaires en utilisant un journal en ajout seul (append-only log), garantissant une haute disponibilité et une cohérence des données entre les nœuds via la réplication Viewstamped. La plateforme se distingue par son infrastructure de streaming LLM spécialisée, qui utilise un protocole serveur pour connecter les grands modèles de langage aux données en streaming et aux contrôles système. Cela inclut des protocoles standardisés pour la gestion du contexte et le pontage de données via HTTP ou l'entrée-sortie standard. Le système couvre un large éventail de capacités, y compris l'orchestration de pipelines de données avec des plugins de source et de destination modulaires, la coordination de groupes de consommateurs pour la mise à l'échelle horizontale et la prise en charge du transport multi-protocole via TCP, QUIC, HTTP et WebSocket. Il intègre également des primitives de sécurité telles que le chiffrement AES-256-GCM pour les données au repos et en transit, et fournit une observabilité via les métriques Prometheus, le traçage OpenTelemetry et un tableau de bord web opérationnel. Le serveur peut être déployé en utilisant des images de conteneur et orchestré via Kubernetes.
Synchronizes and replicates data across multiple cluster nodes using Viewstamped Replication for high availability.
Dynomite is a distributed data sharding layer and key-value storage engine proxy. It functions as a distribution layer that shards and replicates data across multiple nodes, transforming single-server datastores into scalable peer-to-peer systems. The system acts as a multi-datacenter data replicator, synchronizing data between different geographical locations to ensure resilience and high availability during site failures. It manages the distribution of key-value data to enable linear datastore scaling and redundant storage. The project provides capabilities for storage engine sharding and
Replicates data across multiple cluster nodes to create redundancy and ensure consistency.
go-fastdfs est un système de fichiers distribué et un serveur de stockage d'objets conçu pour construire un cloud privé. Il fournit une implémentation de stockage compatible avec FastDFS qui gère des clusters de nœuds de stockage pour traiter les téléchargements et envois de fichiers à grande échelle. Le système se concentre sur la haute disponibilité grâce à une architecture décentralisée qui synchronise automatiquement les données et répare les pannes sur plusieurs machines sans coordinateur central. Il prend spécifiquement en charge le stockage de fichiers avec reprise via HTTP, permettant aux transferts volumineux d'être mis en pause et repris à partir du dernier octet réussi pour gérer l'instabilité du réseau. Les capacités principales incluent l'optimisation des ressources de stockage via la déduplication de contenu basée sur SHA1 et la fusion de petits fichiers pour réduire la consommation d'inodes du système de fichiers. Le projet intègre également un pipeline de traitement d'images qui effectue une mise à l'échelle et un redimensionnement dynamiques des images pendant le processus de téléchargement et sécurise l'accès aux fichiers via une authentification par jeton. Le système peut être déployé via des conteneurs Docker.
Replicates files across multiple machines using a decentralized architecture to ensure consistency without a central coordinator.
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
Ensures data availability and consistency across the cluster using quorum-based replication.
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
Uses conflict-free replicated data types to synchronize state and maintain consistency across distributed nodes.