openGauss學(xué)習(xí)筆記-224 openGauss性能調(diào)優(yōu)-系統(tǒng)調(diào)優(yōu)-數(shù)據(jù)庫系統(tǒng)參數(shù)調(diào)優(yōu)-數(shù)據(jù)庫并發(fā)隊列參數(shù)調(diào)優(yōu)224.1 全局并發(fā)隊列224.2 局部并發(fā)隊列
openGauss學(xué)習(xí)筆記-224 openGauss性能調(diào)優(yōu)-系統(tǒng)調(diào)優(yōu)-數(shù)據(jù)庫系統(tǒng)參數(shù)調(diào)優(yōu)-數(shù)據(jù)庫并發(fā)隊列參數(shù)調(diào)優(yōu)
數(shù)據(jù)庫提供兩種手段進行并發(fā)隊列的控制,全局并發(fā)隊列和局部并發(fā)隊列。
224.1 全局并發(fā)隊列
全局并發(fā)隊列采用GUC參數(shù)max_active_statements控制數(shù)據(jù)庫主節(jié)點上運行并發(fā)執(zhí)行的作業(yè)數(shù)量。采用全局并發(fā)隊列機制將控制所有普通用戶的執(zhí)行作業(yè),不區(qū)分復(fù)雜度,即執(zhí)行語句都將作為一個執(zhí)行單元,當(dāng)并發(fā)執(zhí)行的作業(yè)數(shù)量達到此參數(shù)閾值時,將進入隊列等待。對于管理員執(zhí)行的作業(yè),不走全局并發(fā)控制邏輯。
設(shè)置該GUC參數(shù)數(shù)值時,需要考慮系統(tǒng)的承受能力,主要關(guān)注內(nèi)存的使用情況及IO的使用情況,綜合判斷。若普通用戶關(guān)聯(lián)資源池,并且資源池中的優(yōu)先級比例不同,全局并發(fā)隊列在數(shù)據(jù)庫內(nèi)部將使用兩維隊列,即優(yōu)先級高低排隊和同一優(yōu)先級進行排隊。在喚醒時,將優(yōu)先喚醒高優(yōu)先級隊列的作業(yè)。
[圖片上傳失敗...(image-5142e1-1708440352008)] 說明:
- 在事務(wù)類大并發(fā)業(yè)務(wù)場景下,參數(shù)max_active_statements建議設(shè)置為-1,即不限制全局并發(fā)數(shù)。
- 在分析類查詢的場景下,參數(shù)max_active_statements的值設(shè)置為CPU的核數(shù)除以數(shù)據(jù)庫節(jié)點個數(shù),一般可以設(shè)置5~8個。
224.2 局部并發(fā)隊列
采用資源池局部并發(fā)控制機制的目的是控制在數(shù)據(jù)庫主節(jié)點上同一資源池內(nèi)的并發(fā)作業(yè)數(shù)量。局部并發(fā)控制機制根據(jù)執(zhí)行作業(yè)的cost,控制復(fù)雜查詢的并發(fā)作業(yè)數(shù)量。
參數(shù)parctl_min_cost數(shù)值用于判斷執(zhí)行作業(yè)是否是復(fù)雜作業(yè)。
?? 點贊,你的認(rèn)可是我創(chuàng)作的動力!
?? 收藏,你的青睞是我努力的方向!
?? 評論,你的意見是我進步的財富!
