Apache Iceberg跟踪超大规模表的新格式
Apache Iceberg 是一种新的表格格式,用于存储和分析大型的、移动缓慢的表格数据。它的工作方式类似于 SQL 表,它旨在改进内置在 Hive、Presto 和 Spark 中的事实上的标准表布局。
对于使用者来说:
- 模式演化(Schema evolution)支持添加、删除、更新或重命名,并且没有副作用
- 隐藏分区(Hidden partitioning)可以防止导致错误提示或非常慢查询的用户错误
- 分区布局演变(Partition layout evolution)可以随着数据量或查询模式的变化而更新表的布局
- 时光穿梭(Time travel)可使用完全相同的表快照实现重新查询,或者使用户轻松检查更改
- 版本回滚使用户可以通过将表重置为良好状态来快速纠正问题
可靠性与性能方面,Iceberg 可用于生产中,它的一个表可以包含数十 PB 的数据,即使没有分布式 SQL 引擎也可以读取这些巨大规模的表。
- 扫描速度很快,无需使用分布式 SQL 引擎即可读取表或查找文件
- 高级过滤,使用表元数据对数据文件以分区和列级统计信息进行修剪
Iceberg 旨在解决最终一致的云对象存储中的正确性问题:
- 可与任何云存储一起使用,并且通过避免列出(list)和重命名,可以在 HDFS 中减少 NN 拥塞
- 可序列化的隔离,表更改是原子性的,对外永远不会有部分更改或未提交的更改
- 多个并发写入器使用乐观并发,即使写入冲突,也将重试以确保兼容更新成功
评论
Apache Arrow内存数据交换格式
ApacheArrow是Apache基金会下一个全新的开源项目,同时也是顶级项目。它的目的是作为一个跨平台的数据层来加快大数据分析项目的运行速度。用户在应用大数据分析时除了将Hadoop等大数据平台作
Apache Arrow内存数据交换格式
0
Apache ParquetHadoop 柱状存储格式
Parquet是一种面向列存存储的文件格式,Cloudera的大数据在线分析(OLAP)项目Impala中使用该格式作为列存储。ApacheParquet是一个列存储格式,主要用于Hadoop生态系统
Apache ParquetHadoop 柱状存储格式
0
Apache ORC列式存储格式
ApacheORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自ApacheHive,用于降低Hadoop数据存储空间和加速Hive查询速度。ORC(Optim
Apache ORC列式存储格式
0
Apache ParquetHadoop 柱状存储格式
Parquet是一种面向列存存储的文件格式,Cloudera的大数据在线分析(OLAP)项目Impa
Apache ParquetHadoop 柱状存储格式
0