加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

maxwell将mysql数据实时同步到kafka

(2018-06-13 14:06:02)
标签:

maxwell

hbase

kafka

binlog

msyql

分类: 大数据处理
    我们的业务数据存放在mysql中,但是在大数据系统中我们需要拿hbase的数据进行业务处理,比如推荐系统。那么怎么可以将mysql中的业务数据实时同步到hbase中,从而可以在大数据系统中进行实时流式计算。本次推荐工具maxwell,方式是:我们打开mysql的binlog模式,数据以row为单位输出,然后通过maxwell发送给kafka,再由另一个程序将kafka数据录入到hbase中。
一、mysql配置
(1)mysql中配置binlog,开启后通过"show variables like 'log_bin';"查看是否ON的状态
(2)mysql中配置binlog的输出格式为row,开启后通过"show variables like 'binlog_format';"查看
(3)mysql开启log_slave_updates,该参数控制是否把所有的操作写入到binlog中,开启后通过"show variables like 'log_slave_updates';"查看
二、maxwell配置
    将maxwell工具下载到linux机器上,主要是配置config.properties文件,重要的配置参考如下:
log_level=info
host=
user=
password=
port=
jdbc_options=autoReconnect=true
schema_database=  // 用于在mysql中新建一个binlog相关的数据库实例
producer=kafka
kafka.bootstrap.servers=
kafka_topic=
kafka.compression.type=snappy
kafka.retries=1
kafka.acks=1
kinesis_stream=maxwell
include_dbs=  // 需要处理的数据库实例
include_tables= // 需要处理的表格,用逗号分隔
kafka_version=0.9.0.1
client_id= // 标识符,可以包含英文
replica_server_id= // 只能是数字
三、启动maxwell
nohup  bin/maxwell --config config.properties --log_level DEBUG &
四、验证
如果maxwell实时同步成功,log中会有数据展示如下:
maxwell将mysql数据实时同步到kafka

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有