連接 Amazon Redshift 與 AWS Schema Conversion Tool - AWS Schema Conversion Tool

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

連接 Amazon Redshift 與 AWS Schema Conversion Tool

您可以使用 AWS SCT 來最佳化您的 Amazon Redshift 叢集。 AWS SCT 為您提供有關 Amazon Redshift 叢集分發和排序金鑰選擇的建議。您可以將 Amazon Redshift 優化專案視為一個 AWS SCT 專案,其來源和目標指向不同的 Amazon Redshift 叢集。

作為來源資料庫的 Amazon Redshift 權限

使用 Amazon Redshift 作為來源需要以下權限:

  • USAGE開啟 SCHEMA <schema_name>

  • SELECT在ALLTABLES中 SCHEMA <schema_name>

  • SELECT在 PG_ CATALOG 上 STATISTIC

  • SELECT上 SVV _ TABLE _ INFO

  • SELECT上 TABLE STV _ BLOCKLIST

  • SELECT上 TABLE STV _ TBL _ PERM

  • SELECT上 SYS _ SERVERLESS _ USAGE

  • SELECT在 PG_ DATABASE 上 INFO

  • SELECT在 PG_ 上 STATISTIC

在上述範例中,取代 <schema_name> 佔位符與源模式的名稱。

如需將 Amazon Redshift 作為目標所需的權限,請參閱Amazon Redshift 作為目標的許可

連接到 Amazon Redshift 作為源

請使用下列程序連線到您的 Amazon Redshift 來源資料庫。 AWS Schema Conversion Tool

若要連接到 Amazon Redshift 來源資料庫
  1. 在中 AWS Schema Conversion Tool,選擇「新增來源」。

  2. 選擇 Amazon Redshift,然後選擇下一步

    這時系統顯示「添加源」對話框。

  3. 在「連線名稱」中,輸入資料庫的名稱。 AWS SCT 在左側面板的樹狀結構中顯示此名稱。

  4. 使用資料庫認證來源 AWS Secrets Manager 或手動輸入:

    • 若要使用來自 Secrets Manager 的資料庫認證,請遵循下列指示:

      1. 在「機AWS 密」中,選擇密碼的名稱。

      2. 選擇填入來自 Secrets Manager 的資料庫連線對話方塊中自動填入所有值。

      如需使用來自 Secrets Manager 之資料庫認證的資訊,請參閱AWS Secrets Manager 中的配置 AWS Schema Conversion Tool

    • 若要輸入 Amazon Redshift 來源資料庫的連線資訊,請使用下列指示:

      參數 動作
      伺服器名稱

      輸入來源資料庫伺服器的網域名稱系統 (DNS) 名稱或 IP 位址。

      伺服器連接埠

      輸入用於連接到來源資料庫伺服器的連接埠。

      資料庫

      輸入 Amazon Redshift 資料庫的名稱。

      使用者名稱密碼

      輸入要連線到來源資料庫伺服器的資料庫認證。

      AWS SCT 只有當您選擇連線至專案中的資料庫時,才會使用密碼來連線至來源資料庫。為了防止公開來源資料庫的密碼,預設 AWS SCT 不會儲存密碼。如果您關閉 AWS SCT 專案再重新開啟,系統會在需要時提示您輸入密碼以便連接到您的來源資料庫。

      使用 SSL

      選擇此選項可使用安全通訊端層 (SSL) 連線到資料庫。在SSL標籤上提供下列適用的其他資訊:

      • 驗證伺服器憑證:選取此選項可使用信任存放區驗證伺服器憑證。

      • 信任存放區:包含憑證的信任存放區的位置。要使此位置顯示在此處,請確保將其添加到 「全局」設置中。

      如需 Amazon Redshift SSL 支援的詳細資訊,請參閱設定連線的安全選項

      儲存密碼

      AWS SCT 創建一個安全的文件庫來存儲SSL證書和數據庫密碼。開啟此選項後,您可以儲存資料庫密碼並快速連線到資料庫,而無需輸入密碼。

      Redshift 驅動程式路徑

      輸入用於連接至來源資料庫的驅動程式路徑。如需詳細資訊,請參閱安裝JDBC驅動程式 AWS Schema Conversion Tool

      如果您在全域專案設定中存放驅動程式路徑,驅動程式路徑不會顯示在連線對話方塊中。如需詳細資訊,請參閱在全域設定中儲存驅動程式路徑

  5. 選擇「測試連線」以確認是否 AWS SCT 可以連線到來源資料庫。

  6. 選擇「Connect」以連線到來源資料庫。

Amazon Redshift 優化設置

若要編輯 Amazon Redshift 最佳化設定,請在中選擇 [設定] AWS SCT,然後選擇 [轉換設定]。從上面的列表中,選擇 Amazon Redshift,然後選擇 Amazon Redshift-Amazon Redshift。 AWS SCT 顯示 Amazon Redshift 優化的所有可用設置。

