数据湖-Iceberg-源码学习-Kernel-Table-数据操作
一、概述
二、设计
2.1. 查询
Table 接口里提供了数据查询的相应的方法:
2.2. 插入
Table 接口里提供了数据查询的相应的方法: $newFastAppend$ 方法 和 $newAppend$ 方法。
$newFastAppend$ 方法会避免一些额外工作,加速 commit 的过程,但如果过多使用,可能造成 split 规划过程缦慢。
那么什么是额外的工作呢?🤔️
在 Iceberg 对 AppendFiles 的两个实现类 FastAppend\MergeAppend 中可以分析出,这些过程主要是 manifest 文件合并等操作,它会减少元数据的文件数量,提升扫描查询规划的速度。
2.2.1. newAppend()
2.2.2. newFastAppend()
2.3. 更新
Table 接口里提供了数据更新的相应的方法:
2.4. 删除
Table 接口里提供了数据更新的相应的方法: $newDelete$ 方法。
1 | DeleteFiles newDelete(); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Joker!
评论
ValineTwikoo











