Aracılığıyla paylaş


Eksik dizin özelliği hakkında

Eksik dizin özelliği Dinamik yönetim nesneleri ve gösterim planı geliştiren eksik dizin hakkında bilgi sağlamak için kullanır SQL Server sorgu performansı'nı tıklatın.

Bileşenler

sorgu iyileştiricisi a query plan oluşturduğunda, belirli bir filtre durumu için iyi dizinler nelerdir çözümler.En iyi dizinler yoksa, sorgu iyileştiricisi suboptimal sorgu planına oluşturur, ancak yine de bu dizinler hakkında bilgi depolar.Eksik dizinleri özelliği, uygulanması mi karar verebilirsiniz; böylece bu dizinler hakkında bilgilere erişim sağlar.

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

  • Eksik dizin hakkında bilgi için sorgulanan Dinamik yönetim nesneleri kümesi.

  • The MissingIndexes element in XML Showplans, which correlate indexes that the sorgu iyileştiricisi considers missing with the queries for which they are missing.

Bileşenler eksik dizin özelliği, 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 SQL Server, aşağıdaki tabloda listelenen Dinamik yönetim nesneleri sorgulayarak eksik dizin hakkında bilgi alabilirsiniz. Bu dinamik Yönetim Nesneleri saklanan Yönetici veritabanıdır.

Dinamik yönetimi nesnesi

Döndürülen bilgi

sys.dm_db_missing_index_group_stats (Transact-SQL)

Dizin grupları, örneğin, belirli bir gruba eksik dizinlerinin uygulayarak kazanılan performans geliştirmeleri eksik hakkında özet bilgi verir.

sys.dm_db_missing_index_groups (Transact-SQL)

Grup tanıtıcısı ve bu grubu içerdiği tüm eksik dizinlerinin tanımlayıcıları eksik dizin, belirli bir grup bilgilerini döndürür.

sys.dm_db_missing_index_details (Transact-SQL)

Eksik bir dizin hakkında bilgi döndürür ayrıntılı; örneğin, adı ve tablo tanıtıcısı dizini eksik olduğu sütunlar ve sütun türleri, eksik dizin yapmalısınız verir.

sys.dm_db_missing_index_columns (Transact-SQL)

Dizin eksik olan bir tablo sütunları veritabanı hakkında bilgiler verir

Bu araçları ve bilgileri eksik dizin uygulayan CREATE INDEX DDL deyimleri oluşturmak için kullandığınız komut dosyaları Dinamik yönetim nesneleri tarafından döndürülen bilgileri kullanabilirsiniz.

Işlem tutarlılığı

Bu dinamik Yönetim Nesneleri satırları tek tek değişiklik, işlem tutarlı değil.Diğer bir deyişle, bir sorgu durduruldu veya kapsayan işlem geri alındı, bu sorgu için eksik olan dizinler hakkında bilgi içeren satırları varolmaya devam eder.

Yalnızca tüm hareketler desteklenmiyor.Denetim noktalarının yanı sıra kısmi Al desteklenmez.

Not

Bu tablo tüm eksik dizin bilgileri, bir tablo için meta veriler değiştiğinde, bu dinamik Yönetim Nesneleri silinir.meta veriler değişiklikleri tablo sütunları bir tablodan, örneğin, bırakılan eklendiğinde veya veya bir tabloya bir sütun üzerinde bir dizin oluşturduğunuzda oluşur.

XML gösterim planı MissingIndexes öğesi

Eksik dinamik Yönetim nesne sonuçlarında tanımlanan dizinleri ile sorgular'ı ilişkilendirmek için , görebilirsiniz MissingIndexes XML Showplans öğe.The MissingIndexes element is illustrated in the following example:

<ShowPlanXML…>

 <BatchSequence>

  <Batch>

   <Statements>

    <StmtSimple…>

     <StatementSetOptions… />

      <QueryPlan…>

       <MissingIndexes>

        <MissingIndexGroup Impact="22.8764">

         <MissingIndex Database="[ADVENTUREWORKS]" 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 öğe ne dizinler içinde açıklanan özel bir sorgu performansını belirlemenize yardımcı olabilirStmtSimple içeren öğesiTransact-SQL deyim kendi. Daha sonra bilgileri kullanarak, bu öğe için döndürdü, CREATE INDEX DDL bir deyim yazabilirsiniz.

Etkinleştirme ve eksik dizin özelliğini devre dışı bırakma

Eksik dizin özelliği varsayılan olarak açıktır.Denetim özelliğini açıp kapatmak için sağlanan veya tablolardan herhangi birini sıfırlamak için Dinamik yönetim nesneleri sorgulandığında döndürdü.Ne zaman SQL Server olduğundan yeniden, tüm dizin bilgileri eksik bıraktı.

Bu özellik yalnızca, devreden çıkarılabilir bir örnek, SQL Server kullanarak başlatıldı -x bağımsızSqlservr komut satırı yardımcı programı.Daha fazla bilgi için bkz:Sqlservr uygulama.