優化

適用於:檢查標記是的磚的SQL檢查標記是的磚運行時

三角洲湖數據的優化布局。選擇優化的一個子集,或把數據的數據列。如果你不指定主機托管,裝箱優化執行。

語法

優化table_name(在哪裏謂詞](ZORDER通過(col_name1(,])]

請注意

  • 裝箱優化冪等,也就是說,如果是相同的數據集上運行兩次,第二次運行沒有影響。它旨在產生均衡數據文件對磁盤上它們的大小,但不一定是元組每個文件的數量。然而,這兩個指標往往是相關的。

  • z值是不是冪等但旨在成為一個增量操作。z值的時間是不能保證減少多個運行。然而,如果沒有新的數據隻是z值添加到一個分區,該分區的另一個Z-Ordering不會有任何效果。它旨在產生均衡數據文件對元組的數量,但不一定是磁盤上的數據大小。兩種措施通常是相關的,但可以有情況並非如此,導致斜在優化任務的時期。

請注意

在使用磚運行時,控製輸出文件的大小,設置火花配置spark.databricks.delta.optimize.maxFileSize。默認值是1073741824,大小為1 GB。指定的值104857600將文件大小設置為100 MB。

參數

  • table_name

    識別現有的差值表。必須不包含一個名稱時間規範

  • 在哪裏

    優化匹配給定的分區謂詞的行子集。隻支持過濾器包括分區鍵屬性。

  • ZORDER通過

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

例子

優化事件優化事件在哪裏日期> =“2017-01-01”優化事件在哪裏日期> =current_timestamp()- - - - - -時間間隔1一天ZORDER通過(eventType)

更多的信息優化命令,看到緊湊的數據文件與優化在三角洲湖