24 repositorios
Mechanisms for copying and synchronizing data across multiple storage nodes to ensure high availability.
Distinguishing note: None of the candidates matched; this focuses on the consensus-based replication mechanism used for high availability.
Explore 24 awesome GitHub repositories matching data & databases · Database Replication. Refine with filters or upvote what's useful.
Este proyecto es un recurso educativo integral y una guía de estudio centrada en la arquitectura de sistemas distribuidos y el diseño de infraestructura backend. Proporciona un plan de estudios estructurado para dominar los principios de escalabilidad, confiabilidad y rendimiento necesarios para diseñar sistemas de software complejos. El repositorio se distingue por ofrecer un enfoque metódico para la preparación de entrevistas técnicas, incorporando patrones de diseño, compensaciones arquitectónicas y herramientas de repetición espaciada para ayudar a los usuarios a retener conceptos complejos. Enfatiza el análisis basado en restricciones, enseñando a los usuarios cómo evaluar requisitos competitivos como latencia, consistencia y disponibilidad al redactar diseños arquitectónicos. El contenido cubre un amplio espectro de capacidades de diseño de sistemas, incluyendo estrategias para el escalado de bases de datos, gestión de tráfico y optimización de infraestructura. Detalla técnicas para el escalado horizontal, almacenamiento en caché multicapa, comunicación asíncrona y descubrimiento de servicios, al tiempo que proporciona marcos para realizar estimaciones de recursos y planificación de capacidad. La documentación está organizada como una guía de estudio, ofreciendo un camino sistemático a través de los fundamentos de la ingeniería backend y el diseño de sistemas a gran escala.
Details mechanisms for synchronizing data across nodes to ensure high availability and failover protection.
TiDB is a horizontally scalable, distributed SQL database designed to provide consistent transactional storage and high-performance analytical processing within a single unified architecture. It utilizes a decoupled compute-storage design and a distributed key-value storage layer to ensure horizontal scalability and efficient range-based queries. By employing a consensus-based replication algorithm, the system maintains high availability and automatic failover across multiple nodes and geographical regions. The platform distinguishes itself through its hybrid transactional and analytical proc
Contribute Copy as Markdown View as Markdown TiDB uses the Raft consensus algorithm to ensure that data is highly available and safely replicated throughout storage in Raft Groups. Data is redundantly copied
Sglang is a high-performance inference engine and serving system designed for large language and multimodal models. It provides a programmable interface for orchestrating complex generation workflows, enabling developers to coordinate multi-turn dialogues, tool invocations, and reasoning chains through a domain-specific language. The platform is built to support production-scale deployments, offering an OpenAI-compatible API that allows for integration with existing application ecosystems. The system distinguishes itself through a disaggregated architecture that separates compute-intensive pr
Replicates model instances across device groups to process multiple concurrent requests, optimizing memory and communication for high-demand workloads.
Dolt is a relational database engine that integrates version control directly into the database management layer. It functions as a version-controlled SQL database that tracks every row and schema change using a commit-based history, allowing users to branch, merge, and audit data modifications. By implementing a wire-protocol-compatible server, the system enables standard SQL clients and tools to interact with versioned data as if they were connecting to a traditional relational database. The platform distinguishes itself by applying repository-style workflows to data management, including s
Configures read replicas and synchronization topologies to distribute data and maintain historical records.
KeyDB is a multithreaded in-memory key-value store and distributed cache. It functions as a NoSQL database utilizing multi-version concurrency control to execute non-blocking queries and scans. The project is a multithreaded fork of Redis that maintains protocol compatibility while utilizing a multithreaded architecture to scale across multi-core hardware. It distinguishes itself with flash-tiered storage, allowing the system to offload data from primary RAM to SSD or flash storage to increase total capacity. The system supports high availability through active-active mesh replication and mu
Synchronizes data across multiple instances in a mesh topology to enable load balancing and high availability.
all-in-one is a containerized deployment system designed to install and manage a complete suite of productivity and collaboration services. It functions as a cloud suite deployer that orchestrates the installation of a self-hosted content platform, incorporating necessary dependencies via Docker or Kubernetes. The project distinguishes itself by providing a web-based dashboard for orchestrating, updating, and monitoring the lifecycle of service containers. It also serves as a local AI inference server, enabling the execution of generative text models, image diffusion, and speech processing on
Implements mechanisms for copying and synchronizing database content across multiple servers for high availability.
immudb is a tamperproof database that maintains an immutable record of entries using cryptographic commit logging. It ensures verifiable database integrity by utilizing Merkle trees to generate membership and consistency proofs that detect unauthorized data alterations. The system employs a multi-model storage engine that unifies key-value, document, and relational data structures within a single immutable backend. It provides compatibility with the PostgreSQL wire protocol, allowing it to integrate with standard SQL clients, ORMs, and database tools. The project covers broad capabilities in
Ensures high availability and data redundancy through synchronous node replication across a distributed cluster.
RedisInsight is a graphical user interface and management tool for browsing, analyzing, and administering Redis databases. It provides a visual environment for exploring key-value data structures, managing database instances, and performing data analysis across different operating systems and deployments. The tool distinguishes itself by providing dedicated visual managers for complex operations, including a vector database manager for configuring embeddings and similarity searches, a query workbench for executing raw commands and Lua scripts, and a performance monitoring dashboard for tracki
Copies data directly from a source database to a target database in real-time.
Apache Tomcat is an open-source implementation of the Jakarta Servlet, Pages, Expression Language, and WebSocket specifications, serving as a container for running Java web applications. It provides a modular architecture with a servlet container, connector abstraction for multiple I/O models, and a pipeline-based request processing system that handles cross-cutting concerns through composable components. The server supports container-managed security with configurable realms for authentication against JDBC, LDAP, or memory-based credential stores, and offers TLS encryption with optional Open
Shares session data among multiple server instances to support failover and load balancing.
Otter is a distributed database synchronization system and change data capture tool designed to replicate data between databases across multiple geographic regions. It functions as a synchronization orchestrator and ETL data pipeline that mirrors records and associated files in real time. The system employs incremental log parsing to capture database changes and utilizes a consistency-based convergence algorithm and loop-avoidance logic to manage bi-directional replication. It processes data through a pipeline of selection, extraction, transformation, and loading to handle joins and format co
Parses incremental database logs to replicate data from source to target databases in near real-time.
Patroni is a high availability manager and cluster orchestrator for PostgreSQL. It functions as an automatic failover controller and replication manager that ensures continuous database availability by automating leader election and promoting standby nodes during failures. The system maintains a consistent cluster state by acting as a distributed consensus coordinator. It synchronizes configuration and manages leader elections through integration with distributed configuration stores such as etcd, ZooKeeper, or Consul. Its broader capabilities include managing both synchronous and asynchrono
Manages synchronous and asynchronous replication modes to balance data durability and system latency.
CloudNativePG is a Kubernetes operator designed for the administration, lifecycle management, and high availability of PostgreSQL database clusters. It functions as a declarative orchestrator that manages database instances through custom resources and manifests. The project distinguishes itself by automating complex operational tasks, including primary election and failover management via streaming physical replication. It provides specialized tools for database version migrations, supporting both offline in-place upgrades and online migrations through logical replication. The operator cove
Uses streaming and file-based physical replication to keep standby replicas synchronized with the primary node.
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
Synchronizes session state across multiple application instances to ensure continuous user experience.
Orchestrator es un sistema de alta disponibilidad y gestor de replicación para clusters de bases de datos MySQL. Funciona como un automatizador de failover y visualizador de topología diseñado para detectar fallos del maestro y promover réplicas en espera para minimizar el tiempo de inactividad del sistema. El proyecto se centra en la gestión y reconfiguración de topologías de replicación de MySQL para mantener una distribución de datos consistente. Utiliza el rastreo de descubrimiento de topología para mapear estructuras de replicación e identifica fallos activos dentro del cluster de bases de datos. El sistema proporciona capacidades para la recuperación automatizada de clusters, seguimiento de instancias con conocimiento de ubicación y reconfiguración de topología basada en restricciones. También mantiene un registro de auditoría de grabación de estado para rastrear cambios históricos de topología y eventos de failover.
Organizes the replication graph of database clusters to ensure consistent data distribution and availability.
MySQL replication topology management and HA
Moves replicas between masters safely using drag-and-drop or CLI commands while rejecting illegal refactoring attempts.
AliSQL is a fork of MySQL by Alibaba that extends the relational database management system with enhancements for high performance, scalability, and enterprise-grade availability. It retains the core MySQL identity as a SQL-based database for storing, organizing, and retrieving structured data, while adding optimizations for large-scale transactional and analytical workloads. The project differentiates itself through a set of Alibaba-specific improvements, including a columnar engine for accelerating analytical queries directly on MySQL tables, and a distributed, shared-nothing NDB Cluster en
Imports running replication topologies into AdminAPI for unified management.
LXD is a unified platform for managing both system containers and virtual machines through a single REST API and command-line interface. It provides a programmatic HTTP interface for controlling the full lifecycle of instances, enabling automation and integration with external tools. The system runs unprivileged containers with per-instance UID/GID mappings, seccomp filters, and AppArmor profiles for kernel-level isolation, while supporting multiple storage backends including directory, Btrfs, LVM, ZFS, Ceph, LINSTOR, and TrueNAS through a unified driver interface. The platform distinguishes
Replicates database state across cluster members using a distributed SQLite variant for fault tolerance.
go-mysql es un kit de herramientas para el lenguaje de programación Go diseñado para implementar manejadores de protocolo MySQL, sistemas de replicación de registros binarios, servidores simulados y utilidades de análisis de esquemas. Proporciona las bibliotecas necesarias para interactuar con servidores MySQL a través de protocolos de red nativos y flujos de registros binarios. El proyecto permite la creación de proxies de base de datos personalizados o servidores simulados mediante el análisis y la decodificación de paquetes de red de bajo nivel. También incluye una herramienta de replicación para transmitir y procesar registros binarios para sincronizar datos a través de diferentes sistemas de almacenamiento, junto con un analizador de esquemas para extraer y analizar definiciones estructurales de bases de datos. El kit de herramientas cubre una amplia gama de capacidades de integración de bases de datos, incluyendo la gestión de conexiones, ejecución de consultas y la gestión de flujos de trabajo de replicación de datos en tiempo real. También admite la automatización de migraciones de esquemas y la sincronización de registros con sistemas de almacenamiento externos.
Synchronizes database changes in real-time by processing MySQL binary log events.
LiteFS es un sistema de archivos distribuido basado en FUSE diseñado para replicar bases de datos SQLite a través de un clúster de máquinas. Funciona como una capa de alta disponibilidad que sincroniza los datos interceptando operaciones de escritura para garantizar la consistencia entre múltiples nodos de servidor. El sistema gestiona el almacenamiento distribuido de bases de datos mapeando operaciones de archivo a solicitudes de red a través de un controlador en espacio de usuario. Esto permite la sincronización de datos multirregión y la distribución del contenido de la base de datos a nodos de borde (edge nodes), facilitando lecturas locales con escrituras globales sincronizadas. El proceso de replicación utiliza el registro de escritura anticipada (write-ahead log) y la interceptación consciente de transacciones para transmitir cambios confirmados desde un nodo primario a réplicas en espera. Las nuevas réplicas se inician mediante inicialización basada en instantáneas antes de pasar a la replicación incremental de registros.
Synchronizes SQLite database state across cluster members for fault tolerance and high availability.
Stolon es un gestor de bases de datos nativo de la nube y orquestador para PostgreSQL. Funciona como un gestor de alta disponibilidad diseñado para automatizar la conmutación por error (failover), la replicación y la gestión de clústeres en entornos distribuidos. El sistema coordina la duplicación de datos síncrona y asíncrona y utiliza un mecanismo de descubrimiento de servicios para detectar dinámicamente las direcciones de los nodos de la base de datos. Enruta el tráfico del cliente a la instancia primaria actual a través de un proxy para mantener el acceso de la aplicación durante los cambios de rol. El proyecto cubre la recuperación ante desastres mediante recuperación en un punto en el tiempo (PITR) y el mantenimiento de clústeres en espera en múltiples sitios. También incluye capacidades para asegurar las conexiones a la base de datos mediante cifrado y automatizar la detección de cambios de dirección de procesos dentro de la red.
Synchronizes standby instances with the primary node by streaming data changes in real time.