2010-07-23 54 views
2

我们正在使用Ruby on Rails实施产品评论网站。如何实现Ruby on Rails网站的搜索层?

搜索是用户体验的核心组件。我们需要快速且相关地进行搜索。

我们应该使用Lucene还是其他开源搜索层?我们是否应该仅针对我们的网站使用Google的搜索API和索引?或者我们应该开发专有的搜索功能?

谢谢!

回答

1

我个人很喜欢狮身人面像+ UltraSphinx,但我敢肯定也有,谁知道像Lucene的或XXX的人的数量不变。我担心这取决于您的问题中没有包含的信息。你在寻找什么?它有任何形式的分类吗?用户将搜索什么条款?

Ultrasphinx +狮身人面像大约需要10分钟才能运行,所以我建议你给它一个裂缝,看看你的身体情况如何。

0

看看Solr。这是用Lucene驱动的搜索服务器启动和运行的最快方式。它将为索引时的文档预处理提供额外的功能,如分面和管道。

的Solr还提供了很大的空间尺度为您的网站同时通过分片&复制的增长。

似乎有充足的绑定红宝石(我更多的是PHP的家伙,所以我可以在他们的用处评论)。 Solr公开了您可以轻松利用的丰富的REST API。

一件事要使用Solr认真考虑的是如何处理的搜索索引更新。批量与近实时索引更新可能会影响您的策略。您需要提前在这方面定义应用程序的需求。

+0

只需添加到重建索引,文档这样说:“如果你正在使用Rails,对象是自动索引到Solr作为保存回调的一部分。如果你改变对象的‘模式’(在搜索代码块),您必须重新索引所有对象,以便更改反映在Solr中:...“ – James 2012-09-16 19:46:44