2010-11-28 24 views
6

Rails 3 ATM için eksiksiz metin arama yöntemlerini değerlendiriyorum. Burada birisinin tavsiyesi var mı? Sanki bilinen yöntemlerin çoğu (Sunspot, Sphinx, Ferret, Xapian) Rails 3 için henüz hazır değil gibi görünüyor. Öyle mi? Şu anda, makinemde çok fazla kaynağım var. Uygulamamı dağıtmak isterdim, ancak yine de arama motorunun boşta kalmasını mümkün olduğunca düşük tutmak istiyorum. Burada herhangi bir ilişki varsa PostgreSQL'i kullanmayı planlıyorum.Rails 3 için tam metin araması 3

Bazı okumalardan sonra, Sunspot veya Xapian'ı kullanmak istediğimden neredeyse eminim. Ama başka (ve daha iyi) bir çözüm varsa lütfen bana söyleyin :-) Özellikle de Sunspot ile ilgili olarak, Rails uygulamasına ek olarak tam bir Tomcat çalışmasının akıllıca olup olmadığından emin değilim. Bu takımyıldızıyla herkesin deneyimi var mı? Eğer bir arama motoru kullanmak gerekir Tam metin arama özellikleri için önceden

sayesinde Ulf

cevap

6

PostgreSQL'i kullanıyorsanız, harici kütüphaneler için erişmeniz gerekmeden önce yerleşik metin arama özelliklerinden korkunç bir miktar alabilirsiniz. Mükemmel sonuçlar ile yıllardır tsearch sorguları kullanıyorum.

PostgreSQL tam metin arama, Relevance & ranking hesaplamak için yakınlık kelimesini analiz eder ve highlighting of search results gibi kullanışlı özellikler sunar.

O İngilizce s ve es çoğulculuk eklerini görmezden bilir örneğin da dile özgü normalleştirme kuralların farkındadır

; Bu nedenle, "ülke" için yapılan aramalar, Google'ın yaptığı gibi, "ülkeler" için de vurgulanan sonuçları da getirecektir.

Bahsettiğiniz kitaplıkları kullanmamanız gerektiğini ileri sürmüyorum, ancak tüm gereksinimleriniz değilse çoğunluğu yerine getirip getirmeyeceğini görmek için veritabanını araştırmaya değer.

+0

'u başlattığımıza göre bu çözümden oldukça memnunum. Teşekkürler. –

+0

Teşekkürler ulf. Bugün yorumunuz oldukça tesadüf! Sadece bu dakika bu konu hakkında bir blog yazısı yazdım (PostgreSQL'de Tam Metin Arama). Bugün daha sonra yayınlayacağım. – Scott

+0

Bunu duyduğuma sevindim :-). –

0

. Örneğin, Lucene Kütüphanesi'ni jRuby ile kullanabilirsiniz. Eğer standart Ruby (cRuby) ile kalmak isterseniz, couture Solr kullanın.

Raylar için bazı Solr eklentileri de vardır: Örneğin http://wiki.apache.org/solr/SolRuby ile başlamak iyi bir fikir olabilir.

1

Rails3 ile güneş lekesini kullanabilirsiniz, sorun değil. Güneş lekesi/sunspot_rails mücevherlerini (1.2.rc4) kullanarak çok başarılı bir şekilde yaptık. Ve bir Tomcat sunucusunda Solr'i çalıştırmak için çok fazla bir güçlük de yok.

0

Sunspot Rails3 hazır, birkaç Rails3 uygulamasında zaten kullanıyoruz. Solr ve Sunspot ile çok başarılı oldum. blog series on it