Share via


Paralel dizin işlemleri yapılandırma

Çok işlemcili bilgisayarlarda çalışan SQL Server kuruluş, INDEX deyim kullanın tarama, sıralama ve diğer sorguları do. gibi INDEX deyim ile ilişkili dizin işlemleri gerçekleştirmek için birden çok işlemciBir tek INDEX deyim çalıştırmak için kullanılan işlemci sayısını yapılandırma seçeneği tarafından belirlenir en büyük ölçüde parallelism, geçerli iş yükünü ve dizin istatistikleri. max degree of parallelism Seçeneği belirler sayısının işlemcileri kullanmak üzere paralel planı yürütme.If the SQL Server Veritabanı Altyapısı detects that the system is busy, the degree of parallelism of the index operation is automatically reduced before statement execution starts. The Veritabanı Altyapısı can also reduce the degree of parallelism if the leading key column of a non-partitioned index has a limited number of distinct values or the frequency of each distinct value varies significantly.

Not

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

Tarafından kullanılan işlemci sayısını sorgu iyileştiricisi genellikle en iyi performansı sağlar.Ancak, oluşturma gibi işlemleri yeniden inşa etmek ya da çok büyük dizinler bırakılıyor kaynak yoğun olan ve diğer uygulamalar için yeterli kaynak ve veritabanı işlemleri dizini işlem süresi için neden olabilir.Bu sorun oluştuğunda, INDEX deyim dizin işlemi için kullanılacak işlemci sayısını sınırlama ve maxdop indeks seçeneği belirterek çalıştırmak için kullanılan işlemcilerin sayısı el ile yapılandırabilirsiniz.

maxdop dizin seçeneği geçersiz kılmaları max degree of parallelism yapılandırma seçeneği yalnızca sorgu belirtme bu seçeneği.Aşağıdaki tablo ile belirtilen geçerli tamsayý deðerleri listeler max degree of parallelism yapılandırma seçeneği ve maxdop dizin seçeneği.

Değer

Açıklama

0

Sunucu, geçerli sistem iş yüküne bağlı olarak kullanılan CPU sayısını belirler belirtir.Bu varsayılan değerdir ve önerilen ayar.

1

Paralel planı oluşturma bastırır.İşlem seri olarak yürütülür.

2-64

Belirtilen değer için işlemci sayısını sınırlar.Geçerli iş yüküne bağlı olarak daha az işlemci kullanılıyor olabilir.Kullanılabilir CPU sayısından daha büyük bir değer belirtilmezse, kullanılabilir CPU gerçek sayısı kullanılır.

Paralel dizin yürütme ve maxdop indeks seçeneği uygulamak için aşağıdaki Transact-SQL deyimleri:

  • DİZİN OLUŞTURMA

  • ALTER DİZİN YENİDEN OLUŞTURMA

  • drop INDEX (yalnızca kümelenmiş dizinler uygulanır.)

  • alter tablo (dizin) kısıtlaması eklemek

  • alter tablo bırakma (kümelenmiş dizin) KISITLAMA

İle kullanılan tüm semantik kuralları max degree of parallelism yapılandırma seçeneği maxdop indeks seçeneği kullanıldığında, uygulanabilir.Daha fazla bilgi için bkz: en büyük ölçüde parallelism seçeneği.

Zaman, yürütmek alter dizini yeniden DÜZENLEMEK veya olmadan LOB_COMPACTION, max degree of parallelism değeri olan bir tek zincir işlemi.maxdop indeks seçeneği alter dizini yeniden DÜZENLEMEK tarif edilemez deyim.

Çevrimiçi dizin işlemleri

Çevrimiçi dizin işlemleri dizin işlemi sırasında eşzamanlı kullanıcı etkinliği için izin verir.maxdop seçeneği, en büyük çevrimiçi dizin işlemi sırasında ayrılmış olan işlemci sayısını denetlemek için kullanabilirsiniz.Bu yolla, olanla eşzamanlı kullanıcıların dizin işlemi tarafından kullanılan kaynakları dengeleyebilirsiniz.Daha fazla bilgi için bkz: Çevrimiçi dizin işlemleri gerçekleştirme.

Bölüm dizin işlemleri

Sıralama gerektiren işlemler bölümlenmiş dizin için bellek gereksinimleri büyük olabilir, sorgu iyileştiricisi parallelism derece oluşturma işlemi için geçerlidir.Yüksek derece derecesi arttıkça bellek gereksinimi olur.Daha fazla bilgi için bkz: Bölümlenmiş dizinler için özel yönergeleri.

Örnekler

Aşağıdaki örnek dizin oluşturur IX_ProductVendor_VendorID , ProductVendor Tablo ve kümeleri max degree of parallelism seçeneğine 8.Sekiz veya daha fazla işlemci olduğu varsayılarak sunucu Veritabanı Altyapısı sınırlamak yürütülmesi dizin sekiz veya daha az işlemci.

USE AdventureWorks2008R2;
GO
IF EXISTS (SELECT name FROM sys.indexes
            WHERE name = N'IX_ProductVendor_VendorID')
    DROP INDEX IX_ProductVendor_VendorID ON Purchasing.ProductVendor;
GO
CREATE INDEX IX_ProductVendor_VendorID 
ON Purchasing.ProductVendor (BusinessEntityID)
WITH (MAXDOP=8);
GO