Aracılığıyla paylaş


sys.dm_exec_query_optimizer_info (Transact-SQL)

Çalışması hakkında ayrıntılı istatistiklerini verir SQL Server sorgu iyileştiricisi. Bu görünüm bir iş yükünü ayarlama, sorgu en iyi duruma getirme sorunları veya geliştirmeleri belirlemek için kullanabilirsiniz.Örneğin, son maliyet değerini en iyi duruma getirme ve geçen saat değeri toplam sayısı, sorgu en iyi duruma getirmeleri geçerli iş yükünü ve ayarlama işlemi sırasında gözlenen değişiklikleri karşılaştırmak için kullanabilirsiniz.Bazı sayaçlar yalnızca ilgili verileri sağlar. SQL Server iç tanılama kullanın. Bu sayaç yalnızca "iç." olarak işaretlenmiş

Name

Veri türü

Açıklama

sayacı

nvarchar(8000)

En iyi duruma getiricisi istatistikleri olay adı.

oluşumu

bigint

Bu sayaç için en iyi duruma getirme olay yinelenme sayısı.

value

float

Olay tekrarı başına ortalama özellik değeri.

İzinler

Sunucudaki SUNUCU DURUM VIEW iznine gerek duyar.

Remarks

sys.dm_exec_query_optimizer_info (sayaç) aşağıdaki özellikleri içerir.Tüm oluşumu değerleri birikimlidir ve sistem yeniden 0 olarak küme.Değer alanlar için tüm değerleri, sistemin yeniden başlatılmasını NULL olarak küme.Aynı satırda oluşumu değeri payda hesaplamasında Ortalama, ortalama belirttiğiniz tüm değer sütun değerleri kullanın.Tüm en iyi duruma getirmeleri query ne zaman olarak ölçülür SQL Server değişiklikleri belirler. dm_exec_query_optimizer_infoHer iki kullanıcı ve sistem tarafından oluşturulan sorgular da dahil olmak üzere. Önceden önbelleğe alınmış bir planı yürütülmesini değerleri değiştirme dm_exec_query_optimizer_info, yalnızca en iyi duruma getirmeleri önemli.

Sayacı

Oluşumu

Değer

en iyi duruma getirme

En iyi duruma getirmeleri toplam sayısı.

Geçerli değil

geçen saat

En iyi duruma getirmeleri toplam sayısı.

En iyi duruma getirilmesi (sorgu) tek bir deyim saniye başına ortalama geçen saat.

son maliyet

En iyi duruma getirmeleri toplam sayısı.

Dahili maliyet birimlerindeki en iyi duruma getirilmiş bir plan için tahmini ortalama maliyeti.

Önemsiz planı

Yalnızca iç

Yalnızca iç

Görevler

Yalnızca iç

Yalnızca iç

hiçbir planı

Yalnızca iç

Yalnızca iç

0'ı arama

Yalnızca iç

Yalnızca iç

Arama 0 saat

Yalnızca iç

Yalnızca iç

Arama 0 görevler

Yalnızca iç

Yalnızca iç

1'ı arama

Yalnızca iç

Yalnızca iç

Arama 1 saat

Yalnızca iç

Yalnızca iç

Arama 1 görevler

Yalnızca iç

Yalnızca iç

2'ı arama

Yalnızca iç

Yalnızca iç

Arama 2 saat

Yalnızca iç

Yalnızca iç

Arama 2 görevler

Yalnızca iç

Yalnızca iç

Aşama 1. Aşama için 0 geçirmesine

Yalnızca iç

Yalnızca iç

Aşama 1. Aşama için 1 geçirmesine

Yalnızca iç

Yalnızca iç

zaman aşımı

Yalnızca iç

Yalnızca iç

bellek sınırı aşıldı

Yalnızca iç

Yalnızca iç

stmt Ekle

En iyi duruma getirmeleri için INSERT deyimleri olan alt işlemleri sayısı.

Geçerli değil

stmt silme

DELETE deyimleri için olan en iyi duruma getirmeleri sayısı.

Geçerli değil

Güncelleştirme stmt

UPDATE deyimi için olan en iyi duruma getirmeleri sayısı.

Geçerli değil

alt sorgu içeren

