23 repositorios
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 es una plataforma de streaming de eventos distribuida y motor de streaming nativo de la nube, diseñado para recopilar, persistir y replicar flujos de datos en tiempo real a través de un clúster distribuido. Funciona como un pipeline de datos en tiempo real para construir flujos de trabajo con estado que ingieren, enriquecen y exportan datos entre fuentes y destinos externos. La plataforma se distingue por su uso de WebAssembly para ejecutar módulos compilados para transformaciones y filtrado de datos en línea. Esto permite la ejecución de lógica de negocio personalizada para remodelar la información en movimiento sin requerir un reinicio del clúster. El sistema cubre una amplia gama de capacidades, incluyendo ingesta de datos basada en conectores desde protocolos externos, almacenamiento inmutable estructurado en registros con E/S de copia cero y escalado horizontal del clúster. Admite la creación de pipelines complejos basados en eventos que utilizan procesamiento con estado, agregaciones en ventanas y distribución de datos basada en particiones. El motor puede desplegarse como un binario ligero en diversas arquitecturas de sistema, incluyendo dispositivos IoT ARM64 para procesamiento de datos en el borde (edge).
Distributes data partition copies across nodes with automated leader election for continuous availability.
GlusterFS es un sistema de archivos distribuido definido por software y un clúster de almacenamiento escalable que agrega recursos de disco de múltiples servidores en un único espacio de nombres global. Funciona como una plataforma de almacenamiento unificada, permitiendo que los mismos datos subyacentes se expongan a través de interfaces de almacenamiento de archivos, bloques y objetos. El sistema se distingue por una arquitectura descentralizada que utiliza hashing consistente para distribuir archivos a través de nodos de red sin un servidor de metadatos central. Asegura la integridad y disponibilidad de los datos utilizando replicación de autocuración, consistencia basada en quórum para evitar escenarios de split-brain y georeplicación asíncrona para recuperación ante desastres en sitios geográficos distantes. La plataforma proporciona una amplia cobertura de capacidades a través de exportación de almacenamiento multiprotocolo vía NFS, Samba e iSCSI, así como una gestión integral de volúmenes que incluye instantáneas puntuales, cuotas de almacenamiento y expansión elástica de capacidad. La seguridad se maneja a través de cifrado TLS para datos en tránsito, integración de gestión de identidad y control de acceso POSIX granular. El software está disponible como paquetes binarios a través de repositorios comunitarios para varias distribuciones de Linux.
Copies data across multiple servers to ensure high availability and protection against hardware failure.
m3 es una base de datos de series temporales distribuida, diseñada para métricas de alta resolución y gestión de datos de alta cardinalidad. Funciona como un sistema de almacenamiento escalable y un motor de consultas multiclúster, proporcionando un agregador de métricas distribuido capaz de realizar downsampling y resumir datos antes de que se confirmen en el almacenamiento. El proyecto se distingue por un modelo de clúster coordinado que utiliza etcd para la pertenencia a nodos y la colocación de shards. Soporta múltiples protocolos de ingesta, incluyendo el protocolo de escritura remota de Prometheus, el protocolo de línea de InfluxDB y el protocolo de texto plano de Graphite Carbon, y proporciona interfaces de consulta compatibles para PromQL y Graphite. El sistema cubre amplias áreas de capacidad, incluyendo almacenamiento de series temporales en columnas, replicación de datos síncrona y distribución de consultas (fan-out) distribuida. Incorpora automatización del ciclo de vida de los datos, ajuste de consistencia basado en quórum e indexación de series basada en etiquetas para mantener la integridad de los datos y la velocidad de recuperación en espacios de nombres aislados. La orquestación del clúster y la colocación de componentes se gestionan mediante herramientas y operadores automatizados para garantizar la alta disponibilidad y una distribución equilibrada de los datos.
Synchronizes and replicates data across cluster nodes using configurable consistency levels for fault tolerance.
Derby es un framework MVC isomórfico y motor de sincronización de datos en tiempo real diseñado para construir aplicaciones colaborativas. Funciona como una librería de enlace de datos bidireccional y motor de plantillas que comparte una única base de código entre Node.js y el navegador para sincronizar el estado entre clientes y servidores. El framework se distingue por el uso de transformación operacional para resolver conflictos de datos automáticamente, permitiendo la edición compartida en tiempo real y la colaboración multiusuario. Emplea un modelo de mutación de estado diferencial para minimizar las actualizaciones realizando comprobaciones de igualdad profunda, asegurando que solo se propaguen los valores modificados. La plataforma cubre una amplia gama de capacidades, incluyendo gestión de estado reactiva, enrutamiento isomórfico y desarrollo de componentes de UI modulares. Proporciona herramientas para gestionar rutas de datos anidadas, ejecutar renderizado isomórfico para cargas iniciales rápidas e integrar con middleware de servidor. El sistema está implementado utilizando TypeScript.
Synchronizes specific data subsets to a server and other clients based on the collection naming prefix.
Iggy es una plataforma de streaming de mensajes distribuida y un broker de mensajes multiprotocolo que funciona como un almacén de registros distribuidos persistente. Proporciona infraestructura para publicar y consumir mensajes binarios utilizando un registro de solo adición (append-only log), asegurando alta disponibilidad y consistencia de datos entre nodos mediante Viewstamped Replication. La plataforma se distingue por su infraestructura de streaming para LLM, que utiliza un protocolo de servidor para conectar modelos de lenguaje grandes a datos de streaming y controles del sistema. Esto incluye protocolos estandarizados para la gestión de contexto y el puente de datos mediante HTTP o entrada/salida estándar. El sistema cubre un amplio conjunto de capacidades, incluyendo la orquestación de pipelines de datos con plugins modulares de origen y destino, coordinación de grupos de consumidores para escalado horizontal y soporte de transporte multiprotocolo a través de TCP, QUIC, HTTP y WebSocket. También incorpora primitivas de seguridad como cifrado AES-256-GCM para datos en reposo y en tránsito, y proporciona observabilidad mediante métricas de Prometheus, rastreo con OpenTelemetry y un panel de control operativo web. El servidor puede desplegarse utilizando imágenes de contenedor y orquestarse mediante Kubernetes.
Synchronizes and replicates data across multiple cluster nodes using Viewstamped Replication for high availability.
Dynomite es una capa de fragmentación (sharding) de datos distribuida y un motor de almacenamiento clave-valor proxy. Funciona como una capa de distribución que fragmenta y replica datos a través de múltiples nodos, transformando almacenes de datos de un solo servidor en sistemas peer-to-peer escalables. El sistema actúa como un replicador de datos multidatos, sincronizando datos entre diferentes ubicaciones geográficas para asegurar la resiliencia y la alta disponibilidad durante fallos en los sitios. Gestiona la distribución de datos clave-valor para permitir el escalado lineal del almacén de datos y el almacenamiento redundante. El proyecto proporciona capacidades para la fragmentación del motor de almacenamiento y redes de alta disponibilidad. Enruta las solicitudes entrantes a motores de almacenamiento locales o remotos mientras mantiene protocolos de comunicación y asegura la comunicación entre nodos mediante cifrado.
Replicates data across multiple cluster nodes to create redundancy and ensure consistency.
go-fastdfs es un sistema de archivos distribuido y servidor de almacenamiento de objetos diseñado para construir almacenamiento en la nube privada. Proporciona una implementación de almacenamiento compatible con FastDFS que gestiona clústeres de nodos de almacenamiento para manejar subidas y descargas de archivos a gran escala. El sistema se centra en la alta disponibilidad a través de una arquitectura descentralizada que sincroniza automáticamente los datos y repara fallos entre múltiples máquinas sin un coordinador central. Admite específicamente el almacenamiento de archivos reanudables a través de HTTP, permitiendo que las transferencias grandes se pausen y reanuden desde el último byte exitoso para manejar la inestabilidad de la red. Las capacidades principales incluyen la optimización de recursos de almacenamiento mediante la deduplicación de contenido basada en SHA1 y la fusión de archivos pequeños para reducir el consumo de inodos del sistema de archivos. El proyecto también incorpora una tubería de procesamiento de imágenes que realiza escalado y redimensionamiento dinámico de imágenes durante el proceso de descarga y asegura el acceso a los archivos mediante autenticación basada en tokens. El sistema puede desplegarse mediante contenedores 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 is a decentralized NoSQL key-value store designed for high availability and fault tolerance. It is a Dynamo-style distributed database that utilizes consistent hashing and eventual consistency to scale data across a cluster of nodes. The system functions as a geo-replicated datastore, synchronizing data across multiple physical locations to provide disaster recovery and maintain availability during regional outages. It employs a multi-master replication model, allowing writes to any node in the cluster. The platform covers broad capability areas including decentralized cluster coordinat
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.