Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 10896|Yanıt: 0

[Kaynak] SQL Server 2008 tam metin araması hakkında biraz bilgi

[Bağlantıyı kopyala]
Yayınlandı 4.10.2015 21:03:04 | | |
1. Birkaç iyi yazı okudum,

SQL Server 2008 Tam Metin Arama Genel Bakış http://www.cnblogs.com/galaxyyao/archive/2009/02/13/1390139.html

Tam metin indeks http://www.cnblogs.com/liulun/articles/1368655.html


Öncelikle, bir paragraf kopyalayın:

S: Neden tam metin arama?
C: Metnin sorgulama hızı yavaş olduğu için (metin üzerine bir indeks oluşturmak önerilmez, bu yüzden bu)
S: 2005'ten fark var mı?
A; Elbette bir fark var ve isimden önce bir entegre (integrated) gelir. Daha önce, 05'in ayrı bir indeks dosyası ve motoru vardı, ancak 08'de dosya grubuna entegre edildi.
S: İlke nedir?
C: Anahtar kelimelere dayalı
S: Sıradan endekslerle nasıl ilişkisi var?
C: Amaç, sorgu hızını artırmaktır. Tam metin indeksler, indekslerle birçok benzer özelliğe sahiptir
    Tam metin arama, anlamsal arama kullanır (bu teknik kulağa çok derin geliyor) ve ikili belgeler için de kullanılabilir.
S: Ne için?
C: En basit örnek vermek gerekirse, makale araması, bulanık eşleştirme, hızlı ve büyük miktarlar da sıralanabilir.



İki. Sonra MSDN'ye gidip biraz Dongdong izleyin:

Tam metin indeks genel görünümü
http://msdn.microsoft.com/zh-cn/library/cc879306.aspx



Aşağıdaki alıntılardan bazıları aşağıdaki gibi kopyalanmıştır:

1. SQL Server 2008'de tam metin motoru veritabanı motoruna tamamen entegre edilmiştir. Tam metin motoru artık ayrı bir süreç (msftesql.exe) yerine SQL Server sürecinde (sqlservr.exe) yer alıyor. Tam metin motoru veritabanı motoruna entegre edilerek, tam metin yönetilebilirliği artırılır, hibrit sorgular optimize edilir ve genel performans iyileştirilir. Kimden: http://msdn.microsoft.com/zh-cn/library/ms142587.aspx

2. Tam metin arama oluşturma adımları, ekran görüntüsü almak için tembel olmak, başkalarının bunu yaptığına bakmak, doğrudan alıntı yapmak ama ikinci sayfadan itibaren benim yerel arama yapmamdan farklı, tam metin arama oluşturmak için tabloya doğrudan sağ tıklayamıyorum, varsayılan gri, sadece depodaki tam metin indeks dizin kataloğunda bir indeks oluşturabiliyorum.  http://www.sql-server-performance.com/2010/full-text-search-2008/

3. İlk başta, tam metin arama dizininin ilgili sabit diskte bir dizin olması gerektiğini düşündüm; bu locune kavramına benzer. Ancak aslında, SQL Server 2008 itibarıyla tam metin dizini sanal bir nesnedir ve hiçbir dosya grubuna ait değildir. Tam metin içerik tablosu, tam metin indeksler kümesini temsil eden mantıklı bir kavramdır. Kaynak:
http://msdn.microsoft.com/zh-cn/library/ms142497.aspx

4. Sadece bir tablo veya indeks görünümü için tam metin bir indeks oluşturabilirsiniz, normal bir görünüm için tam metin indeks oluşturamazsınız.

Tam metin indeks, tam metin motoru tarafından oluşturulan ve sürdürülen özel bir işaretçi tabanlı fonksiyonel indeks türüdür. Bir tablo veya görünüm üzerinde tam metin arama oluşturmak için, tablo veya görünüm benzersiz, sıfırlanamayan tek sütunlu bir indekse sahip olmalıdır. Tam metin motoru, tablodaki her satırı benzersiz sıkıştırılabilir anahtara eşlemek için bu benzersiz indeks kullanmalıdır. Tam metin indeksleri Char, Varchar, Nchar, Nvarchar, Text, Ntext, Image, XML, Varbinary ve Varbinary(max) sütunlarını içerebilir.

