bucket是Apache Spark SQL中的一種優化技術。根據從一個或多個桶列派生的值,在指定數量的桶之間分配數據。bucket通過在表連接等下遊操作之前對數據進行洗牌和排序來提高性能。這樣做的代價是由於變換和排序造成的初始開銷,但是對於某些數據轉換,這種技術可以通過避免以後的變換和排序來提高性能。
這種技術對於維表非常有用,維表是經常使用的包含主鍵的表。當涉及大表和小表的連接操作頻繁時,它也很有用。
下麵的示例筆記本顯示了在執行分桶表和非分桶表的連接時物理計劃的差異。
學習如何通過使用桶來提高Databricks的性能。
bucket是Apache Spark SQL中的一種優化技術。根據從一個或多個桶列派生的值,在指定數量的桶之間分配數據。bucket通過在表連接等下遊操作之前對數據進行洗牌和排序來提高性能。這樣做的代價是由於變換和排序造成的初始開銷,但是對於某些數據轉換,這種技術可以通過避免以後的變換和排序來提高性能。
這種技術對於維表非常有用,維表是經常使用的包含主鍵的表。當涉及大表和小表的連接操作頻繁時,它也很有用。
下麵的示例筆記本顯示了在執行分桶表和非分桶表的連接時物理計劃的差異。