Aracılığıyla paylaş


Eksik dizinler özelliği hakkında

Eksik dizinler özelliği dinamik yönetimi nesneleri kullanır ve Showplan bilgileri eksik dizinler sağlamak için geliştirmek SQL Server sorgu performansı.

Bileşenler

Zaman sorgu iyileştiricisi bir sorgu planı oluşturur iyi dizinler için belirli filtre koşulu nedir analiz eder.En iyi dizinler yoksa, sorgu iyileştiricisi hassasiyetli sorgu planı oluşturur, ancak yine de bu dizinler hakkında bilgi depolar.Bunlar uygulanacak olup olmadığını karar eksik dizinler özelliği, bu dizinler ile ilgili bilgilere erişim sağlar.

Eksik dizinler özelliği aşağıdaki bileşenlerden oluşur:

  • Eksik dizinler hakkında bilgi dönmek için sorgulanan dinamik yönetimi nesneleri küme.

  • The MissingIndexes element in XML Showplans, which correlate indexes that the query optimizer considers missing with the queries for which they are missing.

Eksik dizinler özelliği bileşenleri aşağıdaki bölümlerde ayrıntılı olarak ele alınmıştır.

Dinamik yönetimi nesneleri

Tipik bir iş yükünü çalışan sonra SQL Server, listelenen aşağıdaki tablo. dinamik yönetimi nesneleri sorgulamak eksik dizinler hakkında bilgi almakBu dinamik yönetimi nesneleri depolanır master veritabanı.

Dinamik yönetimi nesnesi

Döndürülen bilgileri

sys.dm_db_missing_index_group_stats (Transact-sql)

Eksik dizin grupları, örneğin, belirli bir grubu eksik dizinlerin uygulayarak kazanılan performans iyileştirmeleri hakkında özet bilgi verir.

sys.dm_db_missing_index_groups (Transact-sql)

Belirli bir grup grup kimliği ve o grubun içinde bulunan tüm eksik dizinler tanımlayıcıları gibi eksik dizinler hakkında bilgi verir.

sys.dm_db_missing_index_details (Transact-sql)

Eksik dizin hakkında ayrıntılı bilgi döndürür; Örneğin, bunu adı ve tablo tanıtıcısı burada dizini eksik ve sütun ve eksik dizin olun sütun türlerini döndürür.

sys.dm_db_missing_index_columns (Transact-sql)

Dizin eksik tablo sütunları veritabanı hakkında bilgi verir.

Bu dinamik yönetimi nesneleri araçları ve bilgileri eksik dizinler uygulayan oluştur dizin ddl deyimleri oluşturmak için kullandığınız komut dosyaları tarafından döndürülen bilgileri kullanabilirsiniz.

Hareket tutarlılığı

Bu dinamik yönetimi nesneleri satırlara tek tek değişiklikleri ETE.Yani, bir sorgu iptal edildi veya kapsayan işlem geri alınır, bu sorgu için eksik dizinler hakkında bilgi içeren satırları varolmaya devam eder.

Sadece tüm işlemleri desteklenir.Denetim noktaları ve kısmi geri alma desteklenmiyor.

Not

Bir tablo için meta veriler değiştiğinde, bu Dinamik yönetim nesneleri tüm eksik dizin bilgilerini bu tablo silinir.Tablo meta veriler değişiklikleri sütun eklendiğinde veya tablodan, örneğin, bırakılan veya bir tablodaki bir sütun üzerinde dizin oluşturulduğunda ortaya çıkabilir.

xml Showplan MissingIndexes öğesi

Sorguları ile dinamik yönetimi nesnesi içinde tanımlanan eksik dizinler ilişkilendirmek için sonuçlar, görebileceğiniz MissingIndexes öğesi xml Showplans.The MissingIndexes element is illustrated in the following example:

<ShowPlanXML…>

 <BatchSequence>

  <Batch>

   <Statements>

    <StmtSimple…>

     <StatementSetOptions… />

      <QueryPlan…>

       <MissingIndexes>

        <MissingIndexGroup Impact="22.8764">

         <MissingIndex Database="[ADVENTUREWORKS2008R2]" Schema="[Person]" Table="[Address]">

          <ColumnGroup Usage="EQUALITY">

           <Column Name="[PostalCode]" ColumnId="4" />

          </ColumnGroup>

          <ColumnGroup Usage="INEQUALITY">

           <Column Name="[ModifiedDate]" ColumnId="5" />

          </ColumnGroup>

          <ColumnGroup Usage="INCLUDE">

           <Column Name="[AddressLine1]" ColumnId="2" />

           <Column Name="[AddressLine2]" ColumnId="3" />

           <Column Name="[StateProvinceID]" ColumnId="1" />

          </ColumnGroup>

         </MissingIndex>

        </MissingIndexGroup>

       </MissingIndexes>

Bilgileri MissingIndexes öğesi ne dizinler'de açıklanan belirli sorgu performansını belirlemenize yardımcı olabilir StmtSimple içeren öğe Transact-SQL kendini deyim.Daha sonra bilgileri kullanarak, bu öğe için döndürülen, Oluştur dizin ddl deyim yazabilirsiniz.

Etkinleştirme ve eksik dizinler özelliği devre dışı bırakma

Eksik dizinler özelliği varsayılan olarak açıktır.Hiçbir denetim özelliğini etkinleştirmek veya devre dışı bırakmak için sunulan veya tablolardan herhangi birini sıfırlamak için dinamik yönetimi nesneleri sorgulandığında döndürdü.Zaman SQL Server ise yeniden, tüm dizin bilgileri eksik bıraktı.

Bu özellik yalnızca, devreden çıkarılabilir bir örnek , SQL Server kullanarak başladı - x bağımsız değişkeni ile sqlservr komut istemi yardımcı programı.Daha fazla bilgi için bkz: Sqlservr uygulama.