En iyi duruma getirme (Bu bağlantı için en az bir alt sorgu içeren sorgu sayısı.

Geçerli değil

başarısız unnest

Yalnızca iç

Yalnızca iç

tablolar

En iyi duruma getirmeleri toplam sayısı.

En iyi duruma getirilmiş bir sorguya başvurulan tablolar ortalama sayısı.

ipuçları

Sayısı bazı ipucu belirtildi.Sayılan ipuçları içerir: birleştirmek, GROUP, UNION ve FORCE ORDER sorgu ipuçları, FORCE PLANLA seçeneğini ayarlamak ve ipuçları katılın.

Geçerli değil

Sipariş ipucu

Bir zorlama sipariş ipucu sayısı belirtildi.

Geçerli değil

birleştirmek ipucu

Sayısı birleştirmek algoritması tarafından bir birleştirmek ipucu zorlandı.

Geçerli değil

Görünüm başvurusu

Sayısı sorguda bir görünüme başvuruyor.

Geçerli değil

Uzak bir sorgu

Sorgu, tablo four-part bir ad veya bir OPENROWSET sonuç gibi en az bir uzak veri kaynağı Burada başvuruda bulunulan en iyi duruma getirmeleri sayısı.

Geçerli değil

en fazla DOP

En iyi duruma getirmeleri toplam sayısı.

Ortalama etkin MAXDOP değeri en iyi duruma getirilmiş bir plan.Varsayılan olarak etkin MAXDOP saptanır parallelism en büyük ölçüde sunucu yapılandırma seçeneği ve belirli bir sorgu için sorgu MAXDOP ipucu değeri tarafından geçersiz kılınmış olabilir.

en fazla özyineleme düzey

En iyi duruma getirmeleri MAXRECURSION düzey 0'dan büyük sorgu ipucu belirtilmedi sayısı.

En fazla özyineleme düzey ile sorgu ipucunu burada belirtilen ortalama MAXRECURSION düzeyinde en iyi duruma getirme.

Dizin oluşturulmuş görünümler yükledi

Yalnızca iç

Yalnızca iç

Dizin oluşturulmuş görünümler eşleşmedi

Burada bir veya daha çok dizin oluşturulmuş görünümler eşleşen en iyi duruma getirmeleri sayısı.

Eşleşen görünümleri ortalama sayısı.

kullanılan dizin oluşturulmuş görünümler

Bir veya daha çok dizin oluşturulmuş görünümler eşleşen sonra çıkış plandaki kullanıldığı en iyi duruma getirmeleri sayısı.

Görünümler kullanılan ortalama sayısı.

Dizin oluşturulmuş görünümler güncelleştirildi

Bir veya daha çok dizin oluşturulmuş görünümler tutan bir plan üretir ve iyileştirmeleri DML ekstresinin numarası.

Tutulan görünümleri ortalama sayısı.

Dinamik imleç isteği

Bir dinamik imleç isteği belirtilmedi en iyi duruma getirmeleri sayısı.

Geçerli değil

hızlı ileri imleç isteği

En iyi duruma getirmeleri ileri sarma imleç isteği belirtilmedi sayısı.

Geçerli değil

birleştirme stmt

En iyi duruma getirmeleri için BIRLEŞTIRME ifadeleri olan alt işlemleri sayısı.

Geçerli değil

Örnekler

C.Üzerinde en iyi duruma getiricisi Yürütme istatistiklerini görüntüleme

Bu örnek için geçerli en iyi duruma getiricisi Yürütme istatistiklerini nelerdir SQL Server?

SELECT * FROM sys.dm_exec_query_optimizer_info;

b.En iyi duruma getirmeleri toplam sayısını görüntüleme

En iyi duruma getirmeleri kaç yapılır?

SELECT occurrence AS Optimizations FROM sys.dm_exec_query_optimizer_info
WHERE counter = 'optimizations';

c.En iyi duruma getirme başına ortalama saat

En iyi duruma getirme başına ortalama saat nedir?

SELECT ISNULL(value,0.0) AS ElapsedTimePerOptimization
FROM sys.dm_exec_query_optimizer_info WHERE counter = 'elapsed time';

d.Alt sorgular içeren en iyi duruma getirmeleri bölümü

En iyi duruma getirilmiş sorgularının hangi kesir bir alt sorgunun içerdiği?

SELECT (SELECT CAST (occurrence AS float) FROM sys.dm_exec_query_optimizer_info WHERE counter = 'contains subquery') /
       (SELECT CAST (occurrence AS float) 
        FROM sys.dm_exec_query_optimizer_info WHERE counter = 'optimizations')
        AS ContainsSubqueryFraction;