type
status
date
slug
summary
tags
category
icon
password
原理部分参考这篇博客
入口:
可知,开启参数有两个要求:
hoodie.datasource.query.type="incremental"
并且hoodie.datasource.query.incremental.format="cdc"
。HoodieMergeHandleFactory在开启cdc时创建HoodieMergeHandleWithChangeLog,需要设置参数"hoodie.table.cdc.enabled"为true。
HoodieMergeHandleWithChangeLog 初始化时会创建一个HoodieCDCLogger对象。
在update和insert数据时写入变更数据,在insert数据的情况下,oldRecord写入null。
HoodieCDCLogger 通过比较oldRecord和newRecord判断这条数据的操作类型,这里写入的是recordKey和完整的record数据。