可以看到数据写操作,有三种方式
upsert 就是通过index索引来,对数据到底是insert还是update 会做上标记,并且,只有索引到了数据才会update,所以是依赖index索引的.
insert 就是不停的插入数据,跳过了index,插入快,但是有重复数据,可能需要自己处理
bulk_insert 写排序
默认的是upsert,用的最多.
首先来看一下对与COW表的upsert可以看到
1.首先要对records按照record key去重,因为对于insert模式是可以插入重复数据的,所以要去重.因为在这里是允许主键重复的.
比如有数据:
1 a
2 b
3 c
1 a
这里的1 a就有一条重复的数据主键也是重复的.
2.然后对前来upsert的数据进行,创建索引,同时判断出,哪些数据是需要update,哪些数据需要insert插入.
3.对于需要update的,会直接找到key对应的文件片
标签:insert,Hudi,index,update,索引,原理,数据,upsert From: https://blog.csdn.net/lidew521/article/details/144724602