TDSQL·进阶篇·Binlog 日志消费格式

weixin_44020914 2022-03-17 11:17:09

数据订阅功能帮助客户实时获取云数据库 MariaDB 以及分布式数据库 TDSQL 中的增量数据,客户能够根据自身业务的需求,自由地对实时增量数据进行处理。

功能列表

  • 支持公有云云数据库 MariaDB 和分布式数据库 TDSQL 实例的数据订阅。
  • 支持专有云云数据库 MariaDB 和分布式数据库 TDSQL 实例的数据订阅。

数据源类型

TencentDB for MariaDB、分布式数据库 TDSQL

消息格式

数据订阅功能对实例的 Binlog(row 格式)进行解析,并将 Binlog 事件封装成 json 格式的消息上传至 Kafka 集群。消息类型包括 DML 事件、GTID 事件、XID 事件、QUERY 事件。其中 DML 事件包括 insert、update、delete 事件,表征对数据行的更改;GTID 事件表征事务的开始;XID 事件表征事务的提交;QUERY 事件表征 DDL 语句。

DML 消息格式如下:

{
    "logtype":"mysqlbinlog",          //日志类型,取值唯一,为 mysqlbinlog
    "eventtype":23,                   //事件类型码,对应 mysql 中 binlog 事件类型码

    "eventtypestr":"insert",          /*事件类型字符串,包括 insert、update、delete、gtid、xid、query 事件。
                                        其中insert、update、delete 事件对应 DML 语句;tid 事件标识事务开始;
                                        xid 事件标识事务结束;query 事件标识 DDL 语句 */
    "db":"testdb",                    //库名
    "table":"testtable",              //表名
    "localip":"000.00.000.000",       //实例所在机器 IP
    "localport":0000,                 //实例端口
    "begintime":1511350073,           //事务开始时间,当前事件所在的事务的开始时间
    "gtid":"0-2670193178-726233561",  //GTID,当前事件所在事务的 gtid
    "event_index":"4",                //表征该事件在该事务中的序号  
    "where":[                         //where 字段,标识该行变更前的各个字段的值

    ],
    "field":[                         //field 字段,标识该行变更后的各个字段的值
        "1",
        "'name1'"
    ]
}

····

更多详见:https://cloud.tencent.com/document/product/237/35916

...全文
5922 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

87

社区成员

发帖
与我相关
我的任务
社区描述
TDSQL开发者
其他 企业社区
社区管理员
  • csdnsqst0015
  • kikokingzz
  • karina17
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

社区初立,为了鼓励小友们在社区中积极互动,现在有一个活动如下:

试试用AI创作助手写篇文章吧