Share via


Parallelism derecesi

SQL Server en iyi derecesini parallelism bir paralel sorgu yürütme ya da dizin veri tanımlama dili (DDL) işlemini her örnek için otomatik olarak algılar.Bunu aşağıdaki ölçütlere göre yapar:

  1. Olup olmadığı SQL Server simetrik çoklu işlem (SMP) bilgisayar gibi birden çok işlemci veya CPU, olan bir bilgisayarda çalışıyor.

    Yalnızca birden çok CPU bulunan bilgisayarlarda, paralel sorgularını kullanabilirsiniz.

  2. Yeterli iş parçacığı kullanılabilir olup olmadığı.

    Sorgu veya dizin her operasyon, belirli bir yürütmek iş parçacığı sayısı gerektirir.Paralel bir planı yürütmek için seri bir plan'den daha fazla iş parçacığı gerektirir ve parallelism derecesini ile gerekli olan iş parçacığı sayısını artırır.Iş parçacığı gereksinim parallelism belirli bir ölçüde için paralel planlama çizelgesinin karşılanan, Database Engine otomatik olarak parallelism derecesini azaltır veya tamamen belirtilen iş yükünü içeriğinde paralel planı abandons. Sonra planı (iş parçacığı parçacığının) seri yürütür.

  3. Yürütülen işlem sorgu veya dizin türü.

    Oluşturmak veya bir dizini yeniden oluşturmak veya kümelenmiş dizin ve CPU döngüsü yoğun olarak kullanan sorguları dizin paralel bir plan için en iyi adayları operasyonlardır.Örneğin, büyük bir tablo, büyük toplamalardan ve büyük boyutlu sonuç kümeleri sıralama birleştirmeler iyi aday ' dir.Basit Sorgu, sık hareket işleme uygulamalarda bulunan ek bulmak paralel sorgu yürütmek için gerekli düzenlemesi outweigh olası performansını artırın.Parallelism yararlı sorguları, yararlı değil, arasında ayrım yapmalarını Database Engine sorgu veya dizin işlemi yürütülüyor tahmini maliyetini karşılaştırır Maliyet eşiğini parallelism değeri.Önerilmez, ancak varsayılan değer 5 kullanarak kullanıcıları değiştirebilirsiniz sp_configure.

  4. Yeterli sayıda olup olmadığı için işlem satırları.

    sorgu iyileştiricisi satır sayısı çok düşük olduğunu belirlerse, bu satırları dağıtmak için exchange işleçleri tanıtmaktadır değil.Sonuç olarak, işleçler seri olarak yürütülür.Paralel işleç yürütme tarafından elde edilen kazançlar aştığında başlangıç, dağıtım ve koordinasyon maliyetleri işleçlerin seri bir planda yürütülmesini senaryoları engeller.

  5. Geçerli dağıtım istatistiklerini kullanılabilir olup olmadığı.

    En yüksek parallelism derecesini mümkün değilse, alt dereceye paralel planı durdurulmuş önce değerlendirilir.

    Kümelenmiş bir dizin, bir görünüm oluşturduğunuzda, kümelenmiş dizin henüz varolmadığından, dağılım istatistiklerini, hesaplanamıyor.Bu durumda, Database Engine en yüksek parallelism derecesini dizin işleminde sağlayamaz. Ancak, sıralama ve tarama gibi bazı işleçleri yine de paralel yürütme ' yararlanabilirsiniz.

Not

Paralel dizin işlemleri yalnızca kullanılabilir SQL Server Enterprise Developer ve değerlendirme sürümleri.

Yürütme saat, Database Engine belirleyen daha önce açıklanan geçerli sistem iş yükünün ve yapılandırma bilgileri için paralel yürütme izin verip. Paralel yürütme warranted, Database Engine en iyi iş parçacığı sayısını belirler ve bu iş parçacığı üzerinde paralel planı yürütülmesini yayılır. Paralel yürütme için birden çok iş parçacığı üzerinde çalışan bir sorgu veya dizin işlemi başladığında, işlem tamamlanıncaya kadar aynı sayıda iş parçacığı kullanılır.The Database Engine re-examines the optimal number of iş parçacığı decisions every saat an execution plan is retrieved from the yordam önbelleği. Örneğin, seri bir planın kullanmak üzere sorgunun bir yürütme neden aynı sorguyu daha sonra bir yürütülmesini üç iş parçacığı kullanarak bir paralel planı sonuçlanabilir ve üçüncü bir yürütme dört iş parçacığı kullanarak bir paralel planı neden olabilir.

Bir paralel sorgu yürütme planında ekleme, güncelleştirme ve silme işleçleri seri olarak yürütülür.Ancak, bir INSERT deyim SELECT bölümü bir UPDATE veya DELETE deyim, WHERE yan tümce, paralel olarak yürütülebilecek.Gerçek veri değişikliklerini veritabanına seri olarak uygulanır.

Paralel yürütme planı tarafından doldurulan ve anahtar kümesi uygulamalı, statik imleçler.Ancak, dinamik imleçler davranışını yalnızca seri yürütme tarafından sağlanabilir.sorgu iyileştiricisi, her zaman bir seri yürütme planı için bir dinamik imleç bir parçası olan bir sorgu oluşturur.

Derece Parallelism, geçersiz kılma

Kullanabileceğiniz parallelism en büyük ölçüde paralel planı yürütme kullanmak için işlemci sayısını sınırlamak için sunucu yapılandırma seçeneği. The max degree of parallelism option can be overridden for individual query and index operation statements by specifying the MAXDOP query hint or MAXDOP index option.MAXDOP ayrı bir sorgu ve dizin işlemleri üzerinde daha fazla denetim sağlar.Örneğin, genişletme veya azaltma, bir çevrimiçi dizinin işleme ayrılmış olan işlemci sayısına göre denetimi MAXDOP seçeneğini kullanabilirsiniz.Bu şekilde, bir dizin işlem olanla eşzamanlı kullanıcı tarafından kullanılan kaynakları dengeleyebilirsiniz.