BUAT KUMPULAN SUMBER DAYA (Transact-SQL)
Berlaku untuk: SQL Server Azure SQL Managed Instance
Membuat kumpulan sumber daya Resource Governor di SQL Server. Kumpulan sumber daya mewakili subset sumber daya fisik (memori, CPU, dan IO) dari instans Mesin Database. Resource Governor memungkinkan administrator database untuk mendistribusikan sumber daya server di antara kumpulan sumber daya, hingga maksimum 64 kumpulan. Resource Governor tidak tersedia di setiap edisi SQL Server. Untuk daftar fitur yang didukung oleh edisi SQL Server, lihat Fitur yang Didukung oleh Edisi SQL Server 2016.
Sintaks
CREATE RESOURCE POOL pool_name
[ WITH
(
[ MIN_CPU_PERCENT = value ]
[ [ , ] MAX_CPU_PERCENT = value ]
[ [ , ] CAP_CPU_PERCENT = value ]
[ [ , ] AFFINITY {SCHEDULER =
AUTO
| ( <scheduler_range_spec> )
| NUMANODE = ( <NUMA_node_range_spec> )
} ]
[ [ , ] MIN_MEMORY_PERCENT = value ]
[ [ , ] MAX_MEMORY_PERCENT = value ]
[ [ , ] MIN_IOPS_PER_VOLUME = value ]
[ [ , ] MAX_IOPS_PER_VOLUME = value ]
)
]
[;]
<scheduler_range_spec> ::=
{ SCHED_ID | SCHED_ID TO SCHED_ID }[,...n]
<NUMA_node_range_spec> ::=
{ NUMA_node_ID | NUMA_node_ID TO NUMA_node_ID }[,...n]
Argumen
pool_name
Adalah nama yang ditentukan pengguna untuk kumpulan sumber daya. pool_name alfanumerik, dapat mencapai 128 karakter, harus unik dalam instans SQL Server, dan harus mematuhi aturan untuk pengidentifikasi.
MIN_CPU_PERCENT =value
Menentukan bandwidth CPU rata-rata yang dijamin untuk semua permintaan di kumpulan sumber daya ketika ada ketidakcocokan CPU. nilai adalah bilangan bulat dengan pengaturan default 0. Rentang yang diizinkan untuk nilai adalah dari 0 hingga 100.
MAX_CPU_PERCENT =value
Menentukan bandwidth CPU rata-rata maksimum yang akan diterima semua permintaan dalam kumpulan sumber daya ketika ada ketidakcocokan CPU. nilai adalah bilangan bulat dengan pengaturan default 100. Rentang yang diizinkan untuk nilai adalah dari 1 hingga 100.
CAP_CPU_PERCENT =value
Berlaku untuk: SQL Server 2012 (11.x) dan yang lebih baru.
Menentukan batas keras pada bandwidth CPU yang akan diterima semua permintaan di kumpulan sumber daya. Membatasi tingkat bandwidth CPU maksimum agar sama dengan nilai yang ditentukan. nilai adalah bilangan bulat dengan pengaturan default 100. Rentang yang diizinkan untuk nilai adalah dari 1 hingga 100.
AFINITAS {SCHEDULER = OTOMATIS | ( <scheduler_range_spec> ) | NUMANODE = (<NUMA_node_range_spec>)}
Berlaku untuk: SQL Server 2012 (11.x) dan yang lebih baru.
Lampirkan kumpulan sumber daya ke penjadwal tertentu. Nilai defaultnya adalah AUTO.
AFFINITY SCHEDULER = (<scheduler_range_spec>) memetakan kumpulan sumber daya ke jadwal SQL Server yang diidentifikasi oleh ID yang diberikan. ID ini memetakan ke nilai di kolom scheduler_id di sys.dm_os_schedulers (Transact-SQL).
Saat Anda menggunakan AFFINITY NUMANODE = (<NUMA_node_range_spec>), kumpulan sumber daya diafinisiskan ke penjadwal SQL Server yang memetakan ke CPU fisik yang sesuai dengan simpul atau rentang simpul NUMA yang diberikan. Anda dapat menggunakan kueri Transact-SQL berikut untuk menemukan pemetaan antara konfigurasi NUMA fisik dan ID penjadwal SQL Server.
SELECT osn.memory_node_id AS [numa_node_id], sc.cpu_id, sc.scheduler_id
FROM sys.dm_os_nodes AS osn
INNER JOIN sys.dm_os_schedulers AS sc
ON osn.node_id = sc.parent_node_id
AND sc.scheduler_id < 1048576;
MIN_MEMORY_PERCENT =value
Menentukan jumlah minimum memori yang dicadangkan untuk kumpulan sumber daya ini yang tidak dapat dibagikan dengan kumpulan sumber daya lainnya. nilai adalah bilangan bulat dengan pengaturan default 0 Rentang yang diizinkan untuk nilai adalah dari 0 hingga 100.
MAX_MEMORY_PERCENT =value
Menentukan total memori server yang dapat digunakan oleh permintaan di kumpulan sumber daya ini. nilai adalah bilangan bulat dengan pengaturan default 100. Rentang yang diizinkan untuk nilai adalah dari 1 hingga 100.
MIN_IOPS_PER_VOLUME =value
Berlaku untuk: SQL Server 2014 (12.x) dan yang lebih baru.
Menentukan operasi I/O minimum per detik (IOPS) per volume disk untuk dicadangkan untuk kumpulan sumber daya. Rentang nilai yang diizinkan adalah dari 0 hingga 2^31-1 (2.147.483.647). Tentukan 0 untuk menunjukkan tidak ada ambang minimum untuk kumpulan. Defaultnya adalah 0.
MAX_IOPS_PER_VOLUME =value
Berlaku untuk: SQL Server 2014 (12.x) dan yang lebih baru.
Menentukan operasi I/O maksimum per detik (IOPS) per volume disk untuk memungkinkan kumpulan sumber daya. Rentang nilai yang diizinkan adalah dari 0 hingga 2^31-1 (2.147.483.647). Tentukan 0 untuk mengatur ambang batas tak terbatas untuk kumpulan. Defaultnya adalah 0.
MAX_IOPS_PER_VOLUME
Jika untuk kumpulan diatur ke 0, kumpulan tidak diatur sama sekali dan dapat mengambil semua IOPS dalam sistem bahkan jika kumpulan lain memiliki kumpulan MIN_IOPS_PER_VOLUME diatur. Untuk kasus ini, kami sarankan Anda menetapkan MAX_IOPS_PER_VOLUME
nilai untuk kumpulan ini ke angka tinggi (misalnya, nilai maksimum 2^31-1) jika Anda ingin kumpulan ini diatur untuk IO.
Keterangan
MIN_IOPS_PER_VOLUME
dan MAX_IOPS_PER_VOLUME
tentukan bacaan atau tulis minimum dan maksimum per detik. Pembacaan atau penulisan ini dapat memiliki ukuran apa pun dan tidak menunjukkan throughput minimum atau maksimum.
Nilai untuk MAX_CPU_PERCENT
dan MAX_MEMORY_PERCENT
harus lebih besar dari atau sama dengan nilai untuk MIN_CPU_PERCENT
dan MIN_MEMORY_PERCENT
, masing-masing.
CAP_CPU_PERCENT
berbeda dari MAX_CPU_PERCENT
dalam beban kerja yang terkait dengan kumpulan dapat menggunakan kapasitas CPU di atas nilai MAX_CPU_PERCENT
jika tersedia, tetapi tidak di atas nilai CAP_CPU_PERCENT
.
Persentase CPU total untuk setiap komponen yang difinisikan (penjadwal atau node NUMA) tidak boleh melebihi 100 persen.
Izin
Memerlukan CONTROL SERVER
izin.
Contoh
1. Menunjukkan cara membuat kumpulan sumber daya
Contoh ini membuat kumpulan sumber daya bernama "bigPool". Kumpulan ini menggunakan pengaturan Resource Governor default.
CREATE RESOURCE POOL bigPool;
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO
2. Atur CAP_CPU_PERCENT ke huruf besar/kecil dan atur AFFINITY SCHEDULER
Atur CAP_CPU_PERCENT ke topi keras 30 persen dan atur AFFINITY SCHEDULER ke kisaran 0 hingga 63, 128 hingga 191.
Berlaku untuk: SQL Server 2012 (11.x) dan yang lebih baru.
CREATE RESOURCE POOL PoolAdmin
WITH (
MIN_CPU_PERCENT = 10,
MAX_CPU_PERCENT = 20,
CAP_CPU_PERCENT = 30,
AFFINITY SCHEDULER = (0 TO 63, 128 TO 191),
MIN_MEMORY_PERCENT = 5,
MAX_MEMORY_PERCENT = 15
);
3. Atur MIN_IOPS_PER_VOLUME dan MAX_IOPS_PER_VOLUME
Atur MIN_IOPS_PER_VOLUME ke 20 dan MAX_IOPS_PER_VOLUME ke 100. Nilai-nilai ini mengatur operasi baca dan tulis I/O fisik yang tersedia untuk kumpulan sumber daya.
Berlaku untuk: SQL Server 2014 (12.x) dan yang lebih baru.
CREATE RESOURCE POOL PoolAdmin
WITH (
MIN_IOPS_PER_VOLUME = 20,
MAX_IOPS_PER_VOLUME = 100
);
Lihat Juga
UBAH KUMPULAN SUMBER DAYA (Transact-SQL)
DROP RESOURCE POOL (Transact-SQL)
CREATE WORKLOAD GROUP (Transact-SQL)
UBAH GRUP BEBAN KERJA (Transact-SQL)
DROP WORKLOAD GROUP (Transact-SQL)
ALTER RESOURCE GOVERNOR (Transact-SQL)
Kumpulan Sumber Daya Resource Governor
Membuat Pusat Sumber Daya