Anda sedang offline saat ini, menunggu internet Anda untuk menyambung kembali

Rekomendasi dan panduan untuk opsi konfigurasi "max tingkat paralelisme" di SQL Server

PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.

Klik disini untuk melihat versi Inggris dari artikel ini: 2806535
Ringkasan
Opsi konfigurasi Microsoft SQL Server maks tingkat paralelisme (MAXDOP) mengontrol jumlah prosesor yang digunakan untuk eksekusi query dalam rencana paralel. Opsi ini menentukan sumber komputasi dan benang yang digunakan untuk permintaan rencana operator yang melakukan pekerjaan secara paralel. Tergantung pada Apakah SQL Server diatur pada komputer Multiproses (SMP), komputer non-seragam kehabisan memori akses (NUMA) atau prosesor hyperthreading diaktifkan, Anda harus mengkonfigurasi opsi tingkat maks paralelisme dengan benar. Artikel ini membahas pedoman umum yang dapat Anda gunakan untuk mengkonfigurasi opsi tingkat maks paralelisme untuk SQL Server ketika Anda menggunakan prosedur tersimpan sistem sp_configure .

Opsi (MAXDOP) Transact-SQL permintaan petunjuk dapat menimpa opsi tingkat maks paralelismedalam nilaisp_configure jika permintaan menentukan opsi ini. Di SQL Server 2000, pengabaian akan diterapkan hanya jika nilai yang ditetapkan di petunjuk kurang dari atau sama dengan nilai sp_configure . Pada SQL Server 2005 dan versi yang lebih baru, pengabaian selalu akan diterapkan. Pada SQL Server 2008 dan versi yang lebih baru, jika nilai MAXDOP melebihi nilai yang dikonfigurasi menggunakan Pengatur sumber daya, mesin database menggunakan nilai MAXDOP pengatur sumber daya. Semua aturan semantik yang digunakan dengan opsi tingkat maks paralelismeberlaku saat Anda menggunakan MAXDOP permintaan petunjuk. Opsi dua lainnya yang dapat mengabaikan atau mempengaruhi pengaturan MAXDOP adalah sebagai berikut:
  • NUMA halus
  • Paralel indeks
Informasi lebih lanjut
Catatan Apakah opsi konfigurasi maks tingkat paralelismebatas jumlah prosesor yang menggunakan SQL Server . Untuk mengkonfigurasi jumlah prosesor yang menggunakan SQL Server, gunakan opsi konfigurasi afinitas mask .

Menggunakan panduan berikut saat Anda mengkonfigurasi MAXDOPvalue.

SQL Server 2005 dan versi yang lebih baru

Server dengan satu simpul NUMAProsesor logis yang kurang dari 8Tetap MAXDOP pada atau di bawah jumlah prosesor logis
Server dengan satu simpul NUMALebih dari 8 LogisMenjaga MAXDOP 8
Server dengan beberapa NUMA nodeProsesor logis yang kurang dari 8 per NUMA simpulTetap MAXDOP pada atau di bawah jumlah prosesor logis per NUMA simpul
Server dengan beberapa NUMA nodeLebih dari 8 Logis per NUMA simpulMenjaga MAXDOP 8



Catatan
menggunakan pedoman yang sama saat Anda menyetel tingkat maks paralelismeopsi untuk pengatur sumber daya beban kerja kelompok.

Selain itu, nilai maksimum 8 yang disebutkan di pedoman berikut ini berlaku untuk khas aktivitas SQL Server dan beban operator asing yang digunakan dalam permintaan paralel rencana. Anda dapat berbeda-beda nilai maksimum ini, tergantung pada pola aplikasi spesifik Anda dan aktivitas bersamaan pada contoh SQL Server. Sebagai contoh, pertimbangkan situasi berikut ini:
  • Jika Anda memiliki jumlah permintaan yang menjalankan sekaligus dibandingkan dengan jumlah prosesor yang sangat kecil, Anda dapat menetapkan nilai MAXDOP ke nilai yang lebih besar. Misalnya, Anda dapat menetapkan nilai MAXDOP 16.
  • Jika Anda memiliki jumlah permintaan yang menjalankan sekaligus dibandingkan dengan jumlah prosesor yang sangat besar, Anda dapat menetapkan nilai MAXDOP ke nilai yang lebih kecil. Misalnya, Anda dapat menetapkan nilai MAXDOP ke 4.
Catatan Nilai yang Anda pertimbangkan untuk menggunakan harus benar-benar diuji aktivitas aplikasi tertentu atau pola permintaan sebelum Anda menerapkan nilai di server produksi.

SQL Server 2000 dan versi sebelumnya

Jika SQL Server menggunakan rencana serial, akan menggunakan hanya satu prosesor. Namun, jika SQL Server menggunakan paralelisme, harus menggunakan semua prosesor dikonfigurasi (seperti yang ditentukan oleh MAXDOP permintaan petunjuk konfigurasi) untuk eksekusi rencana paralel. Sebagai contoh, jika Anda menggunakan MAXDOP = 0 32-cara server, SQL Server mencoba untuk menggunakan semua prosesor 32 meskipun 7 prosesor dapat melakukan pekerjaan lebih efisien dibandingkan dengan rencana serial yang menggunakan prosesor hanya satu. Karena perilaku all-or-nothing, jika menggunakan SQL Server rencana paralel, dan jika Anda tidak membatasi MAXDOP permintaan petunjuk untuk nilai maksimum 8, waktu yang diperlukan oleh SQL Server untuk koordinat semua prosesor pada tingkat tinggi server melebihi keuntungan menggunakan rencana paralel.

