14 repositorios
Systems for maintaining data consistency by replicating changes between database instances.
Distinguishing note: Focuses on continuous synchronization and incremental replication, distinct from one-time migration.
Explore 14 awesome GitHub repositories matching data & databases · Database Replication Tools. Refine with filters or upvote what's useful.
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
TiDB transfers full datasets and replicates incremental changes from external database systems into the cluster to support seamless data integration and synchronization.
Dokploy is a self-hosted platform-as-a-service designed to simplify the deployment and management of containerized applications and databases. It provides a centralized control plane that decouples administrative management from application workloads, allowing users to oversee infrastructure across multiple server nodes through a unified web interface or a command-line tool. The platform distinguishes itself through an extensive library of pre-configured application templates, enabling the rapid deployment of databases, identity providers, and various productivity or development tools. It sup
Facilitates real-time data synchronization and replication between databases.
This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d
Implements control logic to dynamically update authentication headers during active replication sessions.
RisingWave is a cloud-native streaming database and real-time analytics engine that uses standard SQL to process continuous data streams. It functions as a streaming data lakehouse, combining the capabilities of a streaming SQL database with a platform that integrates streaming ingestion with open table formats. The system is distinguished by its use of the PostgreSQL wire protocol, allowing it to integrate with existing SQL tools and drivers. It employs a decoupled compute and storage architecture, persisting streaming state and materialized views in cloud object storage to enable independen
Streams database changes in real-time using embedded engines and logical replication.
This project is a PostgreSQL client library and SQL query builder for JavaScript and TypeScript. It provides a low-level database driver and connection manager to handle database sessions, along with a logical replication client for monitoring real-time changes. The library distinguishes itself with a high-performance bulk data streamer that utilizes the database copy command for importing and exporting large datasets. It also implements a logical replication protocol to facilitate real-time database synchronization through change subscriptions and channel-based notifications. The toolset co
Implements the logical replication protocol to stream real-time database change notifications and row-level updates.
ParadeDB is a database extension that integrates full-text search, vector database capabilities, and real-time analytics directly into a relational engine. It functions as a plugin that adds new storage and query execution capabilities to an existing database architecture. The project distinguishes itself by supporting hybrid search workflows that combine lexical keyword matching with dense and sparse vector similarity in a single query. It utilizes reciprocal rank fusion to merge these ranked result sets and employs logical replication to synchronize data from external instances, removing th
Ingests data changes from external database instances using logical replication protocols to eliminate manual ETL processes.
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
A distributed system designed for replicating database records across remote data centers with built-in loop avoidance.
Pigsty es una plataforma integral de orquestación de infraestructura de bases de datos diseñada para automatizar el ciclo de vida completo de clústeres de PostgreSQL de alta disponibilidad. Funciona como un framework de infraestructura como código que gestiona la coordinación de clústeres, el aprovisionamiento de nodos y el descubrimiento de servicios a través de playbooks idempotentes. Al integrar mecanismos de consenso distribuido, la plataforma garantiza la conmutación por error automatizada y la aplicación de estado consistente en diversos entornos, incluyendo infraestructura bare metal y virtualizada. La plataforma se distingue por un sólido conjunto de capacidades operativas que se extienden más allá de la gestión estándar de bases de datos. Cuenta con una tubería de observabilidad integrada que agrega métricas, registros y trazas en paneles centralizados para la monitorización del rendimiento en tiempo real y el análisis de diagnóstico. Además, proporciona un framework de migración que emula protocolos de cable propietarios y sintaxis SQL, permitiendo la integración de cargas de trabajo de bases de datos empresariales heredadas en entornos relacionales modernos. El sistema cubre una amplia superficie funcional, incluyendo gestión avanzada de almacenamiento con clonación de copia en escritura para un despliegue rápido, y orquestación de múltiples bases de datos que coordina motores relacionales con almacenamiento en caché y almacenamiento de objetos. También incorpora endurecimiento de seguridad, copia de seguridad y recuperación automatizadas, y enrutamiento de tráfico a través de proxies en capas para desacoplar las conexiones de los clientes de la topología del clúster subyacente. El proyecto se distribuye como un modelo de espejo de paquetes autónomo, lo que permite un despliegue y una gestión de dependencias consistentes en entornos seguros o aislados.
Moves data between database instances using logical replication and failover slots.
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.
Maintains data consistency by replicating incremental changes between MySQL database instances.
Este proyecto es un operador de Kubernetes diseñado para desplegar y gestionar clusters de bases de datos PostgreSQL de producción utilizando configuraciones declarativas. Funciona como un controlador que sincroniza el estado real de los clusters de bases de datos con un estado deseado, proporcionando un sistema para la orquestación de alta disponibilidad, respaldo y recuperación automatizados, y administración de bases de datos en contenedores. El operador se distingue por una suite integral de protección de datos que admite recuperación en un punto en el tiempo, respaldos en modo múltiple a almacenamiento de objetos en la nube y clonación de clusters. Asegura la disponibilidad continua utilizando consenso distribuido para la conmutación por error (failover) automatizada y admite una gestión de tráfico sofisticada a través de un pooler de conexiones integrado. El proyecto cubre una amplia gama de capacidades operativas, incluyendo replicación síncrona y asíncrona, recolección de telemetría a través de un stack de monitoreo dedicado y gestión de identidad segura con rotación automática de certificados TLS. También proporciona herramientas para la expansión de volúmenes de almacenamiento, actualizaciones del motor de base de datos e integración de varias extensiones de base de datos. El controlador se instala en un cluster utilizando manifiestos personalizables para permitir la orquestación declarativa del entorno de base de datos.
Supports moving data between active database clusters using logical replication publications and subscriptions.
RedisShake es una herramienta de migración y sincronización para instancias de Redis y Valkey. Facilita la transferencia de datos entre despliegues standalone, sentinel y en clúster, actuando como un migrador de bases de datos entre versiones y una utilidad para restaurar datos desde archivos de respaldo. El proyecto ofrece un pipeline de transformación de datos programable que permite filtrar claves, remapear índices de bases de datos y ejecutar scripts Lua para modificar comandos y claves durante el tránsito. Soporta sincronización sin tiempo de inactividad (zero-downtime) mediante la replicación de snapshots y el streaming de cambios incrementales en tiempo real. La herramienta cubre una amplia gama de métodos de extracción, incluyendo migración basada en replicación, migración basada en escaneo y restauración de archivos de respaldo. Incluye capacidades para el descubrimiento de nodos de clúster, resolución de maestros sentinel y verificación de compatibilidad de versiones para garantizar la estabilidad durante las transferencias entre versiones.
Synchronizes data from a source instance by mimicking a slave node using replication protocols to ensure minimal downtime.
Nominatim is a self-hosted geospatial search engine and geocoding server that utilizes OpenStreetMap data. It provides a complete infrastructure for forward geocoding, converting addresses or place names into geographic coordinates, and reverse geocoding, translating coordinates into human-readable physical addresses. The project features a dedicated data importer that parses raw map data into a PostgreSQL geospatial database. It distinguishes itself through a configurable import pipeline that uses style files to filter map features and an importance-based ranking system to prioritize search
Connects to a replication service to download and apply incremental updates to the local dataset.
pgdog is a PostgreSQL sharding proxy, distributed SQL router, and connection pooler. It is designed to enable horizontal data distribution by splitting tables and indices across multiple independent servers to scale storage and processing capacity. The project distinguishes itself through online resharding capabilities, using logical replication to move data between shards without application downtime. It supports multiple routing strategies, including hash, list, and range-based query routing, and manages distributed atomic transactions using a two-phase commit process to ensure consistency
Implements online resharding by streaming row changes between shards using logical replication protocols.
pgeasyreplicate es una utilidad de línea de comandos diseñada para orquestar migraciones de bases de datos y replicación lógica entre instancias de PostgreSQL. Funciona como un orquestador de migración que gestiona todo el ciclo de vida de la sincronización de datos, desde la propagación inicial del esquema hasta la transición final del tráfico de la aplicación. La herramienta se distingue por su lógica de cambio de estado consciente, que coordina el movimiento de las operaciones verificando el retraso de la replicación y aplicando bloqueos de escritura para evitar la pérdida de datos. Proporciona un control granular sobre el movimiento de datos al permitir a los usuarios organizar tablas en grupos de replicación específicos, asegurando que solo se sincronicen los registros previstos entre los entornos de origen y destino. Más allá de las tareas principales de migración, el proyecto incluye capacidades de monitoreo integrales para rastrear la salud de la sincronización y el retraso de la replicación en tiempo real. Admite la integración con sistemas externos mediante el envío de actualizaciones de estado y métricas de replicación a endpoints de webhook configurados, facilitando la observabilidad automatizada dentro de los flujos de trabajo de infraestructura existentes.
Automates data synchronization between source and target databases to ensure seamless migrations.