数据跳转三角洲湖Z级索引

数据跳转信息当写入三角洲表时自动收集Databricks三角湖在查询时利用此信息(最小值和最大值)提供快速查询用不着配置数据跳转特征在适用时激活效果取决于数据布局最优效果应用顺序排序.

注解

数据bricks运行时间13.2和13.2以上建议Databricks使用聚类实现Delta表布局聚类与Z排序不兼容看吧Delta表使用液聚类.

默认DeltaLake onDatabricks收集前32列统计可使用此值修改表属性delta.dataSkippingNumIndexedCols.添加更多列收集统计 会增加更多管理文件

收集长字符串统计是一项代价高昂的操作为了避免收集长字符串统计,您或可配置表属性delta.dataSkippingNumIndexedCols避免列内长字符串或列内长字符串移动列大于列delta.dataSkippingNumIndexedCols使用远洋表单远洋Column.看吧远端表

为了收集统计目的,嵌套列内的每一字段都被视为单列

是什么Z排序

Z排序技术类将相关资讯归并到同组文件中三角湖自动使用此共定位数据倾斜算法这种行为大幅减少Databricks三角湖需要阅读的数据量对Z顺序数据,您指定列排序区间BY条款:

OptimZE事件处理去哪儿日期显示>=current_timestamp(b)-INTERVAL系统一号白昼区间BY高山市事件类型)

假设列常用于查询前缀,如果列高基值(即大数异值),则使用区间BY.

可指定多列区间BY以逗号分隔表局部性随列增减列上Z排序不收集相关数据将无效并浪费资源这是因为数据跳转需要列局部统计,如最小值、最大值和计数可配置某些列的统计收集方法图列重排序或增加列数收集统计方法

注解

  • Z排序非全能目标递增运算时间顺序不保证多运行减少但如果没有新数据添加到单点为Z的分区中,则该分区的另一Z排序将不产生任何效果

  • Z排序的目的是生成均衡数据文件图数,但不一定是磁盘数据大小两种度量最常相关,但有时情况并非如此,导致优化任务时间偏斜

    举个例子区间BY日期显示最近记录比过去大得多(例如长数组或字符串值)OptimZE任务持续时间会倾斜, 并产生文件大小 。不过,这只是问题OptimZE命令本身不应对后续查询产生任何负面影响