相信很多人对阿里开源的 canal 和 apache flume 都不陌生。
flume-canal-source 是对 flume 的 source 扩展。从 canal 获取数据到 flume channel 。 进而可以实现 binlog 数据到 kafka/hdfs/hive/elasticsearch 等等。
部署 canal、flume 这里忽略。
配置 source 类型*
agent.sources = canalSource
agent.sources.canalSource.type = com.weiboyi.etl.flume.source.canal.CanalSource
配置连接 canal 的三种方式*
canal zookeeper servers
agent.sources.canalSource.zkServers = zookeeper-host:2181
canal server urls
agent.sources.canalSource.serverUrls = canal-server1:111111,canal-server2:111111
agent.sources.canalSource.serverUrl = canal-server1:111111
配置 canal destination*
agent.sources.canalSource.destination = example
配置用户名密码
agent.sources.canalSource.username = user agent.sources.canalSource.password = passwd
binlog batch size, default 1024
agent.sources.canalSource.batchSize = 1024
是否需要 MySQL 修改前的数据, default true
agent.sources.canalSource.oldDataRequired = true