Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Ürün seçin
Aşağıdaki satırda, ilgilendiğiniz ürün adını seçin ve yalnızca bu ürünün bilgileri görüntülenir.
* SQL Server *
SQL Yönetilen Örneği
Azure Synapse'i
Analiz
SQL Server ve SQL Yönetilen Örneği
Mevcut bir resource governor iş yükü grubu yapılandırmasını değiştirir ve isteğe bağlı olarak farklı bir resource governor kaynak havuzuna atar.
Not
Azure SQL Yönetilen Örneği'nde kaynak yöneticisi yapılandırmasını değiştirmek için birincil çoğaltmada yer alan master veritabanının bağlamında olmanız gerekir.
söz dizimi kurallarını
Sözdizimi
ALTER WORKLOAD GROUP { group_name | [ default ] }
[ WITH
( [ IMPORTANCE = { LOW | MEDIUM | HIGH } ]
[ [ , ] REQUEST_MAX_MEMORY_GRANT_PERCENT = value ]
[ [ , ] REQUEST_MAX_CPU_TIME_SEC = value ]
[ [ , ] REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value ]
[ [ , ] MAX_DOP = value ]
[ [ , ] GROUP_MAX_REQUESTS = value ]
[ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
[ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING { pool_name | [default] } ]
[ ; ]
Bağımsız değişken
group_name | [varsayılan]
Mevcut kullanıcı tanımlı iş yükü grubunun veya resource governor yerleşik default iş yükü grubunun adı.
default, sistem tarafından ayrılmış bir sözcük olan []çakışmasını önlemek için "" kullanıldığında köşeli ayraç (ALTER WORKLOAD GROUP) veya tırnak işareti (DEFAULT) olmalıdır. Daha fazla bilgi için bkz.
Yerleşik kaynak havuzları ve iş yükü grupları, defaultgibi tüm küçük harf adlarını kullanır. Büyük/küçük harfe duyarlı harmanlama kullanan sunucularda küçük harf default kullanın. Büyük/küçük harfe duyarlı olmayan harmanlama içeren sunucular, default, Defaultve DEFAULT aynı değer olarak davranır.
ÖNEM DERECESI = { DÜŞÜK | ORTA | HIGH }
bir isteğin iş yükü grubundaki göreli önemini belirtir. Varsayılan değer MEDIUM.
IMPORTANCE, iş yükü grubunu içeren kaynak havuzu için yereldir. Aynı kaynak havuzu içinde farklı öneme sahip iş yükü grupları birbirini etkiler, ancak diğer kaynak havuzlarındaki iş yükü gruplarını etkilemez.
REQUEST_MAX_MEMORY_GRANT_PERCENT = değer
Tek bir isteğin havuzdan alabileceği en fazla sorgu çalışma alanı belleği miktarını belirtir.
SQL Server 2017 (14.x) ve daha eski sürümlerinde değer bir tamsayıdır ve izin verilen aralık 1 ile 100 arasındadır.
SQL Server 2019 (15.x) ile başlayarak, değer float veri türü kullanılarak kesirli olabilir. İzin verilen aralık 0 ile 100 arasındadır.
Önemli
Belirtilen miktar yalnızca sorgu belleği vermeleri yoluyla elde edilen sorgu çalışma alanı belleğine başvuruyor.
Sunucu diğer eşzamanlı sorgular için yeterli boş bellek ayarlayamadığından, değerin çok büyük (örneğin, 70'ten büyük) ayarlanması önerilmez. Bu,8645 hatası
- Kullanıcı tanımlı iş yükü grupları için sunucu, bellek gereksinimi sınırın altına düşene kadar veya DOP 1'e eşit olana kadar isteğin paralellik (DOP) derecesini azaltmaya çalışır. Sorgu belleği gereksinimi hala sınırdan büyükse 8657 hatası oluşur ve sorgu başarısız olur.
-
internalvedefaultiş yükü grupları için sunucu sorgunun gerekli belleği almasına izin verir.
Her iki durumda da sunucunun fiziksel belleği yetersizse hata 8645 oluşabilir.
REQUEST_MAX_CPU_TIME_SEC = değer
Bir toplu iş isteğinin kullanabileceği en fazla CPU süresini saniye cinsinden belirtir. değer 0 veya pozitif bir tamsayı olmalıdır. değeri için varsayılan ayar 0'dır ve bu da sınırsız anlamına gelir.
En fazla CPU süresi aşıldığında, genişletilmiş cpu_threshold_exceeded olayı ve izleme olayı oluşturulur. Daha fazla bilgi için bkz. CPU eşiği olay sınıfını aştı.
Azure SQL Yönetilen Örneği'nde, maksimum CPU süresi aşıldığında resource governor isteği 10961 hatasıyla durdurur.
SQL Server'da resource governor varsayılan olarak isteği durdurmaz. Ancak, SQL Server 2016 (13.x) SP2 ve SQL Server 2017 (14.x) CU3'ten başlayarak, izleme bayrağı 2422 etkinleştirildiğinde ve maksimum CPU süresi aşıldığında kaynak yöneticisi 10961 hatasıyla bir isteği durdurur.
REQUEST_MEMORY_GRANT_TIMEOUT_SEC = değer
Sorgunun, sorgu çalışma alanı belleğinden bellek verilmesini bekleyebileceği en uzun süreyi saniye cinsinden belirtir.
değer 0 veya pozitif bir tamsayı olmalıdır. 0
Bellek verme zaman aşımına ulaşıldığında sorgu her zaman başarısız olmaz. Sorgu yalnızca çok fazla eşzamanlı sorgu çalıştırıldığında başarısız olur. Aksi takdirde, sorgu yalnızca en düşük bellek iznini alabilir ve bu da sorgu performansının düşmesine neden olabilir.
MAX_DOP = değer
Paralel sorgu yürütme için en yüksek paralellik derecesini (MAXDOP) belirtir.
değer için izin verilen aralık 0 ile 64 arasındadır. 0
Daha fazla bilgi için bkz. maxdop
GROUP_MAX_REQUESTS = değer
İş yükü grubunda yürütülmesine izin verilen en fazla eşzamanlı istek sayısını belirtir. değer 0 veya pozitif bir tamsayı olmalıdır. değeri için varsayılan ayar 0'dır ve sınırsız isteklere izin verir. En fazla eşzamanlı istek sayısına ulaşıldığında, bu grupta bir oturum oluşturulabilir, ancak eşzamanlı istek sayısı belirtilen değerin altına düşene kadar bekleme durumuna alınır.
GROUP_MAX_TEMPDB_DATA_MB = değer
Bir iş yükü grubunun veri dosyalarında tempdb megabayt cinsinden kullanabileceği maksimum alan miktarını belirtir.
değer 0, pozitif sayı veya NULL olmalıdır. Kesirli değerlere izin verilir.
Değer 0 olduğunda, tempdb iş yükü grubundaki oturumlara göre alan ayırmalarına izin verilmez. Bir değer ayarlı olmadığında, kaynak yöneticisi iş yükü grubu tarafından alan tüketimini sınırlamaz tempdb .
Sınır, bir iş yükü grubundaki tempdb tüm oturumlar tarafından içinde tüketilen toplam alan içindir.
bir iş yükü grubunda çalışan bir istek, tarafından ayarlanan tempdbsınırın üzerinde iş yükü grubu tarafından veri alanı tüketimini artırmaya GROUP_MAX_TEMPDB_DATA_MB çalıştığında resource governor isteği 1138 hatasıyla durdurur. Daha fazla bilgi için bkz . Tempdb alan kaynağı idaresi.
GROUP_MAX_TEMPDB_DATA_PERCENT = değer
Bir iş yükü grubunun veri dosyalarında tempdb kullanabileceği maksimum alan miktarını, en tempdb büyük boyutun yüzdesinde belirtir. En büyük tempdb boyutun tanımı için bkz . Yüzde sınırı yapılandırması.
değer 0 ile 100 arasında ya da NULL arasında olmalıdır. Kesirli değerlere izin verilir.
Değer 0 olduğunda, tempdb iş yükü grubundaki oturumlara göre alan ayırmalarına izin verilmez. Bir değer ayarlı olmadığında, kaynak yöneticisi iş yükü grubu tarafından alan tüketimini sınırlamaz tempdb . Ayarlandığında GROUP_MAX_TEMPDB_DATA_MB veya boyut üst sınırı tanımlanmadığında tempdbGROUP_MAX_TEMPDB_DATA_PERCENT hiçbir etkisi olmaz.
Sınır, bir iş yükü grubundaki tempdb tüm oturumlar tarafından içinde tüketilen toplam alan içindir.
bir iş yükü grubunda çalışan bir istek, tarafından ayarlanan tempdbsınırın üzerinde iş yükü grubu tarafından veri alanı tüketimini artırmaya GROUP_MAX_TEMPDB_DATA_PERCENT çalıştığında resource governor isteği 1138 hatasıyla durdurur. Daha fazla bilgi için bkz . Tempdb alan kaynağı idaresi.
KULLANMA { pool_name | [ varsayılan ] }
İş yükü grubunu pool_nametarafından tanımlanan kullanıcı tanımlı kaynak havuzuyla veya default kaynak havuzuyla ilişkilendirir.
pool_name sağlanmazsa veya USING bağımsız değişkeni belirtilmezse, iş yükü grubu yerleşik default havuzuyla ilişkilendirilir.
default ayrılmış bir sözcükdür ve USINGiçinde belirtildiğinde köşeli ayraç ([]) veya tırnak işaretleri ("") içine alınmalıdır.
Yerleşik kaynak havuzları ve iş yükü grupları, defaultgibi tüm küçük harf adlarını kullanır. Büyük/küçük harfe duyarlı harmanlama kullanan sunucularda küçük harf default kullanın. Büyük/küçük harfe duyarlı olmayan harmanlama içeren sunucular, default, Defaultve DEFAULT aynı değer olarak davranır.
Açıklamalar
ALTER WORKLOAD GROUP
default iş yükü grubunda izin verilir, ancak internal grubunda kullanılamaz.
İş yükü grubu yapılandırmasında yapılan değişiklikler, ALTER RESOURCE GOVERNOR RECONFIGURE yürütülene kadar geçerli olmaz.
Daha fazla bilgi için bkz. resource governor
MAXDOP
Belirli bir sorgu için geçerli MAXDOP aşağıdaki gibi belirlenir:
- sorgu ipucu olarak
MAXDOP, iş yükü grubuMAX_DOPayarını aşmadığı sürece kabul edilir. - Sorgu ipucu olarak
MAXDOPher zamanmax degree of parallelismsunucu yapılandırmasını geçersiz kılar. Daha fazla bilgi için bkz. Sunucu yapılandırması: en yüksek paralellik derecesi. - İş yükü grubu
MAX_DOPmax degree of parallelismsunucu yapılandırmasını veMAXDOPveritabanı kapsamlı yapılandırmageçersiz kılar.
Bir sorgu derleme zamanında seri olarak işaretlendiğinde (MAXDOP = 1), iş yükü grubu veya sunucu yapılandırma ayarından bağımsız olarak çalışma zamanında paralellikle yürütülemez. Sorgu için MAXDOP belirlendikten sonra, yalnızca bellek baskısı nedeniyle azaltılabilir. İş yükü grubu yeniden yapılandırması, bellek verme kuyruğunda bekleyen sorguları etkilemez.
Önbelleğe alınmış planlar
MAX_DOPgibi bir ayarı etkileyen bir planı değiştirdiğinizde, yeni ayar önceden önbelleğe alınmış planlarda yalnızca DBCC FREEPROCCACHE (<pool_name>)yürütüldükten sonra geçerli olur; burada <pool_name> geçerli iş yükü grubu tarafından kullanılan kaynak yöneticisi kaynak havuzunun adıdır.
-
MAX_DOP1 olarak değiştiriliyorsa paralel planlar seri modda çalışabildiğindenDBCC FREEPROCCACHEyürütülmesi gerekmez. Ancak bu tür bir plan, seri plan olarak derlenen bir plandan daha az verimli olabilir. -
MAX_DOP1'den 0'a veya 1'den büyük bir değere değiştiriliyorsa,DBCC FREEPROCCACHEyürütülmesi gerekmez. Ancak seri planlar paralel olarak çalıştırılamaz, bu nedenle ilgili önbelleğin temizlenmesi yeni planların paralellik kullanılarak derlenmesine olanak tanır.
Uyarı
Birden fazla iş yükü grubuyla ilişkili bir kaynak havuzundan önbelleğe alınmış planların temizlenmesi, <pool_name>tarafından tanımlanan kullanıcı tanımlı kaynak havuzunu kullanan tüm iş yükü gruplarını etkiler.
Dizin oluşturma
Performans nedenleriyle, dizin oluşturma işleminin başlangıçta verilenden daha fazla bellek çalışma alanı kullanmasına izin verilir. Resource Governor bu özel işlemeyi destekler. Ancak, ilk verme ve ek bellek atamaları iş yükü grubu ve kaynak havuzu ayarlarıyla sınırlıdır.
Bölümlenmiş tabloda hizalanmamış dizin oluşturmak için kullanılan bellek, ilgili bölüm sayısıyla orantılıdır. Gerekli toplam bellek, REQUEST_MAX_MEMORY_GRANT_PERCENT iş yükü grubu ayarı tarafından uygulanan sorgu başına sınırı aşarsa dizin oluşturma başarısız olabilir.
default iş yükü grubu bir sorgunun geriye dönük uyumluluk için başlatılması gereken en düşük bellekle sorgu başına sınırı aşmasına izin verdiğinden, default kaynak havuzu yeterli toplam belleğe sahipse default iş yükü grubunu kullanarak aynı dizini oluşturabilirsiniz.
İzinler
CONTROL SERVER izni gerektirir.
Örnekler
Aşağıdaki örnekte, varsayılan gruptaki isteklerin öneminin MEDIUM yerine LOWolarak nasıl değiştireceği gösterilmektedir.
ALTER WORKLOAD GROUP [default]
WITH (IMPORTANCE = LOW);
ALTER RESOURCE GOVERNOR RECONFIGURE;
Aşağıdaki örnekte, bir iş yükü grubunun o anda bulunduğu havuzdan default havuzuna nasıl taşınacakları gösterilmektedir.
ALTER WORKLOAD GROUP adHoc
USING [default];
ALTER RESOURCE GOVERNOR RECONFIGURE;
İlgili içerik
- resource governor
- resource governor iş yükü grubu
- İş yükü grubu oluşturma
- İş yükü grubunu taşıma
- İŞ YÜKÜ GRUBU OLUŞTUR (Transact-SQL)
- DROP İŞ YÜKÜ GRUBU (Transact-SQL)
- KAYNAK HAVUZU OLUŞTUR (Transact-SQL)
- ALTER KAYNAK HAVUZUNU (Transact-SQL)
- KAYNAK HAVUZU DÜŞÜR (Transact-SQL)
- KAYNAK YÖNETICISINI DEĞIŞTIR (Transact-SQL)
- sistem.kaynak_yöneticisi_iş_yükü_grupları
- sys.dm_kaynak_yöneticisi_iş_yükü_grupları
SQL Server
* SQL Yönetilen Örneği *
Azure Synapse'i
Analiz
SQL Server ve SQL Yönetilen Örneği
Mevcut bir resource governor iş yükü grubu yapılandırmasını değiştirir ve isteğe bağlı olarak farklı bir resource governor kaynak havuzuna atar.
Not
Azure SQL Yönetilen Örneği'nde kaynak yöneticisi yapılandırmasını değiştirmek için birincil çoğaltmada yer alan master veritabanının bağlamında olmanız gerekir.
söz dizimi kurallarını
Sözdizimi
ALTER WORKLOAD GROUP { group_name | [ default ] }
[ WITH
( [ IMPORTANCE = { LOW | MEDIUM | HIGH } ]
[ [ , ] REQUEST_MAX_MEMORY_GRANT_PERCENT = value ]
[ [ , ] REQUEST_MAX_CPU_TIME_SEC = value ]
[ [ , ] REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value ]
[ [ , ] MAX_DOP = value ]
[ [ , ] GROUP_MAX_REQUESTS = value ]
[ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
[ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING { pool_name | [default] } ]
[ ; ]
Bağımsız değişken
group_name | [varsayılan]
Mevcut kullanıcı tanımlı iş yükü grubunun veya resource governor yerleşik default iş yükü grubunun adı.
default, sistem tarafından ayrılmış bir sözcük olan []çakışmasını önlemek için "" kullanıldığında köşeli ayraç (ALTER WORKLOAD GROUP) veya tırnak işareti (DEFAULT) olmalıdır. Daha fazla bilgi için bkz.
Yerleşik kaynak havuzları ve iş yükü grupları, defaultgibi tüm küçük harf adlarını kullanır. Büyük/küçük harfe duyarlı harmanlama kullanan sunucularda küçük harf default kullanın. Büyük/küçük harfe duyarlı olmayan harmanlama içeren sunucular, default, Defaultve DEFAULT aynı değer olarak davranır.
ÖNEM DERECESI = { DÜŞÜK | ORTA | HIGH }
bir isteğin iş yükü grubundaki göreli önemini belirtir. Varsayılan değer MEDIUM.
IMPORTANCE, iş yükü grubunu içeren kaynak havuzu için yereldir. Aynı kaynak havuzu içinde farklı öneme sahip iş yükü grupları birbirini etkiler, ancak diğer kaynak havuzlarındaki iş yükü gruplarını etkilemez.
REQUEST_MAX_MEMORY_GRANT_PERCENT = değer
Tek bir isteğin havuzdan alabileceği en fazla sorgu çalışma alanı belleği miktarını belirtir.
SQL Server 2017 (14.x) ve daha eski sürümlerinde değer bir tamsayıdır ve izin verilen aralık 1 ile 100 arasındadır.
SQL Server 2019 (15.x) ile başlayarak, değer float veri türü kullanılarak kesirli olabilir. İzin verilen aralık 0 ile 100 arasındadır.
Önemli
Belirtilen miktar yalnızca sorgu belleği vermeleri yoluyla elde edilen sorgu çalışma alanı belleğine başvuruyor.
Sunucu diğer eşzamanlı sorgular için yeterli boş bellek ayarlayamadığından, değerin çok büyük (örneğin, 70'ten büyük) ayarlanması önerilmez. Bu,8645 hatası
- Kullanıcı tanımlı iş yükü grupları için sunucu, bellek gereksinimi sınırın altına düşene kadar veya DOP 1'e eşit olana kadar isteğin paralellik (DOP) derecesini azaltmaya çalışır. Sorgu belleği gereksinimi hala sınırdan büyükse 8657 hatası oluşur ve sorgu başarısız olur.
-
internalvedefaultiş yükü grupları için sunucu sorgunun gerekli belleği almasına izin verir.
Her iki durumda da sunucunun fiziksel belleği yetersizse hata 8645 oluşabilir.
REQUEST_MAX_CPU_TIME_SEC = değer
Bir toplu iş isteğinin kullanabileceği en fazla CPU süresini saniye cinsinden belirtir. değer 0 veya pozitif bir tamsayı olmalıdır. değeri için varsayılan ayar 0'dır ve bu da sınırsız anlamına gelir.
En fazla CPU süresi aşıldığında, genişletilmiş cpu_threshold_exceeded olayı ve izleme olayı oluşturulur. Daha fazla bilgi için bkz. CPU eşiği olay sınıfını aştı.
Azure SQL Yönetilen Örneği'nde, maksimum CPU süresi aşıldığında resource governor isteği 10961 hatasıyla durdurur.
SQL Server'da resource governor varsayılan olarak isteği durdurmaz. Ancak, SQL Server 2016 (13.x) SP2 ve SQL Server 2017 (14.x) CU3'ten başlayarak, izleme bayrağı 2422 etkinleştirildiğinde ve maksimum CPU süresi aşıldığında kaynak yöneticisi 10961 hatasıyla bir isteği durdurur.
REQUEST_MEMORY_GRANT_TIMEOUT_SEC = değer
Sorgunun, sorgu çalışma alanı belleğinden bellek verilmesini bekleyebileceği en uzun süreyi saniye cinsinden belirtir.
değer 0 veya pozitif bir tamsayı olmalıdır. 0
Bellek verme zaman aşımına ulaşıldığında sorgu her zaman başarısız olmaz. Sorgu yalnızca çok fazla eşzamanlı sorgu çalıştırıldığında başarısız olur. Aksi takdirde, sorgu yalnızca en düşük bellek iznini alabilir ve bu da sorgu performansının düşmesine neden olabilir.
MAX_DOP = değer
Paralel sorgu yürütme için en yüksek paralellik derecesini (MAXDOP) belirtir.
değer için izin verilen aralık 0 ile 64 arasındadır. 0
Daha fazla bilgi için bkz. maxdop
GROUP_MAX_REQUESTS = değer
İş yükü grubunda yürütülmesine izin verilen en fazla eşzamanlı istek sayısını belirtir. değer 0 veya pozitif bir tamsayı olmalıdır. değeri için varsayılan ayar 0'dır ve sınırsız isteklere izin verir. En fazla eşzamanlı istek sayısına ulaşıldığında, bu grupta bir oturum oluşturulabilir, ancak eşzamanlı istek sayısı belirtilen değerin altına düşene kadar bekleme durumuna alınır.
GROUP_MAX_TEMPDB_DATA_MB = değer
Bir iş yükü grubunun veri dosyalarında tempdb megabayt cinsinden kullanabileceği maksimum alan miktarını belirtir.
değer 0, pozitif sayı veya NULL olmalıdır. Kesirli değerlere izin verilir.
Değer 0 olduğunda, tempdb iş yükü grubundaki oturumlara göre alan ayırmalarına izin verilmez. Bir değer ayarlı olmadığında, kaynak yöneticisi iş yükü grubu tarafından alan tüketimini sınırlamaz tempdb .
Sınır, bir iş yükü grubundaki tempdb tüm oturumlar tarafından içinde tüketilen toplam alan içindir.
bir iş yükü grubunda çalışan bir istek, tarafından ayarlanan tempdbsınırın üzerinde iş yükü grubu tarafından veri alanı tüketimini artırmaya GROUP_MAX_TEMPDB_DATA_MB çalıştığında resource governor isteği 1138 hatasıyla durdurur. Daha fazla bilgi için bkz . Tempdb alan kaynağı idaresi.
GROUP_MAX_TEMPDB_DATA_PERCENT = değer
Bir iş yükü grubunun veri dosyalarında tempdb kullanabileceği maksimum alan miktarını, en tempdb büyük boyutun yüzdesinde belirtir. En büyük tempdb boyutun tanımı için bkz . Yüzde sınırı yapılandırması.
değer 0 ile 100 arasında ya da NULL arasında olmalıdır. Kesirli değerlere izin verilir.
Değer 0 olduğunda, tempdb iş yükü grubundaki oturumlara göre alan ayırmalarına izin verilmez. Bir değer ayarlı olmadığında, kaynak yöneticisi iş yükü grubu tarafından alan tüketimini sınırlamaz tempdb . Ayarlandığında GROUP_MAX_TEMPDB_DATA_MB veya boyut üst sınırı tanımlanmadığında tempdbGROUP_MAX_TEMPDB_DATA_PERCENT hiçbir etkisi olmaz.
Sınır, bir iş yükü grubundaki tempdb tüm oturumlar tarafından içinde tüketilen toplam alan içindir.
bir iş yükü grubunda çalışan bir istek, tarafından ayarlanan tempdbsınırın üzerinde iş yükü grubu tarafından veri alanı tüketimini artırmaya GROUP_MAX_TEMPDB_DATA_PERCENT çalıştığında resource governor isteği 1138 hatasıyla durdurur. Daha fazla bilgi için bkz . Tempdb alan kaynağı idaresi.
KULLANMA { pool_name | [ varsayılan ] }
İş yükü grubunu pool_nametarafından tanımlanan kullanıcı tanımlı kaynak havuzuyla veya default kaynak havuzuyla ilişkilendirir.
pool_name sağlanmazsa veya USING bağımsız değişkeni belirtilmezse, iş yükü grubu yerleşik default havuzuyla ilişkilendirilir.
default ayrılmış bir sözcükdür ve USINGiçinde belirtildiğinde köşeli ayraç ([]) veya tırnak işaretleri ("") içine alınmalıdır.
Yerleşik kaynak havuzları ve iş yükü grupları, defaultgibi tüm küçük harf adlarını kullanır. Büyük/küçük harfe duyarlı harmanlama kullanan sunucularda küçük harf default kullanın. Büyük/küçük harfe duyarlı olmayan harmanlama içeren sunucular, default, Defaultve DEFAULT aynı değer olarak davranır.
Açıklamalar
ALTER WORKLOAD GROUP
default iş yükü grubunda izin verilir, ancak internal grubunda kullanılamaz.
İş yükü grubu yapılandırmasında yapılan değişiklikler, ALTER RESOURCE GOVERNOR RECONFIGURE yürütülene kadar geçerli olmaz.
Daha fazla bilgi için bkz. resource governor
MAXDOP
Belirli bir sorgu için geçerli MAXDOP aşağıdaki gibi belirlenir:
- sorgu ipucu olarak
MAXDOP, iş yükü grubuMAX_DOPayarını aşmadığı sürece kabul edilir. - Sorgu ipucu olarak
MAXDOPher zamanmax degree of parallelismsunucu yapılandırmasını geçersiz kılar. Daha fazla bilgi için bkz. Sunucu yapılandırması: en yüksek paralellik derecesi. - İş yükü grubu
MAX_DOPmax degree of parallelismsunucu yapılandırmasını veMAXDOPveritabanı kapsamlı yapılandırmageçersiz kılar.
Bir sorgu derleme zamanında seri olarak işaretlendiğinde (MAXDOP = 1), iş yükü grubu veya sunucu yapılandırma ayarından bağımsız olarak çalışma zamanında paralellikle yürütülemez. Sorgu için MAXDOP belirlendikten sonra, yalnızca bellek baskısı nedeniyle azaltılabilir. İş yükü grubu yeniden yapılandırması, bellek verme kuyruğunda bekleyen sorguları etkilemez.
Önbelleğe alınmış planlar
MAX_DOPgibi bir ayarı etkileyen bir planı değiştirdiğinizde, yeni ayar önceden önbelleğe alınmış planlarda yalnızca DBCC FREEPROCCACHE (<pool_name>)yürütüldükten sonra geçerli olur; burada <pool_name> geçerli iş yükü grubu tarafından kullanılan kaynak yöneticisi kaynak havuzunun adıdır.
-
MAX_DOP1 olarak değiştiriliyorsa paralel planlar seri modda çalışabildiğindenDBCC FREEPROCCACHEyürütülmesi gerekmez. Ancak bu tür bir plan, seri plan olarak derlenen bir plandan daha az verimli olabilir. -
MAX_DOP1'den 0'a veya 1'den büyük bir değere değiştiriliyorsa,DBCC FREEPROCCACHEyürütülmesi gerekmez. Ancak seri planlar paralel olarak çalıştırılamaz, bu nedenle ilgili önbelleğin temizlenmesi yeni planların paralellik kullanılarak derlenmesine olanak tanır.
Uyarı
Birden fazla iş yükü grubuyla ilişkili bir kaynak havuzundan önbelleğe alınmış planların temizlenmesi, <pool_name>tarafından tanımlanan kullanıcı tanımlı kaynak havuzunu kullanan tüm iş yükü gruplarını etkiler.
Dizin oluşturma
Performans nedenleriyle, dizin oluşturma işleminin başlangıçta verilenden daha fazla bellek çalışma alanı kullanmasına izin verilir. Resource Governor bu özel işlemeyi destekler. Ancak, ilk verme ve ek bellek atamaları iş yükü grubu ve kaynak havuzu ayarlarıyla sınırlıdır.
Bölümlenmiş tabloda hizalanmamış dizin oluşturmak için kullanılan bellek, ilgili bölüm sayısıyla orantılıdır. Gerekli toplam bellek, REQUEST_MAX_MEMORY_GRANT_PERCENT iş yükü grubu ayarı tarafından uygulanan sorgu başına sınırı aşarsa dizin oluşturma başarısız olabilir.
default iş yükü grubu bir sorgunun geriye dönük uyumluluk için başlatılması gereken en düşük bellekle sorgu başına sınırı aşmasına izin verdiğinden, default kaynak havuzu yeterli toplam belleğe sahipse default iş yükü grubunu kullanarak aynı dizini oluşturabilirsiniz.
İzinler
CONTROL SERVER izni gerektirir.
Örnekler
Aşağıdaki örnekte, varsayılan gruptaki isteklerin öneminin MEDIUM yerine LOWolarak nasıl değiştireceği gösterilmektedir.
ALTER WORKLOAD GROUP [default]
WITH (IMPORTANCE = LOW);
ALTER RESOURCE GOVERNOR RECONFIGURE;
Aşağıdaki örnekte, bir iş yükü grubunun o anda bulunduğu havuzdan default havuzuna nasıl taşınacakları gösterilmektedir.
ALTER WORKLOAD GROUP adHoc
USING [default];
ALTER RESOURCE GOVERNOR RECONFIGURE;
İlgili içerik
- resource governor
- resource governor iş yükü grubu
- İş yükü grubu oluşturma
- İş yükü grubunu taşıma
- İŞ YÜKÜ GRUBU OLUŞTUR (Transact-SQL)
- DROP İŞ YÜKÜ GRUBU (Transact-SQL)
- KAYNAK HAVUZU OLUŞTUR (Transact-SQL)
- ALTER KAYNAK HAVUZUNU (Transact-SQL)
- KAYNAK HAVUZU DÜŞÜR (Transact-SQL)
- KAYNAK YÖNETICISINI DEĞIŞTIR (Transact-SQL)
- sistem.kaynak_yöneticisi_iş_yükü_grupları
- sys.dm_kaynak_yöneticisi_iş_yükü_grupları
SQL Server
SQL Yönetilen Örneği
* Azure Synapse
Analiz *
Azure Synapse Analytics
Mevcut bir iş yükü grubunu değiştirir.
çalışan ve kuyruğa alınmış isteklerle ALTER WORKLOAD GROUP sistemde nasıl davrandığını öğrenmek için aşağıdaki ALTER WORKLOAD GROUP davranış bölümüne bakın.
CREATE WORKLOAD GROUP için uygulanan kısıtlamalar ALTER WORKLOAD GROUPiçin de geçerlidir. Parametreleri değiştirmeden önce, değerlerin kabul edilebilir aralıklar içinde olduğundan emin olmak için sorgu sys.workload_management_workload_groups.
Sözdizimi
ALTER WORKLOAD GROUP group_name
WITH
([ MIN_PERCENTAGE_RESOURCE = value ]
[ [ , ] CAP_PERCENTAGE_RESOURCE = value ]
[ [ , ] REQUEST_MIN_RESOURCE_GRANT_PERCENT = value ]
[ [ , ] REQUEST_MAX_RESOURCE_GRANT_PERCENT = value ]
[ [ , ] IMPORTANCE = { LOW | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | HIGH }]
[ [ , ] QUERY_EXECUTION_TIMEOUT_SEC = value ] )
[ ; ]
Bağımsız değişken
group_name
Değiştirilen mevcut kullanıcı tanımlı iş yükü grubunun adıdır. group_name değiştirilemez.
MIN_PERCENTAGE_RESOURCE = değer
değer 0 ile 100 arasında bir tamsayı aralığıdır. MIN_PERCENTAGE_RESOURCE değiştirilirken tüm iş yükü gruplarında MIN_PERCENTAGE_RESOURCE toplamı 100'ü aşamaz. MIN_PERCENTAGE_RESOURCE değiştirilmesi, komut tamamlanmadan önce tüm çalışan sorguların iş yükü grubunda tamamlanmasını gerektirir. Daha fazla bilgi için bu makaledeki ALTER WORKLOAD GROUP behavior bölümüne bakın.
CAP_PERCENTAGE_RESOURCE = değer
değer 1 ile 100 arasında bir tamsayı aralığıdır. CAP_PERCENTAGE_RESOURCE değeri MIN_PERCENTAGE_RESOURCE'den büyük olmalıdır. CAP_PERCENTAGE_RESOURCE değiştirmek için, komut tamamlanmadan önce tüm çalışan sorguların iş yükü grubunda tamamlanması gerekir. Daha fazla bilgi için bu makaledeki ALTER WORKLOAD GROUP behavior bölümüne bakın.
REQUEST_MIN_RESOURCE_GRANT_PERCENT = değer
değer, 0,75 ile 100,00 arasında bir aralığı olan ondalık değerdir. REQUEST_MIN_RESOURCE_GRANT_PERCENT değerinin MIN_PERCENTAGE_RESOURCE bir faktör olması ve CAP_PERCENTAGE_RESOURCE'den küçük olması gerekir.
REQUEST_MAX_RESOURCE_GRANT_PERCENT = değer
değer ondalıktır ve REQUEST_MIN_RESOURCE_GRANT_PERCENT büyük olmalıdır.
ÖNEM DERECESI = { DÜŞÜK | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | HIGH }
bir isteğin iş yükü grubu için varsayılan önemini değiştirir.
QUERY_EXECUTION_TIMEOUT_SEC = değer
Sorgunun iptal edilmeden önce yürütülebileceği en uzun süreyi saniye cinsinden değiştirir. Değer 0 veya pozitif bir tamsayı olmalıdır. Değerin varsayılan ayarı 0'dır ve bu da sınırsız anlamına gelir.
İzinler
CONTROL DATABASE izni gerektirir.
Örnek
Aşağıdaki örnek, wgDataLoadsadlı bir iş yükü grubu için katalog görünümündeki değerleri denetler ve değerleri değiştirir.
SELECT *
FROM sys.workload_management_workload_groups
WHERE [name] = 'wgDataLoads'
ALTER WORKLOAD GROUP wgDataLoads WITH
( MIN_PERCENTAGE_RESOURCE = 40
, CAP_PERCENTAGE_RESOURCE = 80
, REQUEST_MIN_RESOURCE_GRANT_PERCENT = 10 )
ALTER WORKLOAD GROUP davranışı
Herhangi bir zamanda sistemde üç tür istek vardır:
- Henüz sınıflandırılmamış istekler.
- Nesne kilitleri veya sistem kaynakları için sınıflandırılmış ve bekleyen istekler.
- Sınıflandırılmış ve çalışan istekler.
Değiştirilen bir iş yükü grubunun özelliklerine bağlı olarak, ayarların ne zaman etkin olacağı zamanlaması farklılık gösterir.
Önem derecesi veya query_execution_timeout
Önem derecesi ve query_execution_timeout özellikleri için, sınıflandırılmamış istekler yeni yapılandırma değerlerini alır. Bekleyen ve çalışan istekler eski yapılandırmayla yürütülür.
ALTER WORKLOAD GROUP isteği, iş yükü grubunda çalışan sorgular olup olmadığına bakılmaksızın hemen yürütülür.
REQUEST_MIN_RESOURCE_GRANT_PERCENT veya REQUEST_MAX_RESOURCE_GRANT_PERCENT
REQUEST_MIN_RESOURCE_GRANT_PERCENT ve REQUEST_MAX_RESOURCE_GRANT_PERCENT için, çalışan istekler eski yapılandırmayla yürütülür. Bekleyen istekler ve sınıflandırılmamış istekler yeni yapılandırma değerlerini alır.
ALTER WORKLOAD GROUP isteği, iş yükü grubunda çalışan sorgular olup olmadığına bakılmaksızın hemen yürütülür.
MIN_PERCENTAGE_RESOURCE veya CAP_PERCENTAGE_RESOURCE
MIN_PERCENTAGE_RESOURCE ve CAP_PERCENTAGE_RESOURCE için, çalışan istekler eski yapılandırmayla yürütülür. Bekleyen istekler ve sınıflandırılmamış istekler yeni yapılandırma değerlerini alır.
MIN_PERCENTAGE_RESOURCE ve CAP_PERCENTAGE_RESOURCE değiştirmek, değiştirilen iş yükü grubundaki çalışan isteklerin boşaltılmasını gerektirir. MIN_PERCENTAGE_RESOURCE azalırken, serbest kalan kaynaklar paylaşım havuzuna döndürülür ve diğer iş yükü gruplarından gelen isteklerin kullanılabilmesini sağlar. Buna karşılık, MIN_PERCENTAGE_RESOURCE artırıldığında, yalnızca paylaşılan havuzdan gerekli kaynakları kullanan isteklerin tamamlanması beklenecektir.
ALTER WORKLOAD GROUP işlemi, paylaşılan havuzda yürütülmeyi bekleyen diğer isteklere göre paylaşılan kaynaklara öncelikli erişime sahip olur. MIN_PERCENTAGE_RESOURCE toplamı 100%aşıyorsa, ALTER WORKLOAD GROUP isteği hemen başarısız olur.
Kilitleme davranışı
bir iş yükü grubunu değiştirmek için tüm iş yükü gruplarında genel kilit gerekir. bir iş yükü grubunu değiştirme isteği, önceden gönderilmiş olan oluşturma veya bırakma iş yükü grubu isteklerinin arkasında kuyruğa alınıyor. Bir kerede bir grup alter deyimi gönderilirse, bunlar gönderildikleri sırayla işlenir.
Ayrıca bkz.
- İŞ YÜKÜ GRUBU OLUŞTUR (Transact-SQL)
- DROP İŞ YÜKÜ GRUBU (Transact-SQL)
- sys.workload_management_workload_groups
- sys.dm_workload_management_workload_groups_stats
- Hızlı Başlangıç: T-SQL kullanarak iş yükü yalıtımını yapılandırma