全部產品
Search
文件中心

Database Autonomy Service:流量回放和壓測

更新時間:Jul 27, 2024

面對即將到來的短期業務高峰或資料庫結構變更(尤其是索引變更)時,您可以通過流量回放與壓測功能,確認資料庫執行個體規格是否需要擴容,並驗證在真實業務情境下的實際效果,降低上線後引發故障的風險。此外,在資料庫發生故障且無法定位原因時,可以利用複製庫複現故障情境,以便更好地定位故障原因。

前提條件

  • 來源資料庫支援:

    • RDS MySQL

    • PolarDB MySQL版

      說明

      不支援PolarDB MySQL版企業版單節點執行個體。

    • PolarDB-X 2.0。

  • 目標資料庫執行個體為:

    • RDS MySQL

    • PolarDB MySQL版

    • PolarDB-X 2.0。

  • 來源資料庫執行個體與目標資料庫執行個體均已接入DAS,詳情請參見接入阿里雲資料庫執行個體

  • 來源資料庫執行個體需開啟DAS企業版,詳情請參見管理DAS經濟版和企業版

    說明

    如果您想分析壓測前後,來源資料庫執行個體與目標資料庫執行個體上SQL模板的執行效能差異,目標資料庫執行個體也需要開啟DAS企業版。SQL模板的執行效能差異可用來應對資料庫引擎升級、規格切換等業務情境。

說明

PolarDB-X 2.0目前僅支援華東1(杭州)、華東2(上海)、華北2(北京)、華南1(深圳)和新加坡地區。

適用情境

  • 為應對即將到來的短期業務高峰,驗證當前資料庫執行個體規格是否需要擴容。

  • 資料庫結構變更後(尤其是索引變更後),驗證在真實業務情境下的效果,降低變更上線後引發故障的風險。

  • 資料庫發生故障後,無法在發生故障時定位到原因,可以通過智能壓測功能,在複製庫上複現故障情境,定位故障原因。

注意事項

  • 為減少網路延遲對壓測的影響,壓測用戶端和目標執行個體需要在同一個地區。

    說明

    建議將壓測用戶端和目標執行個體放入同一個專用網路。

  • 進行壓測前,檢查壓測用戶端與目標執行個體間的連通性,確保壓測用戶端的流量可以正常發送到目標執行個體。

費用說明

  • DAS企業版購買費用請參見計費概覽

  • 壓測任務建立後,計費項目如下:

    • 若您選擇通過備份恢複方式進行資料移轉,系統將根據您選擇的目標資料庫類型自動建立一個隨用隨付的資料庫執行個體,費用詳情請參見對應資料庫的費用說明。

    • 若您在進階設定中選擇DAS自動購買和部署,系統將根據源庫QPS和壓測倍率購買合適規格的隨用隨付ECS執行個體,費用詳情請參見ECS計費概覽

    說明

    由於系統購買了隨用隨付執行個體,建議您在壓測任務結束後手工刪除,避免多收取費用。

