文章目录
1. 概述
Canal是阿里巴巴开发的一项开源组件,通过将自己伪装成MySQL Slave节点来接收Master节点的Binlog日志,然后就可以实现我们的需求,例如:同步到MySQL从库、同步到Elasticsearch、同步到Kafka 等等。
2. Canal的组成
Canal主要分成 Server(服务端)和 Client(客户端)
- Server 主要由 Instance 构成,1个Server可以有多个Instance,每个Instance由包括 EventParser、EventSink、EventStore、MetaManager 四个部分组成,如下图所示:
EventParser:连接MySQL,充当 Slave 和 Master 进行交互,