0

我正在寻找一种将 Google Site Search 的强大功能与 Elasticsearch 相结合的解决方案,用于 Rails 4 应用程序,最好作为 Rails gem。

据我所知,最流行的搜索解决方案 ThinkingSphinx、带有轮胎 gem 的 ElasticSearch、Sunspot Solr 和 PostreSQL 搜索功能,似乎都只处理数据库搜索而没有页面/html 模板搜索功能。

如果我有这个错误,请纠正我,我会很乐意选择上述之一。

该站点主要包含静态 HTML,因此 Google Site Search api 是显而易见的解决方案,但也有一些 ActiveRecord 结果也应包含在搜索结果中。

如果真的没有一个简单的组合解决方案,那么我将不胜感激任何关于如何实现弹性搜索(我首选的 AR 搜索解决方案)与谷歌网站搜索合并的指针,其中结果恰好包含相同的页面所以页面结果不重复。

4

1 回答 1

1

重新表述您的问题,您想将 Google Site Search 的结果与 Sphinx、Solr 或 Elasticsearch 提供的自定义搜索结果结合起来吗?

首先,您无法真正轻松地自定义 Google Site Search 结果的内容。您可以自定义设计,并且可以使用一些 JavaScript 技巧将其结果与另一个数据源“合并”,但我想说这种方法不是可维护的,更重要的是,它是可用的。

请注意,您可以像 ActiveRecord 实例一样,使用 Tire 显示来自 Elasticsearch 的搜索结果,所有常见的 Rails 助手url_for等都可以工作。评估集成的最简单方法是使用 Rails 模板生成示例应用程序

如果您想将 ActiveRecord 数据的结果与站点/应用程序上可能拥有的任何静态页面的结果结合起来,编写一个简单的爬虫来检索、解析和索引静态页面的内容并不难将其作为 ActiveModel 兼容的文档存储在 Elasticsearch 中。

于 2013-09-16T07:36:32.860 回答