Pengaturan MAXDOP yang berlaku untuk setiap langkah rencana. Setiap langkah akan menggunakan CPU satu atau beberapa CPU yang telah ditentukan oleh MAXDOP dan tidak pernah apa pun di antara. Jika langkah-langkah mengeksekusi secara paralel, jumlah untaian yang digunakan oleh permintaan dapat melebihi MAXDOP pengaturan.

Untuk definisi MAXDOP, lihat topik "Max tingkat dari paralelisme opsi" atau "Tingkat paralelisme" topik di SQL Server.

Untuk memahami cara kerja paralelisme, lihat bagian "Pemrosesan permintaan paralel" di bawah topik "Arsitektur prosesor permintaan" di buku daring SQL Server.

AdditionalInformation

Untuk informasi selengkapnya tentang pertanyaan paralel, kunjungi situs web Microsoft Developer Network (MSDN) berikut:Untuk informasi praktik terbaik saat Anda menjalankan contoh SQL Server di komputer yang memiliki lebih dari 64 CPU, lihat topik buku daring SQL Server berikut ini:Untuk contoh SQL Server yang berjalan pada prosesor hyperthreading diaktifkan, ikuti saran di dalam artikel berikut ini di Pangkalan Pengetahuan Microsoft:
322385 Dukungan SQL Server di lingkungan hyper-alur
Catatan Rekomendasi ini mungkin tidak sahih untuk chip prosesor lebih baru seperti Intel Nehalem keluarga.

Untuk informasi tentang jumlah prosesor yang digunakan oleh SQL Server dan jumlah NUMA node yang dikenali oleh SQL Server, Gunakan sys.dm_os_sys_info tampilan manajemen dinamis dan sys.dm_os_nodes. Untuk informasi selengkapnya tentang pengaturan MAXDOP yang diberlakukan dengan menggunakan Pengatur sumber daya, Tinjau informasi sys.dm_resource_governor_workload_groups tampilan manajemen dinamis dan posting berikut ini di blog tim support SQL Server:

Pengaturan "Max tingkat paralelisme" server, pengatur sumber daya MAX_DOP dan permintaan petunjuk MAXDOP – yang satu harus SQL Server menggunakan?

Untuk informasi lebih lanjut tentang produk atau alat yang secara otomatis memeriksa kondisi ini pada contoh SQL Server dan versi produk SQL Server, lihat Daftar Tabel berikut ini:
peranti penangkap lunak aturanJudul aturanPenjelasan aturanVersi produk terhadap aturan dievaluasi
SQL Server 2008 R2 Penganalisis praktik terbaik (SQL Server 2008 R2 BPA)Tingkat paralelisme tidak ditetapkan ke nilai yang disarankanSQL Server 2008 R2 Penganalisis praktik terbaik (SQL Server 2008 R2 BPA) menyediakan aturan untuk mendeteksi kondisi di mana nilai yang sesuai untuk opsi tingkat maks paralelismetidak dikonfigurasi dengan jumlah CPU di NUMA node dan konfigurasi beban kerja pengatur sumber daya untuk MAXDOP. SQL Server 2008 R2 BPA mendukung SQL Server 2008 dan SQL Server 2008 R2.

Jika Anda menjalankan alat BPA dan mendapatkan peringatan "Mesin pangkalan data - tingkat paralelisme tidak ditetapkan ke nilai yang disarankan", Bandingkan nilai opsitingkat maks paralelismedan nilai MAXDOP beban kerja pengatur sumber daya dengan nilai yang disarankan yang disebutkan di bagian "Ringkasan" dan "Informasi selengkapnya".
SQL Server 2008, SQL Server 2008 R2
SQL Server 2012 Penganalisis praktik terbaik (SQL Server 2012 BPA)Tingkat paralelisme tidak ditetapkan ke nilai yang disarankanSQL Server 2012 Penganalisis praktik terbaik (SQL Server 2012 BPA) menyediakan aturan untuk mendeteksi kondisi di mana nilai yang sesuai untuk opsi tingkat maks paralelismetidak dikonfigurasi dengan jumlah CPU di NUMA node dan konfigurasi beban kerja pengatur sumber daya untuk MAXDOP.

Jika Anda menjalankan alat BPA dan mendapatkan peringatan "Mesin pangkalan data - tingkat paralelisme tidak ditetapkan ke nilai yang disarankan", Bandingkan nilai opsitingkat maks paralelismedan nilai MAXDOP beban kerja pengatur sumber daya dengan nilai yang disarankan yang disebutkan di bagian "Ringkasan" dan "Informasi selengkapnya".
SQL Server 2012

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 2806535 - Tinjauan Terakhir: 05/01/2015 03:40:00 - Revisi: 3.0

Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Express with Advanced Services, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Enterprise Evaluation, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Enterprise Evaluation Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2014 Business Intelligence, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbinfo kbmt KB2806535 KbMtid
Tanggapan
reateElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">