弹性搜索与太阳黑子特征的比较

Rub*_*tic 7 solr ruby-on-rails ruby-on-rails-3 elasticsearch ruby-on-rails-3.1

Couden没有找到任何与太阳黑子(Solr)相关的比较问题到Elastic Search(Lucene)两个搜索引擎上的专业人士和骗子会是什么?

我看到了其他VS问题,以便在2个宝石的比较中获得更好的内部,所以希望这可以更好地洞察新手的两个引擎(像我一样).我已经看过太阳黑子但是有一些问题.所以我搜索了

VS

goo*_*der 10

我开始研究一个需要在Ruby中进行全文搜索的项目,所以很自然地我开始使用Solr + Sunspot,但我无法让它工作.只是让它们连接起来很痛苦,然后试图弄清楚文档是否正确索引,找出运行时类路径,这样我就可以添加额外的分析器/标记器类,编辑config.xml/schema.xml等等.Solr numDocs清楚说收到并索引了他们,但我无法得到任何查询结果.几天之后我就放弃了,这是一种配置地狱.

ElasticSearch + Tire很轻松地启动并运行,我让它在一小时内完成.

Lucene是一个Java搜索库,因此Solr的开发是一个全方位服务的搜索应用程序,但Solr的还有一个典型的Java Web应用程序的所有捕获:过于复杂的XML配置,架构重,期望用于索引XML文档,需要Java servlet容器(Jetty或Tomcat),这对我来说只是成了太多的失败点.

ElasticSearch也基于Lucene,它有一个内置的servlet容器,所以只需像守护进程一样运行,使用非常简单的JSON + REST API,因此它非常适合测试,更适合Ruby.它是无模式的,它甚至没有编辑配置文件也适用于我.一切都很美妙.

我真正需要的是中文搜索和ElasticSearch已经将Luecene的SmartChineseAnalyzer打包为插件.如果您需要这种级别的自定义,不确定自定义分析器/标记器链是多么困难.ElasticSearch和Tire的Docmentation都是一流的.

轮胎(ElasticSearch的Ruby库)

https://github.com/karmi/tire

您可以尝试演示,它将安装rails searchapp,下载ElasticSearch二进制文件并运行它,然后自动启动Webrick.

$ rails new searchapp -m https://raw.github.com/karmi/tire/master/examples/rails-application-template.rb
Run Code Online (Sandbox Code Playgroud)

在我的系统上它抱怨没有Javascript引擎(Rails 3.2?默认情况下不再包含theubyracer gem),所以我不得不:

$ wget https://raw.github.com/karmi/tire/master/examples/rails-application-template.rb
$ nano rails-application-template.rb
Run Code Online (Sandbox Code Playgroud)

在文件中添加gem'therubyracer'(寻找宝石'轮胎'和宝石'will_paginate'),然后......

$ rails new searchapp -m rails-application-template.rb
Run Code Online (Sandbox Code Playgroud)

为了开发我自己的应用程序,我只是将ElasticSearch tarball下载并使用-f开关在前台运行(因此我可以通过Ctrl-C轻松阻止它)

$ bin/elasticsearch -f
Run Code Online (Sandbox Code Playgroud)

您可以安装eleasticsearch-head插件来获取Web管理界面

https://github.com/mobz/elasticsearch-head

我也发现了一些事情:如果你有一对多的关系模型,Tire将不会在搜索结果中为你解决它们,它只返回一个扁平的集合.你的has_many和belongs_to关系只是集合中的对象id而不是完整对象.


jav*_*nna 8

我认为你应该搜索Solr和弹性搜索之间的比较.事实上,太阳黑子基于Solr,Solr和弹性搜索都基于Lucene.它们是两个具有相似目标的不同项目,都建立在Lucene之上.

这是两个比较:

ElasticSearch,Sphinx,Lucene,Solr,Xapian.哪种适合哪种用途?

http://www.findbestopensource.com/article-detail/solr-vs-elasticsearch