表格統計資料¶
Presto 支援基於統計資料的查詢最佳化。為了使查詢能利用這些最佳化,Presto 必須具有該查詢中表格的統計資訊。
表格統計資料是由連接器提供給查詢規劃器。目前,唯一支援統計資料的連接器是 Hive 連接器。
表格佈局¶
統計資料透過表格佈局公開給查詢規劃器。表格佈局代表表格資料的子集,並包含有關該資料的組織屬性(例如排序順序和分桶)的資訊。
表格可用的表格佈局數量以及這些表格佈局的詳細資訊因每個連接器而異。以 Hive 連接器為例
未分割的表格只有一個表格佈局,代表表格中的所有資料
分割的表格有一系列的表格佈局。每個要掃描的分割區集合代表一個表格佈局。Presto 將嘗試根據查詢中的篩選述詞,選擇包含最少分割區數量的表格佈局。
可用的統計資料¶
Presto 中提供以下統計資料
對於表格
列計數:表格佈局中的總列數
對於表格中的每個欄
資料大小:需要讀取的資料大小
空值比例:空值的比例
相異值計數:相異值的數量
低值:欄中的最小值
高值:欄中的最大值
特定查詢可用的統計資料集合取決於所使用的連接器,並且可能因表格甚至表格佈局而異。例如,Hive 連接器目前不提供有關資料大小的統計資料。
可以使用 Presto SQL 介面,透過 SHOW STATS 命令顯示表格統計資料。對於 Hive 連接器,請參閱 Hive 連接器 文件,以了解如何更新表格統計資料。