1 大厂背书
databricks宣布把delta-io共享给apache基金会 并且delta-io从以前打杂的0.x版本升级为1.x 随后就是bug的各种修复和新功能的增加.
release note可以看: Releases · delta-io/delta · GitHub
2 并发控制(解决了多任务并发读写表时的 读写冲突)
hive/spark 如果多个任务同时读写hive表会导致报错或者丢数据.
Concurrency Control — Delta Lake Documentation
3 支持 幂等写入
Table streaming reads and writes — Delta Lake Documentation
4 支持update delete merge
如果是hive 更新一条数据需要覆盖写入全表或者整个分区,操作成本极高,耗时很长,但是delta-io因为支持ACID,就很方便和轻量化.
5 方便集成
好烦啊 我怎么把delta-io和hive整合起来(delta-io的元数据存储在hive metastore中)?
Apache Hive to Delta Lake integration — Delta Lake Documentation
按照官网配置,如果你嫌麻烦,甚至可以不需要,delta-io支持基于hdfs目录建表,即 你只要maven中加入delta-io的依赖,并且spark版本对应(新版delta-io2.x需要spark3.3左右版本),并且有个hdfs,那么你可以直接把你的delta表存储在指定的hdfs路径上
6 方便调试/测试
spark-shell:
Quickstart — Delta Lake Documentation
Quickstart — Delta Lake Documentation
spark-sql:
Quickstart — Delta Lake Documentation
pySpark shell:
Quickstart — Delta Lake Documentation
scala/java项目的maven:
Quickstart — Delta Lake Documentation
2023-05-02 主流数据湖对比
delta-io
hudi