Flink CDC 同步表至Paimon 写数据流程,write算子和commit算子。
Flink CDC 同步表至Paimon 写数据流程,write算子和commit算子。(未吃透版)
流程图
一般基本flink cdc 任务同步数据至paimon表时包含3个算子,source、write、global commit。
source端一般是flink connector实现的连接源端进行获取数据的过程,本文探究的是
-
source算子获取的到数据如何传递给writer算子?
-
writer算子如何写数据?
-
global commit算子做了什么事情?
-
第一问:
默认根据primary key的hash值决定往哪个桶写入,一个桶对应了一个lsm tree writer。
-
第二问:简单来说就是将数据格式进行转换,然后写入到内存,内存满了就溢写到磁盘,最后再判断是否需要执行compaction。具体而言:
-
传入的数据是InternelRow格式,需要转换为BinaryRow格式
-
将数据写入内存
-
生成rowDataStoreWriteOperator算子,预写算子,不会生成snapshot,primary key table的最终调用到MergeTreeWriter
-
MergeTreeWriter中执行两个操作ÿ
-
-
原文地址:https://blog.csdn.net/weixin_47467016/article/details/140416302
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!