14 dépôts
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 est une plateforme d'orchestration d'infrastructure de base de données complète conçue pour automatiser le cycle de vie complet des clusters PostgreSQL à haute disponibilité. Il fonctionne comme un framework d'infrastructure en tant que code qui gère la coordination des clusters, le provisionnement des nœuds et la découverte de services via des playbooks idempotents. En intégrant des mécanismes de consensus distribués, la plateforme assure un basculement automatisé et une application cohérente de l'état à travers divers environnements, y compris le matériel nu et l'infrastructure virtualisée. La plateforme se distingue par une suite robuste de capacités opérationnelles qui s'étendent au-delà de la gestion de base de données standard. Elle dispose d'un pipeline d'observabilité intégré qui agrège les métriques, les logs et les traces dans des tableaux de bord centralisés pour une surveillance des performances en temps réel et une analyse diagnostique. De plus, elle fournit un framework de migration qui émule les protocoles filaires propriétaires et la syntaxe SQL, permettant l'intégration de charges de travail de base de données d'entreprise héritées dans des environnements relationnels modernes. Le système couvre une large surface fonctionnelle, y compris la gestion avancée du stockage avec clonage par copie sur écriture pour un déploiement rapide, et l'orchestration multi-base de données qui coordonne les moteurs relationnels avec la mise en cache et le stockage d'objets. Il intègre également le renforcement de la sécurité, la sauvegarde et la récupération automatisées, et le routage du trafic via des proxys en couches pour découpler les connexions client de la topologie de cluster sous-jacente. Le projet est distribué sous forme de modèle de miroir de package autonome, permettant un déploiement et une gestion des dépendances cohérents dans des environnements sécurisés ou isolés.
Moves data between database instances using logical replication and failover slots.
go-mysql est une boîte à outils pour le langage de programmation Go conçue pour implémenter des gestionnaires de protocole MySQL, des systèmes de réplication de journal binaire, des serveurs mock et des utilitaires d'analyse de schéma. Elle fournit les bibliothèques nécessaires pour interagir avec les serveurs MySQL via des protocoles réseau natifs et des flux de journaux binaires. Le projet permet la création de proxys de base de données personnalisés ou de serveurs mock en analysant et en décodant des paquets réseau de bas niveau. Il inclut également un outil de réplication pour diffuser et traiter les journaux binaires afin de synchroniser les données entre différents systèmes de stockage, ainsi qu'un analyseur de schéma pour extraire et analyser les définitions structurelles de la base de données. La boîte à outils couvre un large éventail de capacités d'intégration de base de données, y compris la gestion des connexions, l'exécution de requêtes et la gestion des flux de travail de réplication de données en temps réel. Elle prend également en charge l'automatisation des migrations de schéma et la synchronisation des enregistrements vers des systèmes de stockage externes.
Maintains data consistency by replicating incremental changes between MySQL database instances.
This project is a Kubernetes operator designed for deploying and managing production PostgreSQL database clusters using declarative configurations. It functions as a controller that synchronizes the actual state of database clusters with a desired state, providing a system for high availability orchestration, automated backup and recovery, and containerized database administration. The operator distinguishes itself through a comprehensive data protection suite that supports point-in-time recovery, multi-mode backups to cloud object storage, and cluster cloning. It ensures continuous availabil
Supports moving data between active database clusters using logical replication publications and subscriptions.
RedisShake is a migration and synchronization tool for Redis and Valkey instances. It facilitates the transfer of data between standalone, sentinel, and cluster deployments, acting as a cross-version database migrator and a utility for restoring data from backup files. The project provides a programmable data transformation pipeline that allows for filtering keys, remapping database indices, and executing Lua scripts to modify commands and keys during transit. It supports zero-downtime synchronization by replicating snapshots and streaming incremental changes in real time. The tool covers a
Synchronizes data from a source instance by mimicking a slave node using replication protocols to ensure minimal downtime.
Nominatim est un moteur de recherche géospatiale auto-hébergé et un serveur de géocodage qui utilise les données d'OpenStreetMap. Il fournit une infrastructure complète pour le géocodage direct, convertissant des adresses ou des noms de lieux en coordonnées géographiques, et le géocodage inverse, traduisant des coordonnées en adresses physiques lisibles par l'homme. Le projet dispose d'un importateur de données dédié qui analyse les données cartographiques brutes dans une base de données géospatiale PostgreSQL. Il se distingue par un pipeline d'importation configurable qui utilise des fichiers de style pour filtrer les entités cartographiques et un système de classement basé sur l'importance pour prioriser les résultats de recherche en fonction de la popularité et du type d'entité. Le système couvre un large éventail de capacités, y compris l'indexation spatiale, le calcul d'adresses hiérarchiques et l'indexation de recherche basée sur des jetons pour les recherches floues. Il prend en charge l'intégration de jeux de données externes pour les numéros de rue et les centroïdes de codes postaux, ainsi que la réplication incrémentale des données pour maintenir les jeux de données locaux synchronisés avec les sources mondiales. Le service est déployé en tant qu'application web basée sur ASGI, fournissant une API de recherche géospatiale avec prise en charge de plusieurs formats de sortie, notamment JSON, GeoJSON et XML.
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 est un utilitaire en ligne de commande conçu pour orchestrer les migrations de bases de données et la réplication logique entre des instances PostgreSQL. Il fonctionne comme un orchestrateur de migration qui gère l'ensemble du cycle de vie de la synchronisation des données, de la propagation initiale du schéma à la transition finale du trafic applicatif. L'outil se distingue par une logique de basculement consciente de l'état, qui coordonne le mouvement des opérations en vérifiant le retard de réplication et en imposant des verrous d'écriture pour éviter la perte de données. Il fournit un contrôle granulaire sur le mouvement des données en permettant aux utilisateurs d'organiser les tables dans des groupes de réplication spécifiques, garantissant que seuls les enregistrements prévus sont synchronisés entre les environnements source et cible. Au-delà des tâches de migration de base, le projet inclut des capacités de surveillance complètes pour suivre la santé de la synchronisation et le retard de réplication en temps réel. Il prend en charge l'intégration avec des systèmes externes en poussant les mises à jour de statut et les métriques de réplication vers des points de terminaison webhook configurés, facilitant une observabilité automatisée au sein des flux de travail d'infrastructure existants.
Automates data synchronization between source and target databases to ensure seamless migrations.