- Notifications
You must be signed in to change notification settings - Fork17
pingcap/ticdc
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
TiCDC pulls change logs from TiDB clusters and pushes them to downstream systems, such as MySQL, TiDB, Kafka, Pulsar, and Object Storages (e.g., S3). Beginning from v9.0, we use this repository to build TiCDC instead of the old repositorytiflow. The new TiCDC in this repository has undergone a complete architectural redesign while retaining the same user interface. The architectural upgrade primarily aims to address certain drawbacks of TiCDC and propel it forward.
- Better scalability. E.g. support over 1 million tables.
- More efficiency. Use less machine resource to support large volume.
- Better maintainability. E.g. simpler and human readable code, clear code module, and open to extensions.
- Cloud native architecture. We want to design a new architecture from the ground to support the cloud.
Go topingcap/ticdc/tags to find the latest tag, e.g.v9.0.0-alpha
- For Linux x86-64:https://tiup-mirrors.pingcap.com/cdc-v9.0.0-alpha-nightly-linux-amd64.tar.gz
- For Linux ARM64:https://tiup-mirrors.pingcap.com/cdc-v9.0.0-alpha-nightly-linux-arm64.tar.gz
- For MacOS x86-64:https://tiup-mirrors.pingcap.com/cdc-v9.0.0-alpha-nightly-darwin-amd64.tar.gz
- For MacOS ARM64:https://tiup-mirrors.pingcap.com/cdc-v9.0.0-alpha-nightly-darwin-arm64.tar.gz
Examples:
# Scale out some old version TiCDC nodes, if you don't already have sometiup cluster scale-out test-cluster scale-out.yml#scale-out.yml#cdc_servers:# - host: 172.31.10.1# Patch the download binary to the clustertiup cluster patch --overwrite test-cluster cdc-v9.0.0-alpha-nightly-linux-amd64.tar.gz -R cdc# Enable TiCDC new architecture by setting the "newarch" parametertiup cluster edit-config test-cluster#cdc_servers:# ...# config:# newarch: truetiup cluster reload test-cluster -R cdc
Note that TiUP has integrated the monitoring dashboard for TiCDC new architecture into the Grafana page, named
<cluster-name>
-TiCDC-New-Arch.
TiCDC can be built on the following operating systems:
- Linux
- MacOS
Install GoLang 1.23.2
# Linuxwget https://go.dev/dl/go1.23.2.linux-amd64.tar.gzsudo tar -C /usr/local -xzf go1.23.2.linux-amd64.tar.gz# MacOScurl -O https://go.dev/dl/go1.23.2.darwin-amd64.tar.gzsudo tar -C /usr/local -xzf go1.23.2.darwin-amd64.tar.gzexport PATH=$PATH:/usr/local/go/binexport GOPATH=$HOME/goexport PATH=$PATH:$GOPATH/bin
- Download the code
git clone git@github.com:pingcap/ticdc.gitcd ticdc
- Build TiCDC
make cdc# Generate the patchable tar filecd bintar -czf newarch_cdc.tar.gz cdc
About
TiCDC pulls change logs out of TiDB and pushes to kinds of systems.