0
点赞
收藏
分享

微信扫一扫

Hudi 的写操作类型

简介

本文旨在介绍 Hudi 的各种写操作,以便在使用中作出更好的选择。

写操作的类型

1. UPSERT

这是默认的写操作类型,通过查找索引,输入的数据会被打上 insert 或者 update 的标签。推荐在数据库变更捕获的场景使用,通常这类场景会包含更新的记录。使用 UPSERT 操作类型写入的目标的表不会存在重复的数据。

2. INSERT

这种操作与 UPSERT 操作非常类似,只是跳过了查找索引这一步,使得它在性能上要比 UPSERT 要快很多。如果只是需要 Hudi 的事务写/增量拉取数据/存储管理的能力,并且可以容忍重复数据,那么可以选择 INSERT 操作。

3. BULK_INSERT

UPSERT 和 INSERT 操作都把输入的数据先在内存中缓存起来以提高性能,但是对于首次初始化导入数据到 Hudi 表会显得有点笨重。BULK_INSERT 提供了与 INSERT 类似的机制,不同的时候实现了对排序数据的写算法,可以快速的完成几百TB数据的初始化加载。

4. DELETE

Hudi 支持两种方式的 DELETE操作:

  • Soft Deletes: 保留record key, 把其他所有的字段的值都置为 NULL。
  • Hard Deletes: 从物理上删除这条记录。
举报

相关推荐

0 条评论