![](/img/trans.png)
[英]Delta Lake (OSS) Table on EMR and S3 - Vacuum takes a long time with no jobs
[英]Delta Table optimize/vacuum
我有文件由 kubernetes 作業(在 prem 上運行)以增量表的形式寫入 adls gen2 容器中。(Kubernetes 上的火花,這有助於我在 adls 上編寫增量表)
每小時流動的文件數量巨大(小文件+大文件),我們想要優化/清理增量表。
是否有一種自動方式/設置可以自動優化和清理增量表。
我已閱讀有關自動優化的這篇文章,但仍不清楚這是否可以幫助我。
謝謝你,拉胡爾·基肖爾
鏈接的文章引用了 Databricks 上的 Delta 的特性,它會在寫入數據時嘗試生成更大的文件 - 這與 OPTIMIZE/VACUUM 的自動執行不同。
即使在 Databricks 上,您也需要顯式運行 VACUUM - 只需創建一個將在選定表上執行 VACUUM 的小型 Spark 作業 - 只需按照 文檔獲取正確的語法和設置即可。
請注意,OPTIMIZE 僅在 Databricks 上可用,如果您使用 OSS Delta,您可以通過讀取全部或部分數據來模擬它,重新分區以獲得最佳文件大小並以overwrite
模式將其寫回。 (僅優化部分數據時要小心 - 使用文檔中所示的replaceWhere
選項)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.