使用自動工作台優化 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用自動工作台優化

自動表優化是一種自我調整功能,它通過應用排序鍵和分發鍵,自動優化表的設計,而無需管理員幹預。通過使用自動化調整表格的設計,您可以更輕鬆地入門並快速獲得最快的性能,而無需花費時間手動調整和實施表優化。

自動表優化持續觀察查詢與表的交互方式。它使用高級人工智能方法選擇排序和分發鍵,以優化羣集工作負載的性能。如果 Amazon Redshift 確定應用密鑰可提高羣集性能,則表將在創建集羣後的幾小時內自動更改,而對查詢的影響最小。

為了利用此自動化功能,Amazon Redshift 管理員會創建一個新表,或者更改現有表,使其能夠使用自動優化。具有分配樣式或排序鍵為AUTO已啟用自動化。當您針對這些表運行查詢時,Amazon Redshift 會確定排序鍵或分配鍵是否會提高性能。如果是這樣,則 Amazon Redshift 會自動修改該表,而無需管理員幹預。如果運行了最少數量的查詢,則會在集羣啟動後的幾小時內應用優化。

如果 Amazon Redshift 確定分配密鑰可提高查詢的性能,則分發樣式為AUTO可以將其分發樣式更改為KEY

啟用自動資料表優化

默認情況下,在未顯式定義排序鍵或分配鍵的情況下創建的表將設置為AUTO。在創建表時,您還可以手動顯式設置排序或分配鍵。如果設置了排序鍵或分配鍵,則表不會自動管理。

要啟用自動優化現有表,請使用 ALTER 語句選項將表更改為AUTO。您可以選擇為排序鍵定義自動化,但不是為分配鍵定義(反之亦然)。如果運行 ALTER 語句將表轉換為自動表,則將保留現有的排序鍵和分配樣式。

ALTER TABLE table_name ALTER SORTKEY AUTO;
ALTER TABLE table_name ALTER DISTSTYLE AUTO;

如需詳細資訊,請參閱 ALTER TABLE

最初,表沒有分配鍵或排序鍵。分佈樣式設置為EVEN或者ALL取決於表格大小。隨着表大小的增長,Amazon Redshift 會應用最佳分發鍵和排序鍵。優化將在運行最少數量的查詢後幾小時內應用。在確定排序鍵優化時,Amazon Redshift 會嘗試優化表掃描期間從磁盤讀取的數據塊。在確定分發樣式優化時,Amazon Redshift 會嘗試優化羣集節點之間傳輸的字節數。

從表中刪除自動表格優化

您可以從自動優化中刪除表。從自動化中刪除表涉及選擇排序鍵或分配樣式。要更改分配樣式,請指定特定的分佈樣式。

ALTER TABLE table_name ALTER DISTSTYLE EVEN;
ALTER TABLE table_name ALTER DISTSTYLE ALL;
ALTER TABLE table_name ALTER DISTSTYLE KEY DISTKEY c1;

要更改排序鍵,可以定義排序鍵或選擇無。

ALTER TABLE table_name ALTER SORTKEY(c1, c2);
ALTER TABLE table_name ALTER SORTKEY NONE;

自動表格優化的監控操作

系統檢視SVV_ALTER_TABLE_RECOMMENDATIONS記錄當前針對表格的 Amazon Redshift 顧問建議。此視圖顯示了針對所有表的建議,那些為自動優化定義的表和不定義的表。

若要檢視資料表是否定義自動優化,請查詢系統檢視SVV_TABLE_INFO。條目僅顯示在當前會話數據庫中可見的表。從集羣創建後的幾小時內開始,建議將每天插入兩次視圖中。推薦可用後,它將在一小時內開始。應用建議後(無論是由 Amazon Redshift 還是由您),該建議將不再顯示在視圖中。

系統檢視SVL_AUTO_WORKER_ACTION顯示了 Amazon Redshift 執行的所有操作的審核日誌,以及表格的上一個狀態。

系統檢視SVV_TABLE_INFO列出了系統中的所有表,以及一個列,用於指示表的排序鍵和分配樣式是否設置為AUTO

如需這些系統檢視的詳細資訊,請參系統檢視