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

分區修剪與生成的列

andrej
新的貢獻者二世

我有一個大表包含一個date_time列。

列生成的表包含2年,月從date_time值中提取和用於分區。

我有以下問題。

如果我運行查詢

SELECT *

從表

其中date_time > <“2022-07-09”“2022-07-01”和date_time

這個查詢將掃描所有文件

如果我修改查詢

SELECT *

從表

其中date_time > <“2022-07-09”“2022-07-01”和date_time

= 2022年和月= 7

現在修剪會得到應用和查詢將運行~ 20倍。

我會期待,鑒於date_time和列之間的關係定義的年和月,修剪隻能被應用即使date_time在where子句中指定。

我遺漏了什麼東西在我的配置還是我的理解是不正確的?

謝謝,

Andrej

4回複4

匿名
不適用

分區修剪隻會使用生成的列時即發生。“年”和“月”謂詞。

你可以考慮使用布隆過濾器文件由zordering修剪或索引。

werners1
尊敬的貢獻者三世

沒有你的理解是正確的。

然而有一些限製,您可以找到在這裏(有趣的部分開始段落開始”與光子磚運行時8.4及以上的支持,三角洲湖可以生成分區過濾器…”)

andrej
新的貢獻者二世

你好,謝謝你的回複。

@Werner Stinckens我讀到的文章,但重讀之後,我意識到,光子的支持是必需的。

會再試一次。謝謝!

Vidula
尊敬的貢獻者

嗨@Andrej Znidarsic

希望一切都好!隻是想檢查如果你能解決你的問題,你會很高興分享解決方案或答案標記為最佳?其他的請讓我們知道如果你需要更多的幫助。

我們很想聽到你的聲音。

謝謝!

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

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

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

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

Baidu
map