5. Tablo A'da tam metin bir indeks oluşturmak için bir önerme vardır; yani, Tablo A'da en az bir benzersiz indeks olmalıdır; yani, Tablo A'da indeks yoksa, Tablo A'da tam metin bir indeks oluşturmak istememektir.

6.SQL Server 2008'de, tam metin indeks boyutu yalnızca SQL Server örneğini çalıştıran bilgisayarın mevcut bellek kaynaklarıyla sınırlandırılır. http://msdn.microsoft.com/zh-cn/library/cc879306.aspx

7. Birden fazla sütunu sorgulama (tam metin arama)
Arama için bir sütun listesi belirleyerek, CONTAINS önlemini kullanarak birden fazla sütun sorgulaması yapabilirsiniz. Bu sütunlar aynı tablodan olmalıdır.

Parantez kullanın, Üretimden İsim, Renk Seçin. Ürün HARADA CONTAINS((Ad, Renk), 'Kırmızı';

Ya da * işaretini kullanın, SEÇİN Isim, Renk ÜRETIMDEN.Ürün HARADA CONTAINS(*, 'Kırmızı');

Kaynak: http://msdn.microsoft.com/zh-cn/library/ms142488.aspx

9. Birden fazla tablo için birden fazla sütunu sorgulayın

Yalnızca CONTAINS veya CONTAINS, örneğin WHERE CONTAINS(t1) gibi. İsim, 'Red') veya CONTAINS(t2. isim, 'Red');

10. Tam metin sorguların performansını optimize etmek

Tam metin kataloğu yeniden düzenlemek için ALTER FULL TEXT CATALOG REORGANIZE kullanabilirsiniz.

TAM METİN KATALOĞUNU DEĞIŞTIRİN ACCENT_SENSITIVITY=KAPALI MÜŞTERI YENIDEN OLUŞTURMA

Daha fazla bilgi için şuna bakabilirsiniz: http://msdn.microsoft.com/zh-cn/library/cc879244.aspx

11. Bir önek araması yapın http://msdn.microsoft.com/zh-cn/library/ms142492.aspx

Belirli bir önekte sahip kelimeler veya ifadeler için tam metin araması yapabilirsiniz.

Önek araması yaptığınızda, sütundaki belirtilen önekle başlayan metin içeren tüm öğeler geri döner. Örneğin, topun önekini içeren tüm satırları (örneğin topple, topping ve top kendisi) aramak için sorgu şöyle görünecektir:

ÜRÜN IÇINDEN * SEÇ (ProductName, '"auto*"'' );
Yıldız işaretinden (*) önce belirtilen metinle eşleşen tüm metin geri gönderilecektir.

Not: Metin ve yıldız işaretinden önce ve sonra çift tırnak eklemezseniz (örneğin CONTAINS (DEscrip{filter}tION, 'top*')), tam metin araması yıldız işaretini joker kart olarak kullanmaz.

Bir ön ek bir ifade ise, ifadeyi oluşturan her token ayrı bir ön ek olarak kabul edilir. Bu öneklerle başlayan kelimeleri içeren tüm satırlar geri döner. Örneğin, "hafif ekmek*" öneki "hafif ekmekli", "hafif ekmekli" veya "hafif ekmek" metinlerini içeren satırlar arar, ancak "hafifçe kızarmış ekmek" döner.





Önceki:Jacky Cheung'un Kantonca bir şarkısı, oldukça iyi hissettiriyor
Önümüzdeki:Jiangsu Eyaleti, Lianyungang'ta bir kız tuvalette gömleği soyuldu ve dövüldü
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com