全部產品
Search
文件中心

PolarDB:並行資源控制策略配置

更新時間:Aug 09, 2025

PolarDB支援通過多種策略控制單個查詢或全域的總並行度,以保證在資源負載允許的情況下選擇合理的並行度。

說明

叢集參數在PolarDB控制台上都已加上MySQL設定檔的相容性首碼loose_。如果您需要在PolarDB控制台修改參數,請選擇帶loose_首碼的參數進行修改。

並行查詢排隊策略

參數

說明

loose_max_parallel_workers

單個節點內允許同時啟動並執行最大並行worker線程數。超過loose_max_parallel_workers後新的並行查詢將進入排隊等待,任務隊列調度策略為先入先出(FIFO)。

loose_queuing_parallel_degree_limit

隊列中允許的最大並行度。隊列中並行Worker的總數量超過loose_queuing_parallel_degree_limit後,則認為隊列滿,後續查詢將被回退為串列執行。

loose_pq_max_queuing_time

查詢在隊列中的最大等待時間,如果查詢在隊列中等待時間超過該值,會被立即移除隊列並回退為串列執行。

並行度控制策略

參數

層級

說明

loose_max_parallel_workers

Global

最大允許同時啟動並執行並行worker線程數,超過該值後並行查詢需要進入任務隊列中等待。

  • 取值範圍:[1-10000]

  • 預設值為CPU核心數的2倍

說明

loose_max_parallel_workers參數在Serverless叢集中會根據節點規格的彈性擴充/收縮而進行調整。

loose_queuing_parallel_degree_limit

Global

最大允許同時進入並行排隊的並行度總和,超過該值後查詢將被禁止並行查詢,回退為串列執行。

  • 取值範圍:[0-10000]

  • 預設值:64

loose_pq_max_queuing_time

Global、Session

並行查詢在隊列中最大等待時間,等待時間超出該值後直接回退為串列執行。

  • 取值範圍:[0-18446744073709551615]

  • 預設值:200

  • 單位:毫秒

相關統計資訊:

變數名

層級

描述

PQ_refused_over_total_workers

Global、Session

由於總Worker數限制沒有啟用並行的查詢數。

PQ_refused_over_max_queuing_time

Global、Session

由於並行查詢排隊逾時沒有啟動並行的查詢數。

Total_running_parallel_workers

Global

當前正在啟動並執行Parallel Worker的數目。

系統資源控制策略

PolarDB將根據資料庫的CPU、記憶體或IOPS資源的使用率來判斷是否禁止並行查詢計劃。同時,在需要進行並存執行的情況下,支援自訂並行查詢的並行度選擇策略。

參數

層級

說明

loose_auto_dop_cpu_pct_hwm

Global

CPU使用率閾值。若CPU使用率超過閾值,PolarDB會禁止並行查詢計劃。

  • 取值範圍:0~100

  • 預設值:70

loose_auto_dop_mem_pct_hwm

記憶體使用量率閾值。若記憶體使用量率超過閾值,PolarDB會禁止並行查詢計劃。

  • 取值範圍:0~100

  • 預設值:90

loose_auto_dop_iops_pct_hwm

IOPS使用率閾值。若IOPS使用率超過閾值,PolarDB會禁止並行查詢計劃。

  • 取值範圍:0-100

  • 預設值:80