tam metin Lucene, tüm aday kimliğini lucene dizininden döndürecek ve adayı sorguya koyduğum kimliği belirleyip sonucuNHibernate + SqlServer Daha önce ben Lucene.Net</p> ben tam metin sorgu için aday</p> <p>adında bir tabloya sahip <p>kullanıyorum operasyon sonrasında İçin NHibernate</p> <p>Tam metin araması yapmak zorunda arama
döndürecektir. Fakat sorun 10'dan fazla aday özgeçmişinin mevcut olmaması nedeniyle Lucene çok yavaş Filtre 10 Lk satırdan değer ve aday filtre tekrar aday karşı sorguda için dönüş değeri koymak ve aynı zamanda ben bir çağrı kriterlerine sahip ve her sayfa için ben 100 adayın
şimdi yeni eklenen dönmek çok fazla zamanalıyor tablo 2000 şimdi ben DetachedCriteria Ve tek sorguda yapmak zorunda
1) Select candidate with some filters
2) Execute the function ContainsTable for candidate_full_text table
(which returns candidate tables id as key and rank of occurrence of the search string)
3) join the result from 1 & 2
4) Apply paging criteria (ie return 1st 100,2nd 100,3rd 100.. etc) according to page no
5) return the result by order of rank column (which is return by ContainsTable)
ardından şeyleri şöyle NHibernate DetachedCriteria kullanarak sorgulamak istiyorum ben SQLSunucusu tam metin dizini yapılandırılmış söz konusu tabloda candidate_full_text int,
Ad - - varchar
Dob candidate_full_text endeksi için anahtar sütun aday tabloları id .. İşte ben verilen 1) adayın masa modelleri (Min alanlar)
Kimliği - datetime,
2) candidate_full_text
id - int,
candidate_resume_full_text -ntext, (yapılandırılmış tam metin endeksi)
candidate_id - yerine Lucene SQL Server FTS kullanabilirler ve performans yeteneği yararlanabilir, kabul edilebilir ise
Tam metin aramada, özellikle Sql Server 2000'de değil, lucene'den daha hızlı olmaya değmezdim. Lucene, büyük veri miktarları için bile çok hızlıdır. Gerekli tüm verileri lucene koyarak IN sorgusunu ortadan kaldırmayı düşündünüz mü, Sql sunucusuna tamamen girmekten kaçınıyorsunuz? –
Ben teknik veriden ziyade daha mantıklı için sqlserver tam metin arama için gidiyorum ... Ben nhibernate kullanarak orm im kullanarak çünkü lucene tüm verileri koyamıyorum ... Ben sadece bir amaç için lucene kullanarak tam metin arama – Anand
Ben katılıyorum Jonas, Lucene'nin genel olarak SQL FTS'den çok daha performanslı bir çözüm olduğunu söyledi. Bununla birlikte, eğer SQL FTS'nin performansı yeterli ise, bunu kullanmak, FTS sonuçlarının (CONTAINSTABLE veya FREETEXTTABLE işlevleri aracılığıyla) diğer ilişkisel verilere ilişkisel olarak katılabilmesinin yararını sağlar, böylece gerçekten karmaşık filtreleme ve gruplama yapmak çok daha kolay hale gelir . –