Kümelenmemiş dizin tasarım yönergeleri

Kümelenmemiş dizin anahtar değerleri ve depolama konumuna işaret eden satır Belirleyicileri içeren tablo veri.Kümelenmemiş dizin mimarisi hakkında daha fazla bilgi için bkz: Kümelenmemiş dizin yapıları.

Bir tablo veya dizinli görünüm, birden fazla kümelenmemiş dizinler oluşturabilirsiniz.Genellikle kümelenmemiş dizinler kümelenmiş dizin tarafından kapsanmayan sık kullanılan sorgu performansını artırmak için tasarlanmalıdır.

Benzer şekilde, kullandığınız dizin kitaptaki query optimizer arar veri değeri için veri değeri konumunu bulmak için kümelenmemiş dizin arama yaparak tablo ve sonra o konumdan doğrudan veri alır.Tam eşleşme dizin girişlerini tam konumu açıklayan içerdiğinden sorgular için bu en iyi seçenek kümelenmemiş dizinleri yapar tablo sorgularda Aranan veri değerleri.Örneğin, sorguya Person.Person belirli Soyadı, sahip kişiler için tablo sorgu iyileştiricisi kümelenmemiş dizin kullanabilir IX_Person_LastName_FirstName_MiddleName; Bu LastName birisi anahtar alt sütunlar.sorgu iyileştiricisi Tüm girişleri belirtilen eşleşen dizin içinde hızlı bir şekilde bulabilirsiniz LastName.Her dizin girişini tam sayfa ve satır tablo veya kümelenmiş dizin, ilgili veri bulunabilir gösteriyor.Sonra sorgu iyileştiricisi tüm girişleri bulur dizinde, onu tam sayfa ve satır veri almak için doğrudan gidebilirsiniz.

Veritabanı düşünceleri

Veritabanı özelliklerini kümelenmemiş dizinler tasarlarken göz önünde bulundurun.

  • Veritabanları veya düşük güncelleştirme gereksinimleri, ancak çok büyük miktarlarda veriyi içeren tabloları sorgu performansını artırmak için birçok kümelenmemiş dizinleri yararlanabilirsiniz.Filtre uygulanmış dizinler için iyi tanımlanmış sorgu performansını artırmak, dizin depolama maliyetlerini düşürmek ve tam tablo kümelenmemiş dizinleri ile karşılaştırıldığında dizin bakım maliyetlerini azaltmak için veri alt kümelerine oluşturmayı düşünün.

    Karar destek sistemi uygulamaları ve öncelikle salt okunur veri içeren veritabanları birçok kümelenmemiş dizinleri yararlanabilirsiniz.sorgu iyileştiricisi En hızlı erişim yöntem belirlemek arasından seçim için daha fazla dizinler vardır ve düşük güncelleştirme özellikleri veritabanı dizin bakım impede performans anlamına gelir.

  • Çevrimiçi işlem işleme uygulamaları ve yoğun bir şekilde güncelleştirilmiş tablo içeren veritabanlarını over-indexing kaçınmanız gerekir.Ayrıca, dizinler, mümkün olduğunca az sayıda sütun içeren dar, olmalıdır.

    Çok sayıda dizinler üzerinde bir tablo tüm dizinler uygun şekilde veri olarak ayarlanması gerekir çünkü INSERT, update, delete ve birleştirme deyimleri performansı etkileyen tablo değişiklikler.

Sorgu hakkında önemli noktalar

Kümelenmemiş dizinleri oluşturmadan önce verilerinizi nasıl erişileceğini anlamanız gerekir.Aşağıdaki özniteliklere sahip sorgular için kümelenmemiş dizin kullanmayı göz önünde bulundurun:

  • BİRLEŞTİRME veya group by yan tümceleri kullanın.

    Herhangi bir yabancı anahtar sütunları üzerinde birden fazla kümelenmemiş dizinleri birleştirmek ve gruplandırma işlemlerle ilgili sütunlara ve kümelenmiş dizin oluşturun.

  • Büyük döndürmeyin sorguları sonuç kümeleri.

    İyi tanımlanmış satırların alt küme küme küme kümesini büyük bir dönüş sorgularını karşılamak için filtre uygulanmış dizinler oluşturmak tablo.

  • Tam eşleşmelerin döndüren arama koşulu where yan tümce tümce tümce gibi bir sorgu içinde sık sık katılan sütunlar içerir.

Sütun hakkında önemli noktalar

Bir veya daha aşağıdaki özniteliklere sahip sütunlar göz önünde bulundurun:

  • Sorguyu kapsar.

    Dizin sorgudaki tüm sütunların içerdiğinde performans artışı elde edersiniz.sorgu iyileştiricisi ; Dizin içindeki tüm sütun değerleri bulabilirsiniz Tablo veya kümelenmiş dizin veri daha az disk g/Ç işlemlerinde ortaya çıkan erişilebilir değil.Dizin dahil sütunları içeren geniş bir dizin anahtar oluşturmak yerine kapak sütun eklemek için kullanın.Daha fazla bilgi için bkz: Eklenen sütunlar ile dizin.

    Tablonun kümelenmiş dizin varsa, sütun veya sütunları kümelenmiş Dizinde tanımlanan otomatik olarak her tablo kümelenmemiş dizin sonuna eklenir.Kümelenmiş Dizin sütunları kümelenmemiş dizin tanımında belirtmeden bu kapsanan bir sorgu oluşturabilir.Örneğin, bir tablo sütun kümelenmiş dizin olan C, kümelenmemiş dizin sütunları B ve A , anahtar değerleri sütunlar vardır B, A, ve C.

  • Soyad ve kümelenmiş dizin, diğer sütunlar için kullanılırsa, ad, birleşimi gibi farklı değerlerin çok fazla.

    Yalnızca 1 ve 0 ' gibi çok az sayıda farklı değerler tablo taraması genellikle daha verimli olduğu için sorguların çoğu dizin kullanmaz.Bu veri türü için ayrı bir değer üzerinde filtre uygulanmış dizin oluşturma yalnızca az sayıda satır içinde oluşur göz önünde bulundurun.Örneğin, en çok değer 0 ise, sorgu iyileştiricisi 1 içeren veri satırları için filtre uygulanmış dizin kullanabilir.

Dizin seçenekleri

kümelenmemiş dizin oluşturduğunuzda belirtilebilir birkaç dizin seçenekleri vardır.Aşağıdaki seçenekler için özel dikkat vermelisiniz:

  • FILLFACTOR

  • ÇEVRİMİÇİ

Daha fazla bilgi için bkz: Dizin seçeneklerini ayarlama.