sys.dm_db_missing_index_group_stats (Transact-sql)
Eksik dizinler, kayma dizinleri hariç grupları hakkında özet bilgi verir.
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
group_handle |
int |
Eksik dizin grubu tanımlar. Bu sunucu benzersiz tanımlayıcısıdır. Diğer sütunlar grubu dizin eksik düşünülür tüm sorgular hakkında bilgi sağlar. Bir dizin grubu yalnızca bir dizini içerir. |
unique_compiles |
bigint |
Derlemeler ve bu eksik dizin grubu yararlanacak derlemelerinde sayısı. Derlemeler ve birçok farklı sorgu derlemelerinde bu sütun değerine katkıda bulunabilir. |
user_seeks |
bigint |
Sayısı neden önerilen dizin grubu için kullanılmış kullanıcı sorgular tarafından şeklindeki arar. |
user_scans |
bigint |
Neden önerilen dizin grubu için kullanılmış kullanıcı sorgular tarafından taramaları sayısı. |
last_user_seek |
datetime |
Tarih ve saat son önerilen dizin grubu için kullanılmış kullanıcı sorgular tarafından neden arıyorlar. |
last_user_scan |
datetime |
Tarih ve saat son tarama tarafından kullanıcı sorguları neden önerilen dizin grubu için kullanılmış. |
avg_total_user_cost |
float |
Ortalama maliyet grubu dizin azaltılabilir kullanıcı sorgular. |
avg_user_impact |
float |
Bu eksik dizin grubu uygulanmıştır, kullanıcı sorguları deneyim olabilir ortalama yüzde yarar. Değeri, eğer bu eksik dizin grubu uygulanmıştır, sorgu maliyet bu yüzdeye göre ortalama olarak düşeceği anlamına gelir. |
system_seeks |
bigint |
Sayısı nedeniyle, önerilen dizin grubu için kullanılmış Oto istatistikleri sorguları gibi sistem sorgular tarafından şeklindeki arar. Daha fazla bilgi için, bkz. Otomatik istatistiği Event Class. |
system_scans |
bigint |
Neden önerilen dizin grubu için kullanılmış sistem sorgular tarafından taramaları sayısı. |
last_system_seek |
datetime |
Tarih ve saat son sistem arama neden sistem sorgular tarafından önerilen dizin grubu için kullanılmış. |
last_system_scan |
datetime |
Tarih ve saat son sistem tarama neden sistem sorgular tarafından önerilen dizin grubu için kullanılmış. |
avg_total_system_cost |
float |
Ortalama maliyet grubu dizin azaltılabilir sistem sorgular. |
avg_system_impact |
float |
Bu eksik dizin grubu uygulanan bu sistem sorgular deneyim olabilir ortalama yüzde yarar. Değeri, eğer bu eksik dizin grubu uygulanmıştır, sorgu maliyet bu yüzdeye göre ortalama olarak düşeceği anlamına gelir. |
Açıklamalar
Tarafından döndürülen bilgileri sys.dm_db_missing_index_group_stats her sorgu derleme veya recompilation tarafından değil, her sorgu yürütme güncelleştirilir. Kullanım istatistiklerini kalıcı değildir ve sadece kadar tutulur SQL Serveryeniden. Veritabanı yöneticileri onlar geri dönüşüm sunucusu kullanım istatistikleri tutmak isterseniz, yedek kopyalarını eksik dizin bilgilerini düzenli olarak yapmak gerekir.
İzinler
Bu dinamik yönetimi görünüm sorgulamak için kullanıcıların VIEW server state izni veya VIEW server state izni da anlaşılacağı izni verilmelidir.
Örnekler
Aşağıdaki örnekler, nasıl kullanılacağını göstermektedir sys.dm_db_missing_index_group_stats yönetimi görüntüleyin.
A.10 Eksik dizinler kullanıcı sorguları için yüksek beklenen iyileşme ile bulmak
Aşağıdaki sorgu belirler: hangi 10 eksik dizinler kullanıcı sorguları için azalan yüksek beklenen toplu iyileştirilmesi, üretecektir.
SELECT TOP 10 *
FROM sys.dm_db_missing_index_group_stats
ORDER BY avg_total_user_cost * avg_user_impact * (user_seeks + user_scans)DESC;
SELECT TOP 10 *
FROM sys.dm_db_missing_index_group_stats
ORDER BY avg_total_user_cost * avg_user_impact * (user_seeks + user_scans)DESC;
B.Belirli bir eksik dizin grubu için tek tek eksik dizinler ve sütun ayrıntılarını bulmak
Aşağıdaki sorgu belirler: hangi eksik dizinler eksik dizin grubu oluşturan ve sütun ayrıntılarını görüntüler. Bu örnek uğruna, eksik dizin grubu tanıtıcı 24'tür.
SELECT migs.group_handle, mid.*
FROM sys.dm_db_missing_index_group_stats AS migs
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON (migs.group_handle = mig.index_group_handle)
INNER JOIN sys.dm_db_missing_index_details AS mid
ON (mig.index_handle = mid.index_handle)
WHERE migs.group_handle = 24;
SELECT migs.group_handle, mid.*
FROM sys.dm_db_missing_index_group_stats AS migs
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON (migs.group_handle = mig.index_group_handle)
INNER JOIN sys.dm_db_missing_index_details AS mid
ON (mig.index_handle = mid.index_handle)
WHERE migs.group_handle = 24;
Bu sorgu, veritabanı, şema ve dizin eksik olduğu tablonun adını sağlar. Ayrıca, dizin anahtarı için kullanılacak sütun adlarını sağlar. create INDEX ddl deyimi eksik dizinler uygulamak için eşitlik sütunlar listelersiniz ve sonra eşitsizliği sütunları on yazarken <table_name> create INDEX deyimi yan tümcesi. create INDEX deyimi INCLUDE yan tümcesinde sütunlar listelenmelidir. Eşitlik sütunlar için etkili bir sırasını belirlemek için onları en seçici sütun ilk listeleyen kendi seçicilik üzerinde göre sipariş (en soldaki sütunu listesindeki).
Ayrıca bkz.
Başvuru
çalışırAddressTablo (Transact-sql)
sys.dm_db_missing_index_details (Transact-sql)