前言
- 主要为之前总结的源码文章补充流程图。
- 总结一下整体流程
说明
之前以Java Client为例,总结了 Insert 源码的整体流程及部分源码,由于各种原因,没有总结完。长时间不看这方面的源码,容易忘记,之前没有总结流程图,现在回忆起来比较麻烦,不如看流程图方便快捷。所以先补充总结一下之前文章中的流程图,再继续学习总结后面的源码,这样比较方便。
流程图
主要分为自己总结以及借助Shiyan Xu
总结的博客中的流程图一起理解。
- 这个流程图主要是为之前的文章总结的,主要记录源码中关键的步骤和函数,适用于Java Client 和 Spark Client,Flink Client不太一样,但主要逻辑类似。
- 由于之前并没有总结tag(索引相关)和后面的写入合并逻辑(handleInsertPartition/handleUpsertPartition),并且很难在一个图中包含所有的细节,所以本流程图并不算完整。对于本图中不完整的部分我们可以借助其他人总结的流程图来辅助理解。
下面是Shiyan Xu
总结的Hudi从零到一博客系列中的流程图: