取消
顯示的結果
而不是尋找
你的意思是:

z值加快閱讀一個文件嗎?

埃裏克
重視貢獻二世

情境:我們有一個部分每個日期和碰巧每個分區結束(優化後)*一* 128 mb的文件。我們約會分區,zorder userid,和我們的查詢是類似“找到最大的價值列一個userid > = somedate = X和日期”。

在這種情況下zordering幫助以任何方式嗎?很明顯,我們將不得不讀每個分區後somedate美元,但是zordering userid以某種方式幫助引發閱讀時在每一個分區(記住每個分區是一個文件),或者我們需要讀* *和掃描所有剩餘128 mb的每個分區即使我們zoptimize嗎?

1接受解決方案

接受的解決方案

werners1
尊敬的貢獻者三世

z值將確保你需要閱讀多個文件,這些文件是共存的。

對於單個文件這無關緊要總是當地本身作為一個單獨的文件。

如果你確定火花程序隻會讀取一個文件,你不需要z值。

但它可能是你的三角洲湖表也讀到另一個程序,不使用分區過濾器。然後它將變得有趣,或如果您有多個文件每個分區。

z值和分區是互補的技術。

z值列尤其有趣,你不能/不想分區(高基數)

在原帖子查看解決方案

6個回答6

Kaniz
社區經理
社區經理

你好@埃裏克!我的名字叫Kaniz,我這裏的技術主持人。很高興認識你,謝謝你的問題!看看你的同行在社區中有一個回答你的問題。否則我將盡快給你回電。謝謝。

Kaniz
社區經理
社區經理

嗨@Erik,

這將是偉大的如果你能分享CSV文件。然而:-

這個頁麵給列可以用於ZORDER指南。

這個頁麵提供指導如何選擇正確的分區列。

埃裏克
重視貢獻二世

@Kaniz所有我讀過的文檔。問題是分區和zordering不是一般的指導方針,很特別的(潛在的)好處zordering當閱讀單獨的文件。解釋:zordering的唯一的優勢是,它允許跳過整個文件,也還是有一些好處後要讀取一個文件被選中。它允許更快的搜索在選定的文件,或者隻讀取的文件?

Hubert_Dudek1
尊敬的貢獻者三世

ZORDER由

把同一組文件中列信息。使用Co-locality三角洲湖data-skipping算法極大地減少了需要讀取的數據量。您可以指定多個列ZORDER的逗號分隔列表。然而,當地的有效性下降與每個額外的列。

它是來自https://docs.www.eheci.com/spark/latest/spark-sql/language-manual/delta-optimize.html

所以δ文件一旦分區消失有z值是非常重要的,因為它將處理有效地查詢,所以你需要:

優化數據ZORDER (userid,日期)

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map