SQL Server數(shù)據(jù)庫與max degree of parallelism參數(shù)
我們今天主要向大家講述的是SQL Server數(shù)據(jù)庫中的max degree of parallelism參數(shù),當(dāng) SQL Server 數(shù)據(jù)庫在具N個微處理器或是 CPU 的計算機上運行時,它將為每個并行計劃執(zhí)行檢測***并行度(即運行一個語句所使用的處理器數(shù))。
您可以使用 max degree of parallelism 選項來限制并行計劃執(zhí)行時所用的處理器數(shù)。
當(dāng) SQL Server數(shù)據(jù)庫在具有多個微處理器或 CPU 的計算機上運行時,它將為每個并行計劃執(zhí)行檢測***并行度(即運行一個語句所使用的處理器數(shù))。您可以使用 max degree of parallelism 選項來限制并行計劃執(zhí)行時所用的處理器數(shù)。如果默認(rèn)值為 0,則使用所有可用的處理器。將 max degree of parallelism 設(shè)置為 1 以取消生成并行計劃。將該值設(shè)置為大于 1 的數(shù)字(***為 64)來限制執(zhí)行單個查詢時所用的***處理器數(shù)。如果指定的值比可用的處理器數(shù)大,則使用實際可用數(shù)量的處理器。如果計算機只有一個處理器,則將忽略 max degree of parallelism 值。
以下來自微軟工程師經(jīng)驗傳授:
關(guān)于max degree of parallelism這個選項,一般情況下采用默認(rèn)的0就可以了,這樣的話SQL會根據(jù)查詢的復(fù)雜度來決定使用多大并發(fā)度的查詢。但是在有些OLTP(聯(lián)機事務(wù)處理)系統(tǒng)中,我們會發(fā)現(xiàn)SQL中存在大量的并發(fā)查詢,從而可能從兩方面影響SQL性能:
1. 單個查詢的并發(fā)度過高會導(dǎo)致查詢會花大量的時間在等待并發(fā)同步上,從而影響查詢性能
2. 并發(fā)查詢太多會占用大量的CPU資源,從而減少其它查詢得到CPU時間的機會,這樣的話會使其它查詢變慢。
一般來說,如果我們看到SQL Server數(shù)據(jù)庫中有大量的CXPACKET等待類型、或者有許多查詢長期處于Runnable的狀態(tài)(表示該查詢在等待CPU時間片),我們會建議客戶將并發(fā)度降下來,以進(jìn)一步排查問題。
以上的相關(guān)內(nèi)容就是對SQL Server數(shù)據(jù)庫的max degree of parallelism參數(shù)的介紹,望你能有所收獲。
上述的相關(guān)內(nèi)容就是對SQL Server數(shù)據(jù)庫的max degree of parallelism參數(shù)的描述,希望會給你帶來一些幫助在此方面。
【編輯推薦】