Amazon Redshift 優化設置 AWS SCT 包括以下選項:

  • 用於限制轉換後代碼中行動項目的註釋數量。

    針對所選嚴重性及更高之行動項目的已轉換程式碼中新增註解,請選擇行動項目的嚴重性。 AWS SCT 在已轉換的程式碼中加入所選嚴重性及更高嚴重性之行動項目的註解。

    例如,若要將已轉換程式碼中的註解數量降到最低,請選擇僅限錯誤。若要在已轉換的程式碼中包含所有動作項目的註解,請選擇所有訊息

  • 設定 AWS SCT 可套用至目標 Amazon Redshift 叢集的表格數目上限。

    對於目標 Amazon Redshift 叢集的表格數目上限,請選擇 AWS SCT 可套用至 Amazon Redshift 叢集的表格數目。

    Amazon Redshift 的配額會限制不同叢集節點類型的使用資料表。如果選擇自動,請根據節點類型 AWS SCT 決定要套用至目標 Amazon Redshift 叢集的表格數目。選擇性地手動選擇值。如需詳細資訊,請參閱《Amazon Redshift 管理指南》中的 Amazon Redshift 中的配額和限制

    AWS SCT 轉換所有來源表格,即使表格數目超過 Amazon Redshift 叢集所能存放的數量也一樣。 AWS SCT 將轉換後的代碼存儲在項目中,並且不將其應用於目標數據庫。如果您在套用轉換後的程式碼時達到表格的 Amazon Redshift 叢集配額,則 AWS SCT 會顯示警告訊息。此外,請將表格 AWS SCT 套用至目標 Amazon Redshift 叢集,直到表格數量達到上限為止。

  • 若要選擇移轉策略。

    AWS 建議使用不同的叢集做為最佳化專案的來源和目標。在 Amazon Redshift 優化程序開始之前,您需要建立一份來源 Amazon Redshift 叢集的副本。您可以將來源資料包含在此副本中,或建立空叢集。

    對於移轉策略,請選擇移轉至副本,將來源叢集中的資料包含在目標叢集中。

    對於移轉策略,請選擇 [移轉至乾淨] 以檢閱最佳化建議。接受這些建議後,請將來源資料移轉至目標叢集。

  • 將壓縮應用於 Amazon Redshift 表列。若要這樣做,請選取 [使用壓縮編碼]。

    AWS SCT 使用預設的 Amazon Redshift 演算法,自動將壓縮編碼指派給資料行。如需詳細資訊,請參閱 Amazon Redshift 資料庫開發人員指南中的壓縮編碼

    根據預設,Amazon Redshift 不會將壓縮套用至定義為排序金鑰和分配金鑰的資料行。您可以變更此行為,並將壓縮套用至這些資料行。若要這麼做,請選取 [使用KEY資料行的壓縮編碼]。只有在選取 [使用壓縮編碼] 選項時,才能選取此選項。

  • 要使用自動表優化工作。

    自動表格最佳化是 Amazon Redshift 中的一項自我調整程序,可自動優化資料表的設計。如需詳細資訊,請參Amazon Redshift 資料庫開發人員指南中的使用自動表格最佳化

    若只要在自動表格最佳化上使用,請選擇左窗格中的 [最佳化策略]。然後選取 [使用 Amazon Redshift 自動表格調整],並針對 [初始金鑰選取策略] 選取選取選取選取

  • 若要使用您的策略選擇排序和分配鍵。

    您可以使用 Amazon Redshift 中繼資料、統計資訊或這兩個選項來選擇排序和分發金鑰。對於「最佳化策略」標籤上的「初始金鑰選取策略」,請選擇下列其中一個選項:

    • 使用中繼資料,忽略統計資訊

    • 忽略中繼資料,使用統計資訊

    • 使用中繼資料和統計資訊

    根據您選擇的選項,您可以選取最佳化策略。然後,針對每個策略輸入值 (0—100)。這些值定義每個策略的權重。使用這些加權值, AWS SCT 定義每個規則如何影響分佈和排序索引鍵的選擇。預設值以 AWS 移轉最佳作法為基礎。

    您可以為尋找小型資料表策略定義小型資料表的大小。對於「最小表格列計數」和「表格列數上限」,請輸入表格中的最小和最大列數,將其定義為小型表格。 AWS SCT 將ALL分佈型式套用至小型表格。在這種情況下,整個表的副本會分發到每個節點。

  • 若要設定策略詳細資訊。

    除了定義每個最佳化策略的權重之外,您還可以設定最佳化設定。為此,請選擇「轉換優化」。

    • 在「排序索引鍵欄限制」中,輸入排序索引鍵中的欄數上限。

    • 在「傾斜臨界值」中,為欄輸入傾斜值的百分比 (0—100)。 AWS SCT 從分配索引鍵的候選清單中排除偏斜值大於臨界值的欄。 AWS SCT 將欄的傾斜值定義為最常見值出現次數與記錄總數的百分比比率。

    • 對於查詢歷史記錄表格中的前 N 個查詢,請輸入要分析的最常用查詢數目 (1—100)。

    • 在選取統計資料使用者中,選擇您要分析其查詢統計資料的資料庫使用者。