24 个仓库
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.
这是一个关于分布式系统架构和后端基础设施设计的综合教育资源和学习指南。它为掌握设计复杂软件系统所需的扩展性、可靠性和性能原则提供了结构化课程。 该仓库通过提供一种系统化的技术面试准备方法脱颖而出,结合了设计模式、架构权衡和间隔重复工具,帮助用户记忆复杂概念。它强调约束驱动的分析,教授用户在起草架构设计时如何评估延迟、一致性和可用性等相互竞争的需求。 内容涵盖了广泛的系统设计能力,包括数据库扩展、流量管理和基础设施优化策略。它详细介绍了水平扩展、多层缓存、异步通信和服务发现技术,同时还提供了用于执行资源估算和容量规划的框架。 文档以学习指南的形式组织,为后端工程和大规模系统设计的基础知识提供了系统化的路径。
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 是一个用于 MySQL 数据库集群的高可用系统和复制管理器。它作为一个故障转移自动化工具和拓扑可视化器,旨在检测主库故障并提升备用副本,以最大限度地减少系统停机时间。 该项目专注于管理和重新配置 MySQL 复制拓扑,以维护一致的数据分布。它利用拓扑发现爬虫来映射复制结构,并识别数据库集群中的活动故障。 该系统提供了自动化集群恢复、位置感知实例跟踪和基于约束的拓扑重配置功能。它还维护状态记录的审计日志,以跟踪历史拓扑变更和故障转移事件。
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 是一个为 Go 编程语言设计的工具包,旨在实现 MySQL 协议处理程序、二进制日志复制系统、模拟服务器和模式解析工具。它提供了通过原生网络协议和二进制日志流与 MySQL 服务器交互所需的库。 该项目通过解析和解码底层网络数据包,支持创建自定义数据库代理或模拟服务器。它还包括一个用于流式传输和处理二进制日志以在不同存储系统间同步数据的复制工具,以及一个用于提取和分析数据库结构定义的模式解析器。 该工具包涵盖了广泛的数据库集成功能,包括连接管理、查询执行以及实时数据复制工作流的管理。它还支持模式迁移的自动化以及将记录同步到外部存储系统。
Synchronizes database changes in real-time by processing MySQL binary log events.
LiteFS 是一个基于 FUSE 的分布式文件系统,旨在跨机器集群复制 SQLite 数据库。它作为一个高可用层,通过拦截写操作来同步数据,从而确保多个服务器节点之间的一致性。 该系统通过用户空间驱动程序将文件操作映射到网络请求,从而管理分布式数据库存储。这允许跨区域数据同步以及将数据库内容分发到边缘节点,从而实现具有同步全局写入的本地读取。 复制过程利用预写日志(WAL)传输和事务感知拦截,将已提交的更改从主节点流式传输到备用副本。新副本在过渡到增量日志复制之前,通过基于快照的初始化进行引导。
Synchronizes SQLite database state across cluster members for fault tolerance and high availability.
Stolon 是一个用于 PostgreSQL 的云原生数据库管理器和编排器。它作为一个高可用管理器,旨在自动化分布式环境中的故障转移、复制和集群管理。 该系统协调同步和异步数据镜像,并使用服务发现机制动态检测数据库节点地址。它通过代理将客户端流量路由到当前主实例,以在角色切换期间保持应用程序访问。 该项目通过时间点恢复和维护多站点备用集群来涵盖灾难恢复。它还包括通过加密保护数据库连接以及自动化检测网络内进程地址更改的功能。
Synchronizes standby instances with the primary node by streaming data changes in real time.