Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
Notice: Creating folder will generate an empty file .keep, because not support in Git

Gravity 简体中文

Build Status

2.0 Product

Gravity is used to replicate data between various inputs and outputs (databases, message queues).

It is designed to be a customizable data replication tool that:

  • Supports multiple sources and destinations

  • Supports Kubernetes-based replication cluster

Use Cases

  • Data Bus: Use Change Data Capture (MySQL binlog, MongoDB Oplog) and batch table scan to publish data to message queue like Kafka.
  • Unidirectional data replication: Replicates data from one MySQL cluster to another MySQL cluster.
  • Bidirectional data replication: Replicates data between two MySQL clusters bidirectionally.
  • Synchronization of shards to the merged table: Synchronizes MySQL sharded tables to the merged table. You can specify the corresponding relationship between the source table and the target table.
  • Online data mutation: Data can be changed during the replication. For example, rename the column, encrypt/decrypt data columns.


Input support

Input Status
MySQL Binlog
MySQL Scan
Mongo Oplog
Mongo Scan
TiDB Binlog Doing
PostgreSQL WAL Doing

output support

Output Status
Elasticsearch Beta

Data mutation support

Gravity supports the following data mutations:

  • Ignore specific data
  • Renaming columns
  • Deleting columns


Special thanks to @dantin, @LiangShang, and @liwink for the early support to this project, and thanks @CaitinChen for the initial translation of the documentation.

Comments ( 0 )

Sign in for post a comment


MySQL数据库同步神器 spread retract


No release




load more
can not load any more