23 dépôts
Mechanisms for persisting client-side grid changes to remote servers via API helpers.
Distinct from Server-Side Data Management: Existing candidates focus on server-side rendering/prefetching or database-level management, not the bidirectional sync of grid state.
Explore 23 awesome GitHub repositories matching data & databases · Client-Server Data Synchronization. Refine with filters or upvote what's useful.
IPFS is a peer-to-peer hypermedia protocol and content-addressed storage system that identifies data by cryptographic hashes rather than network locations. It enables the creation of a decentralized web by organizing files and directories as directed acyclic graphs of linked content identifiers. The project differentiates itself through the use of a distributed hash table for locating peers and a system of signed records to map human-readable names to changing content. It also provides HTTP gateways that translate standard web requests into peer-to-peer queries, allowing decentralized data to
IPFS manages a global set of pinned data by replicating and tracking files across multiple peers.
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.
deepstream.io is an open-source realtime server that synchronizes JSON records, events, and remote procedure calls across clients and backend services. It functions as a realtime data sync server, event pub/sub server, record database server, and RPC server, all within a single platform. The server authenticates and authorizes every message using multiple strategies including JWT, HTTP, and file-based credentials, with a declarative permission language controlling access to records, events, and RPCs at a granular level. The platform distinguishes itself through its combination of realtime dat
Synchronizes JSON records, events, and remote procedure calls across clients and backend services in real time.
This project is a JavaScript spreadsheet component and web-based data table that provides an interactive grid for managing tabular data. It functions as a cross-framework UI component compatible with React, Vue, and jQuery, and can also be embedded as a standalone web component. The grid is specifically designed for XLSX interoperability, allowing users to import and export XLSX files while preserving formulas and styles. It distinguishes itself through real-time collaboration for simultaneous multi-user editing and a flexible system for creating custom cell editors and specialized column typ
Updates remote servers using JSON helpers to ensure grid changes are persisted externally.
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 nodes to ensure continuous availability and automatic recovery.
Automatically synchronizes marked variables from server to all clients with minimal code.
Taskwarrior is a command-line task manager that lets you create, modify, filter, and complete to-do items directly from the terminal. It stores all tasks in a single plain-text file for portability and manual editing, and includes a custom expression language for selecting tasks by status, priority, tags, and date ranges. The tool distinguishes itself through several integrated capabilities. It computes a numeric urgency score for each task based on weighted factors like age, tags, and due date to determine ordering. A recurrence template engine generates new task instances from a template af
Ships a built-in sync server that keeps task lists consistent across multiple machines.
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.
Derby est un framework MVC isomorphe et un moteur de synchronisation de données en temps réel conçu pour créer des applications collaboratives. Il fonctionne comme une bibliothèque de liaison de données bidirectionnelle et un moteur de template qui partage une base de code unique entre Node.js et le navigateur pour synchroniser l'état entre les clients et les serveurs. Le framework se distingue par l'utilisation de la transformation opérationnelle pour résoudre automatiquement les conflits de données, permettant l'édition partagée en temps réel et la collaboration multi-utilisateurs. Il emploie un modèle de mutation d'état différentiel pour minimiser les mises à jour en effectuant des vérifications d'égalité profonde, garantissant que seules les valeurs modifiées sont propagées. La plateforme couvre un large éventail de capacités, incluant la gestion d'état réactive, le routage isomorphe et le développement de composants d'interface modulaires. Elle fournit des outils pour gérer les chemins de données imbriqués, exécuter le rendu isomorphe pour des chargements initiaux rapides et s'intégrer avec des middlewares serveur. Le système est implémenté en utilisant TypeScript.
Synchronizes specific data subsets to a server and other clients based on the collection naming prefix.
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.
Helios is a mobile backend as a service providing a server-side platform to manage user accounts, push notifications, and data synchronization for mobile applications. It functions as a REST API framework that automatically generates database tables and standard web service endpoints from defined data models. The project implements specialized services for the Apple ecosystem, including a Passbook service for managing digital passes and device registration. It also provides an in-app purchase verification service to decode purchase receipts and validate product identifiers through external ve
Synchronizes server storage with client data stacks by managing attribute faults and write operations.
Riak est un magasin clé-valeur NoSQL décentralisé conçu pour la haute disponibilité et la tolérance aux pannes. C'est une base de données distribuée de type Dynamo qui utilise le hachage cohérent et la cohérence éventuelle pour mettre à l'échelle les données sur un cluster de nœuds. Le système fonctionne comme un datastore géo-répliqué, synchronisant les données sur plusieurs emplacements physiques pour assurer la reprise après sinistre et maintenir la disponibilité lors de pannes régionales. Il emploie un modèle de réplication multi-maître, permettant des écritures sur n'importe quel nœud du cluster. La plateforme couvre de larges domaines de capacités, notamment la coordination de cluster décentralisée, la gestion de données à haute disponibilité et l'expiration de données à grande échelle. Elle gère la durabilité des données grâce à une cohérence basée sur le quorum et une vérification d'écriture, tout en utilisant des structures de données spécialisées pour fusionner automatiquement les mises à jour simultanées.
Synchronizes data across multiple physical locations to ensure disaster recovery and low-latency access through geographic distribution.
SyncClipboard is a cross-platform synchronization service and server designed to share clipboard content and history across multiple devices. It utilizes a central server and a REST-based API to facilitate the exchange of data between custom client implementations. The system features a self-hosted synchronization server and a command-line interface for controlling clipboard data and executing application commands via the terminal. It includes an image format converter that downloads original source files and transforms modern image formats into compatible types to ensure successful pasting a
Implements a client-server model to manage data synchronization and state consistency across multiple devices.