• TiKV:输出 KV 变更日志(KV Change Logs)。KV 变更日志是TiKV 生成的 row changed events,隐藏了大部分内部实现细节。TiKV 负责拼装 KV 变更日志,并输出到 TiCDC 集群。

      • processor 在实现上是 capture 内部的逻辑线程。一个 capture 节点可以运行多个 processor,每个 processor 负责同步若干个表的数据变更。processor 所在的 capture 节点若出现异常,则 TiCDC 集群会把同步任务重新分配给其它 capture 节点。
      • capture 运行过程中的一些数据会持久化到 PD 内部的 etcd 中,这些数据包括同步任务的配置和状态、各 capture 节点的信息、owner 选举信息以及 processor 的同步状态等。
    • Sink:TiCDC 内部负责将已经排序的数据变更同步到下游的组件。TiCDC 支持同步数据变更到多种下游组件。

      • 支持同步数据到 TiDB 和 MySQL。为保证数据正确性,表结构定义须满足两个条件:必须要有主键或者唯一索引;若不存在主键,则构成唯一索引的每一个字段都应该被明确定义为 。
      • 未来将支持输出数据变更到多种文件存储系统上。