什么是ElasticSearch?
ElasticSearch是基于rest风格,分布式搜索引擎,非常优秀的lucene库.内置的JSON API提供了一个优雅的+ HTTP平台完美的结合(例:弹性可搜索的ruby gem)。它的简单的、可伸缩的和酷…
对比solr
首先,让我们澄清问题.solr效率是非常快的,这个我可以肯定.solr是稳定的,可靠的和出箱,它优于几乎每个搜索解决方案基本搜索(包括Elasticsearch)。
不幸的是,它真的很容易打破Solr一样。只是要执行搜索,同时并发更新索引与新内容。这是一个非常严重的问题,如果你需要更新你的搜索索引定期。
现在把几百万索引插入到solr和elasticsearch中,solr的效率非常低下,感觉真辛苦啊.而elasticsearch非常轻松就完成工作..
显然易见solr的体系结构没有建立在实时搜索应用上,实时web应用程序的要求需要交付更新实时随着新内容附近是由用户生成的。Elasticsearch的分布式特性使得它跟上并发搜索+索引请求轻松而过.
实时结果:
转变我们的搜索基础设施后从Solr Elasticsearch,我们看见一个即时~ 50 x提高搜索性能!
现在更有趣…
典型的实时搜索架构如下:
-
用户内容建立索引添加到搜索引擎中
-
执行组查询搜索引擎来确定内容匹配特定的标准
-
执行特定的逻辑通知注册通道,搜索新的内容
可以支持这个模型Elasticsearch很好,但它也提供了一个功能,将整个工作流在它的头。
新的工作流程如下:
-
注册特定查询
-
索引新内容
-
在索引操作的响应将包含匹配的percolations
完善的实时搜索体系
结构
最后
Solr可能选择的武器当建筑标准的搜索应用程序,但Elasticsearch把它到下一个水平与一个架构创建现代实时搜索应用程序。渗流是一个令人兴奋的和创新的功能,仅凭吹Solr出来的水。Elasticsearch是可伸缩的,快速和梦想结合。再见Solr,很高兴认识你。