Aracılığıyla paylaş


Performans ayarlama ve en iyi duruma getirme (Bu bağlantı, bir tam metin sorguları

Tam metin sorguları için performans etkilediği donanım kaynakların (bellek, disk hızı, CPU hızı, ve makine mimarisi.

tam metin sorgusu performansı artırma önerileri

tam metin sorgusu performansını artırmaya yardımcı olacak öneriler listesi aşağıdadır:

  • Temel dizini birleştirme tablo kullanarakALTER INDEX REORGANIZE.

  • tam metin kataloğu kullanarak yeniden düzenlemeALTER FULLTEXT CATALOG yeniden düzenleme.Bu deyim tam metin dizinleri ana dizin birleştirme, katalog işlenir için sınama performans önce bunu, emin olun.

  • Seçtiğiniz anahtar sütunları tam metin küçük bir sütun için ayarlayın.Although a 900-byte column is supported, we recommend using a smaller key column in a full-text index.int and bigint provide the best performance.

  • Bir tamsayı tam-metin kullanarak anahtar birleştirmek ile önlerdocid Eşleme Tablosu.Bu nedenle, bir tamsayı tam-metin anahtar bir sipariş sayısını boyutları ile sorgu performansını artırır ve gezinme performansı artırır.Ek performans avantajları, neden tam-metin anahtar de kümelenmiş dizin olan anahtar.Daha fazla bilgi için bkz:Tam metin dizin yapısıveNasıl Yapılır: Tam metin anahtarını sütun (Transact-SQL) hakkında sorgula.

  • Birden çok birleştirmeİçerir içine bir CONTAINS karşılaştırma belirtimi. yüklemler InSQL Serversütun içerir sorgusu. listesini belirtebilirsiniz

  • Yalnızca gerekli tam metin anahtarını veya sıralama bilgileri kullanınCONTAINSTABLE veya FREETEXTTABLE yerine ve CONTAINS, FREETEXT sırasıyla.

  • To limit results and increase performance, use the top_n_by_rank parameter of the FREETEXTTABLE and CONTAINSTABLE functions.top_n_by_rank allows you to recall only the most relevant hits.Yalnızca iş senaryonuz tüm olası isabet geri çağırma gerektirmiyorsa, bu parametreyi kullanın (yani, değil gerektirmez Toplam geri çağırma ).

    Not

    Toplam geri çağırma tipik olarak yasal senaryoları için gereklidir, ancak performans gibi bir e iş senaryoları için daha az önemli olabilir-iş.

  • tam metin sorgusu planını uygun birleştirmek planı seçilen emin olmak için denetleyin.Bir birleştirmek İpucu ya da sorgu ipucu, gerektiğinde kullanın.tam metin sorgusu parametresi kullanılırsa, ilk değer parametre Sorgu planını belirler.GÖÇLERİNDEN için kullanabilirsinizsorgu İpucu ., değeri oluşturmak için sorgu zorlamak için Bu bir belirli sorgu planı ve daha iyi performans sağlar.

  • Tam metin dizini içinde çok fazla tam metin dizini parçaları için sorgu performansı önemli ölçüde düşmesine neden.To reduce the number of fragments, reorganize the full-text catalog by using the REORGANIZE option of the ALTER FULLTEXT CATALOGTransact-SQL statement.Bu deyim, aslında tek bir büyük bölümü tüm parçaları birleştirir ve tüm eski girişler tam metin dizini kaldırır.

  • InSQL Server 2008tam metin araması, CONTAINSTABLE (AND, OR) belirtilen mantıksal işleçler uygulanan SQL birleşim veya tam-metin tablo değerli işlevler (STVF) akış yürütme içinde.Genellikle mantıksal işleçler karıştırmak sorguları SQL birleşimler de sahip, ancak mantıksal işleçleri yalnızca bir tür sorguları yürütme tarafından yalnızca tam-metin uygulanır.Tam metin yürütme STVF içinde bir mantıksal işleç uygulaması SQL birleşim daha hızlı yapan bazı özel dizin özelliklerini kullanır.Bu nedenle, mümkünse yalnızca tek bir mantıksal işleç türü kullanarak sorguları çerçeve, öneririz.

  • Kullanmak için yazılmış, seçmeli ilişkisi predications içeren uygulamalar için seçmeli ilişkisel yüklemler ve unselective tam metin koşullarına kullanan sorguları en iyi gerçekleştirebilecek sorgu iyileştiricisi.Bu sorgu iyileştirici, bir etkin sorgu planı oluşturmak için karşılaştırma veya aralık pushdown yararlanabilir mi karar verir.Bu yaklaşımı daha kolaydır ve genellikle daha verimlidir ilikisel veriler olarak tam metin veri dizin.

Bir Word ayırma, sözlük ve Stoplist birleşik belirteçlere ayırma sonuçlarını görüntüleme

Belirli bir sözcük ayırıcısı, eş anlamlılar sözlüğü ve stoplist birlikte bir sorgu dizesi girişi uygulandıktan sonra belirteçlere ayırma sonucu kullanarak görüntüleyebileceğinizsys.dm_fts_parser Dinamik yönetim görünümü. Daha fazla bilgi için bkz:sys.dm_fts_parser (Transact-SQL).