2020-05-13

DAILY BOOK LIST

1, plain sailing, is not equal to driving a flat course.

2, pride is a broken lead kite fleeting.在这里插入图片描述

3, originally hopeless thing, bold try, often can succeed.

### 解析数据更新操作的日志JSON格式 对于描述的数据变更日志格式,JSON对象中的各个字段具有特定的意义: - `op_type` 字段指示了发生的数据库操作类型[U]表示这是一次更新操作[^2]。 - `table` 字段指明了执行此更改的具体表名,在提供的例子中为 `"mdmv2"."test_table"` 表进行了更新操作[^1]。 - `columnnames`, `columntypes`, 和 `columnvalues` 列出了此次更新涉及的所有列的名字、类型以及新值。例如,`"id"` 的类型是字符型长度不超过10(`character(10)`), 更新后的值为 `"id1"`;而 `"code"` 同样也是字符型长度不超过10 (`character(10)`) 并且其新的值为 `"code2"`。 - 关于旧键的信息存储在 `oldkeys` 下面的对象里,这里包含了唯一标识记录的关键字名称(keyname),关键字类型(keytype),还有这些关键字对应的原值(keyvalue)。 然而,为了全面理解包含 `'before'`, `'after'`, `'op_ts'`, `'current_ts'`, `'primary_keys'`, `'pos'`, 和 `'table'` 这些字段的日志条目,还需要考虑如下方面: - `before` 部分应当展示更新前的数据状态,即原始行的内容。如果配置得当的话,它会列出所有受影响列的先前版本的数据[^3]。 - `after` 展现的是更新之后的状态,也就是应用了UPDATE语句后的新行内容。通常情况下,这个部分应该反映整个记录最新的样子,除非特别设置只发送变化过的字段。 - `op_ts` 记录着实际发生该操作的时间戳,反映了事务提交的确切时刻。 - `current_ts` 可能用来标记消息创建或者捕获到这条变更加入流处理系统的瞬间,但这不是标准的一部分,具体取决于实现方式。 - `primary_keys` 提供了一组用于识别某一行记录的一系列主键信息,有助于下游系统准确定位并同步相应的改动。 - `pos` 或者称为位置信息,可能指的是逻辑复制协议里的某个偏移量或者是序列号,帮助追踪事件顺序和进度。 ```json { "change": [ { "kind": "update", "schema": "example_schema", "table": "example_table", "before": {"id": "original_id_value", ...}, "after": {"id": "new_id_value", ...}, "op_ts": "operation_timestamp", "current_ts": "message_capture_time", "primary_keys": ["pk_column_name"], "pos": "logical_position_or_offset" } ] } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值