操作步驟

  1. 登入DAS控制台

  2. 在左側導覽列中,單擊執行個體監控

  3. 找到目標執行個體,單擊執行個體ID,進入目標執行個體詳情頁。

  4. 在左側導覽列單擊請求分析 > SQL洞察和審計,然後在右側開啟的頁面單擊流量回放和壓測

  5. 在右側單擊建立任務。在建立任務對話方塊中,設定以下參數。

    1. 選擇任務類型回放流量壓測,並輸入任務名稱

      說明

      請確認該回放流量時間段內,源庫的SQL洞察和審計已開啟。

    2. 源端資訊地區框中,設定以下參數後單擊下一步

      配置

      說明

      執行個體來源

      選擇阿里雲資料庫為目標執行個體的來源。

      資料庫類型

      您的資料庫執行個體類型,您可在如下三種中選擇其中一種:

      • MySQL:表示RDS MySQL執行個體。

      • PolarDB for MySQL:表示PolarDB MySQL版執行個體。

      • PolarDB-X:表示PolarDB-X 2.0執行個體。

        說明

        PolarDB-X 2.0目前僅支援華東1(杭州)、華東2(上海)、華北2(北京)、華南1(深圳)和新加坡地區。

      源執行個體

      選擇源執行個體的執行個體ID。

      進階設定

      如果您需要對源執行個體的部分資料庫進行智能壓測,請單擊進階設定,配置目標資料庫的資料庫帳號密碼,擷取資料庫資訊後,選擇目標資料庫進行智能壓測。

    3. 目標端表結構和數據產生方式地區框中,設定以下參數。

      配置

      說明

      資料庫類型

      目標資料庫執行個體的類型,目前支援:

      • MySQL:表示RDS MySQL執行個體。

      • PolarDB for MySQL:表示PolarDB MySQL版執行個體。

      • PolarDB-X:表示PolarDB-X 2.0執行個體。

        說明

        PolarDB-X 2.0目前僅支援華東1(杭州)、華東2(上海)、華北2(北京)、華南1(深圳)和新加坡地區。

      基準資料移轉

      您可根據源執行個體基準資料是否已遷移至目標執行個體,選擇以下四種遷移方式:

      • 通過備份恢複:目標執行個體基於時間點或者備份組複製源執行個體。

        說明

        DAS會自動購買和源執行個體規格一致的隨用隨付執行個體,並將備份恢複到該執行個體。

      • 已完成資料移轉:已經將需要進行流量回放的時間段內源執行個體的表結構和資料同步至目標執行個體。

        說明

        目標執行個體的表結構和資料,應與源執行個體保持一致,以保證壓測流量正常執行。

      • 輸入DTS任務ID:已在DTS控制台建立資料移轉傳輸任務,將源執行個體的資料同步到目標執行個體。

        說明

        關於DTS資料移轉,詳情請參見資料移轉

      • 建立DTS遷移任務:直接建立資料移轉傳輸任務,無需到DTS控制台操作。

      說明
      • 當源執行個體為阿里雲資料庫時,您可以選擇以上四種方式中的其中一種,由於壓測任務建立後,系統會自動購買和源庫規格一致的隨用隨付執行個體,並將資料恢複到該執行個體,建議您選擇通過備份恢複

      • 當源執行個體為自建資料庫時,僅可選擇已完成資料移轉輸入DTS任務ID建立DTS遷移任務中的一種。

      還原方式

      選擇還原方式,您可以根據需要選擇如下一種方式:

      • 按時間點

      • 按備份組

      說明
      • 基準資料移轉通過備份恢複時,需要配置此參數。

      • 若選擇還原方式按備份組,需要對DAS服務關聯角色進行授權,在跳出的對話方塊中,單擊確定即可。

      選擇還原時間/備份組

      根據還原方式選擇還原的具體時間或備份組。

      說明

      基準資料移轉通過備份恢複時,需要配置此參數。

      遷移任務ID

      源執行個體資料同步到目標執行個體的DTS資料移轉傳輸任務ID。

      說明

      基準資料移轉輸入DTS任務ID時,需要配置此參數。

      DTS遷移任務規格

      選擇DTS遷移任務規格。

      說明

      基準資料移轉建立DTS遷移任務,需要配置此參數。

      目標執行個體

      選擇目標執行個體,系統預設訪問目標執行個體的主地址。

      說明

      基準資料移轉已完成資料移轉輸入DTS任務ID建立DTS遷移任務時,需要配置此參數。

      目標端高許可權帳號

      目標執行個體的高許可權帳號名稱和密碼。

      說明

      基準資料移轉已完成資料移轉輸入DTS任務ID建立DTS遷移任務時,需要配置此參數。

      源端高許可權帳號

      源端執行個體的高許可權帳號名稱和密碼。

      說明

      基準資料移轉通過備份恢複建立DTS遷移任務時,需要配置此參數。

    4. 壓測基礎設定地區框中,設定以下參數。

      配置

      說明

      選擇回放流量

      選擇回放流量的時間段。

      說明

      該時間段內,源執行個體已開啟SQL洞察和審計功能。

      回放速度

      源執行個體流量在目標執行個體上的回放速度,如1倍速表示原速回放。 回放倍數必須是正整數,取值:1~30。

      說明

      如果您設定的回放速度超過目標執行個體規格支援的極限速度,壓測任務將按照目標執行個體支援的極限速度進行回放。

    5. 進階設定地區框中,選擇部署壓測程式的ECS

      • 您可以選擇DAS自動購買和部署,系統將根據源庫QPS和壓測倍率購買合適規格的隨用隨付ECS執行個體。

      • 您也可以通過新增按鈕,選擇需要部署壓測程式的ECS執行個體,產生部署命令並複製到該執行個體上運行。並且您還需要執行sudo yum install -y java-1.8.0-openjdk命令在新增的ECS執行個體上部署Java用戶端,用戶端版本建議為Java8。

  6. 單擊下一步,校正成功後單擊確定建立壓測任務。

查看智能壓測結果

  1. 壓測任務建立後,您可以返回工作中樞頁查看壓測任務的詳情。

  2. 您可在右側的操作欄進行如下操作:

    • 單擊詳情進入智能壓測詳情頁,查看壓測任務的執行情況和壓測報告,具體說明如下表所示。

      參數

      說明

      概覽

      源執行個體與目標執行個體在壓測任務前後的基本資料對比。

      效能趨勢對比

      壓測任務前後,在不同效能指標上源執行個體與目標執行個體的差異對比。

      SQL對比

      若目標執行個體在壓測前已開啟自治功能,可分析壓測前後,源執行個體與目標執行個體上SQL模板的執行效能差異對比。

      說明

      SQL對比可用來應對資料庫引擎升級、規格切換等業務情境。

      參數對比

      源執行個體與目標執行個體在重要參數上的差異對比。

    • 若您想提前終止目標壓測任務,請單擊終止

    • 單擊刪除即可刪除您建立的壓測任務。

    ll

後續步驟

  • 當壓測任務結束之後,在智能壓測詳情頁,確認無需再次壓測時,您可釋放對應的壓測ECS機器和執行個體。

  • 如果手動開啟了來源資料庫的SQL洞察和審計,壓測結束後,請關閉該功能,詳細參照請參見關閉SQL洞察和審計

  • 如果面對即將到來的短期業務高峰,需要擴容資料庫執行個體,您可以根據執行個體類型開啟自動效能擴充或者定時自動Auto Scaling

相關API

API

描述

CreateCloudBenchTasks

建立壓測任務。

RunCloudBenchTask

執行壓測任務。

StopCloudBenchTask

停止壓測任務。

CreateAdamBenchTask

在ADAM上建立壓測任務。

DeleteCloudBenchTask

刪除壓測任務。

DeleteStopGateway

刪除已停止的DBGateway中繼資料。

DescribeCloudbenchTaskConfig

查詢壓測任務配置資訊。

DescribeCloudbenchTask

查詢壓測任務。

DescribeCloudBenchTasks

查詢壓測工作清單。