# The Principle of TiCDC

__*TiCDC principle*__
__*TiCDC architecture*__
__*TiCDC characteristics*__

+ High availability
+ performance
+ Downstream data formats

![right](./student-guide/diagram/TiCDCPI_aa_001_20220622.png)
-------------------------------------------------------------
The TiCDC runtime is a stateless node with high availability characteristics. The TiCDC cluster supports the creation of multiple synchronization tasks to synchronize data to multiple different downstream streams.
- TiKV CDC component: The blue part on the left, only outputs the key-value (KV) change log.
  - Internal logic assembly KV change log.
  - Provides an interface to output the KV change log, and the data sent is the change log.
- capture: TiCDC runs the process. Multiple captures form a TiCDC cluster and is responsible for synchronizing KV change logs.
  - Each capture is responsible for pulling a portion of the KV change log.
  - Sort one or more KV change logs from the pull.
  - Revert the transaction downstream or output according to the TiCDC Open Protocol.