Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Apa tujuan menggunakan OPTION(MAXDOP 1) di SQL Server?

Seperti yang disebutkan Kaboing, MAXDOP(n) sebenarnya mengontrol jumlah inti CPU yang digunakan dalam prosesor kueri.

Pada sistem yang benar-benar tidak aktif, SQL Server akan mencoba menarik tabel ke memori secepat mungkin dan menggabungkannya di memori. Bisa jadi, dalam kasus Anda, yang terbaik adalah melakukan ini dengan satu CPU. Ini mungkin memiliki efek yang sama seperti menggunakan OPTION (FORCE ORDER) yang memaksa pengoptimal kueri untuk menggunakan urutan gabungan yang telah Anda tentukan. DALAM beberapa kasus, saya telah melihat OPTION (FORCE PLAN) kurangi kueri dari 26 detik menjadi 1 detik waktu eksekusi.

Books Online selanjutnya mengatakan bahwa kemungkinan nilai untuk MAXDOP adalah:

0 - Menggunakan jumlah aktual CPU yang tersedia tergantung pada beban kerja sistem saat ini. Ini adalah nilai default dan pengaturan yang disarankan.

1 - Menekan pembuatan rencana paralel. Operasi akan dijalankan secara serial.

2-64 - Membatasi jumlah prosesor ke nilai yang ditentukan. Lebih sedikit prosesor dapat digunakan tergantung pada beban kerja saat ini. Jika nilai yang lebih besar dari jumlah CPU yang tersedia ditentukan, jumlah sebenarnya dari CPU yang tersedia akan digunakan.

Saya tidak yakin apa penggunaan terbaik MAXDOP adalah, namun saya akan menebak dan mengatakan bahwa jika Anda memiliki tabel dengan 8 partisi di atasnya, Anda ingin menentukan MAXDOP(8) karena keterbatasan I/O, tapi saya bisa saja salah.

Berikut adalah beberapa tautan cepat yang saya temukan tentang MAXDOP :

Buku Online:Derajat Paralelisme

Pedoman umum yang digunakan untuk mengonfigurasi opsi MAXDOP



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pemeliharaan Database Sistem SQL Server

  2. Len() vs panjang data() di SQL Server 2005

  3. Ikhtisar jenis SQL Join dengan contoh

  4. Cara Memperbaiki "Pernyataan EXECUTE gagal karena klausa WITH RESULT SETS nya ditentukan 1 set hasil ..." di SQL Server

  5. Cari Tahu apakah Partisi Dikompresi di SQL Server (T-SQL)