Delta-Lake
Delta-Lake 简介
Delta Lake 是一个存储层, 提供ACID事务
spark-shell load Dela-lake
bin/spark-shell –packages io.delta:delta-core_2.12:0.1.0
spark-shell 可以通过–packages 的方式下载pkg, 并对其进行加载
1 | val data = spark.range(0, 5) |
上面的代码将数据写入/tmp/delta-table 目录
可以发现在此目录中生成了
可以看到生成的文件通过snappy 进行了压缩, snappy 是google开源的压缩解压算法,主要优点是压缩解压的效率
文件格式为parquet, parquet 是一种列存储格式
并通过crc 的方式进行校验
可以通过在save是指定mode 的方式来对数据进行更新, overwrite mode 为更新模式
当不指定时,默认为新创建,当创建的目录已经存在,会抛出already exists 异常
读取时,可以通过option 的方式指定version , 所以存储系统本身是版本化的
也可以通过stream 的方式对其进行写入和读取
参考链接
- 标题: Delta-Lake
- 作者: The Redefine Team
- 创建于 : 2019-05-08 10:29:53
- 更新于 : 2023-05-23 18:52:03
- 链接: https://redefine.ohevan.com/2019/05/08/Delta-Lake/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论