hudi系列-数据写入方式及使用场景
2023-04-18 14:26:45 时间
hudi支持多种数据写入方式:insert、bulk_insert、upsert、boostrap,我们可以根据数据本身属性(append-only或upsert)来选择insert和upsert方式,同时也支持对历史数据的高效同步并嫁接到实时流程。
这里的使用技术组合为flink + hudi-0.11
upsert
这是hudi默认的写入方式,是包含了INSERT和UPDATE两种操作,如何区分两种操作?在数据写入之前会进行一个"tag"过程,即通过查找索引来确定记录的位置,如果是UPDATE操作,那么我们会得到记录的旧位置,否则将会为INSERT的记录分配一个新位置,"相同"的记录被组织在一起,还能进行小文件方面的优化。这种写入方式适合数据会更新(不会重复)而且需要保留变更数据的场景(Changelog Mode),结合flink进行近实时流式计算。
insert
单纯的插入操作,由于不需要判断记录是否属于更新,因此省略了"tag"过程,速度会比upsert快得多,但是不能保证数据是去重的,对于append-only的数据(日志、行为)很适合使用这种方式
- MOR表:采用的小文件优化策略与upsert一样,就是少维护了基于flink状态的全局索引
- COW表:每次写都会直接生成新的parquet文件,写过程并不会进行小文件优化,但可以通过clustering进行来重新调整。
相关文章
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day06】——Kafka4
- 我们真的需要支持5G的云原生边缘吗?
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day07】——Hbase1
- 组织在2021年创建完美云计算战略的三大支柱
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day08】——Hbase2
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day09】——Hbase3
- 鲲鹏展翅 员来有你 | 1024鲲鹏程序员节系列活动深圳站圆满成功!
- 政务数据开放共享 潜藏多维度安全风险
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day10】——Hbase4
- 20+所高校关注“成渝双城”鲲鹏高校行,重庆鲲鹏产业人才生态后劲十足
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day11】——Hbase5
- 什么是5G IoT,它将如何改变连接性?
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day13】——Hbase7
- 对5G和边缘计算发展前景的展望
- 大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day12】——Hbase6
- 对比云计算的发展,边缘计算的机会正在孕育
- 植物转录组学前沿领域:在植物中实现单细胞、空间分辨率的转录组学
- SpringBoot整合Mybatis,你真的了解原理吗?
- Aruba ESP:三大核心价值,加码边缘计算
- Java 8计算两个日期之间的月份