【问题标题】:What are the benefits of using Hyperspace indexes over Z-ordering in deltaLake?在 deltaLake 中使用超空间索引而不是 Z 排序有什么好处?
【发布时间】:2021-07-11 10:45:32
【问题描述】:

我在 Azure Databricks 中以增量表格式存储流数据。为了优化,我目前正在使用 Z 排序。与 Z 排序相比,使用超空间索引子系统有什么好处吗?

【问题讨论】:

  • 我相信这是一个正确的问题——它不是关于“什么更好”,而是使用它的好处是什么

标签: apache-spark databricks azure-databricks delta-lake z-order


【解决方案1】:

免责声明:我自己没有使用 Hyperspace,只是阅读文档和代码示例。

Hyperspace 按功能更接近 Databricks Delta 实现的 Data Skipping 功能 - 它只允许读取必要的数据。但是在 Databricks 上,数据在写入时会自动进行索引,而在 Hyperspace 中,您需要构建索引并维护它们。

ZOrder 是一个不同的功能 - 它优化了数据的放置,因此经常一起使用的数据更有可能真正放置在一起,因此您将读取更少的文件。超空间没有这个 - 它只是索引数据,数据的位置由底层文件格式定义。

附:这是来自 Databricks 的关于数据跳过和 ZOreder 的精彩 blog post

【讨论】:

  • 您是否参考了以下内容:“但在 Databricks 上,数据的索引在写入时会自动发生”?我不确定这是否一定是真的。
  • 自动收集前 N 列的统计信息(可配置,默认为 32)。布隆过滤器也是如此
猜你喜欢
  • 2012-03-16
  • 2010-09-14
  • 2022-08-03
  • 2012-07-16
  • 2013-11-05
  • 2012-01-26
  • 2012-05-08
  • 1970-01-01
  • 2016-05-26
相关资源
最近更新 更多