当前位置:网站首页>maxwell 概念
maxwell 概念
2022-08-11 05:35:00 【吃再多糖也不长胖】
maxwell 概念
maxwell 定义
maxwell 是用java编写的实时抓取MYSQL软件,实时读取MYSQL 二进制日志Binlog并生成JSON格式,用作生产者发送给Kafka、Redis等应用。
Maxwell原理
将自己伪装成MYSQL的一个salve,然后以salve的身份从master 复制数据。
Mysql 主从复制过程
master主库改变记录,写到二进制日志binary log 文件。
salve 从库I/O线程向mysql master 发送dump协议,将master主库的binary log events 拷贝到从库的中继日志relay log
salve 有个sql thread 会读取中继日志,顺序执行该日志中的sql事件,从而与主库保持一致。
binary log分类
binary log 有三种格式:statement,row,mixed
statement
语句级别,binlog每次记录执写操作的语句,比较节约空间,但是可能产生的结果不一样,例如update test set create_date=now().如果用binlog回复日志的话, 这也执行时间不同,产生的数据就不同。
row
行级别,binlog记录每次操作后的每行记录的变化,优点:保持数据的一致性,因为不管执行了什么操作,都只是记录执行后的效果。缺点:占用较大空间
mixed
混合级别,statement 升级版,默认还是statement,但是当函数包含UUID()时;包含AUTO_INCREMENT字段的表被更新时;执行INSERT DELAYED语句时;用UDF时;会按照ROW 的方式进行处理。优点:节约空间的同时还兼顾了一定的一致性。缺点:还存在个别情况会造成不一致。
maxwell 选择的binlog格式
maxwell要做监控分析,选择row格式比较适合,强一致性。
maxwell和canal对比
语言: 都是java编写
数据格式:canal格式自由,maxwell只能发送json消息
数据采集模式:canal只支持增量采集,maxwell支持全量和增量
数据落地:canal要定制才行,maxwell支持kafka等多种平台
ha:都支持
边栏推荐
猜你喜欢
随机推荐
抖音关键词搜索商品-API工具
CLUSTER DAY01 (Introduction to cluster and LVS, LVS-NAT cluster, LVS-DR cluster)
SECURITY DAY03 (one-click deployment of zabbix)
使用Keras构建GAN,以Mnist为例
HCIP BGP neighbor building, federation, and aggregation experiments
The ramdisk practice 1: the root file system integrated into the kernel
八股文之jvm
iptables的状态
mmdetection的安装和训练、测试didi数据集的步骤(含结果)
核方法 Kernel method
arcgis填坑_1
pytorch下tensorboard可视化深坑
window7开启远程桌面功能
CLUSTER DAY02 (Keepalived Hot Standby, Keepalived+LVS, HAProxy Server)
My approval of OA project (inquiry & meeting signature)
损失函数——交叉熵
什么是Inductive learning和Transductive learning
HCIP-BGP的选路实验
空间金字塔池化 -Spatial Pyramid Pooling(含源码)
推荐一个好用的IDEA插件---Translation—中英互译









