Databricks (Spark SQL) 表的索引
Posted
技术标签:
【中文标题】Databricks (Spark SQL) 表的索引【英文标题】:Indexes for Databricks (Spark SQL) tables 【发布时间】:2021-05-03 22:29:06 【问题描述】:很好奇索引在 Databricks 中的工作原理。您是否可以将分区视为索引,因为它有效地将数据组织在分组的子类别中?
【问题讨论】:
【参考方案1】:是的,分区可以看作是一种索引 - 它允许您直接跳转到必要的数据,而无需读取整个数据集。
对于databricks delta,还有另一个功能-Data Skipping。将数据写入 Delta 时,写入器正在收集前 N 列(默认为 32)的统计信息(例如,最小值和最大值)并将该统计信息写入 Delta 日志,因此当我们按索引列过滤数据时,我们知道是否给定文件可能包含或不包含给定数据。 databricks delta 的另一种索引技术是bloom filtering,它显示特定值是否绝对不在文件中,或者可能在文件中。
【讨论】:
以上是关于Databricks (Spark SQL) 表的索引的主要内容,如果未能解决你的问题,请参考以下文章
如果 Databricks 或 Spark SQL 中存在表,则插入
如何在 Spark Databricks 中注册 SQL 函数