ElasticSearch简介以及与Solr的差别

常用环境

搜素引擎

日志数据分析 ,elk技术。elastic search + logstash + kibana

商品价格监控网站

BI系统 商业智能。比如说有个大型商场集团 分析一下某区域最近三年的用户消费金额的趋势以及用户群体的组成构成 产出相关的数张报表

Elastic Search 和Solr的差别

Elastic Search

ElasticSerch 实时分布式搜索和分析引擎 它让你以前所未有的速度处理大数据成为可能

用于全文搜索 结构化搜索 分析以及将这三者混合使用:

百科使用elastic Search提供高亮 搜索纠错 等建议功能

Elastic Search 基于Apache Lucene 的开源搜索引擎

通过简单的RESTful API隐藏lucene的复杂性

Solr

Solr是apache下的一个顶级开源项目 采用Java开发 基于Lucene的全文搜索服务器

相比Lucene 可扩展 可配置 并优化

可独立运行 运行jetty tomcat servlet容器中

使用WebService的Api接口

Lucene

在 java开发环境里lucene是一个成熟免费开源工具 最受欢迎的免费JAVA信息检索程序库  信息检索程序库与搜索引擎有关 但并不等于搜索引擎。

Elastic Search和Solr的选型

架构如何选择

  • 当单纯的对已有的数据进行检索时 Solr更快

  • 当实时建立索引时,Solr会产生io阻塞 查询性能较差 Elasticsearch具有明显优势

  • 随着数量的增加,Solr的搜索效率会变得更低 而Elastic search却没有明显的变化

  • 传统项目从Solr转为ElasticSearch之后 效率会有明显提升 (接近50倍)

总结

  1. es开箱即用,Solr相对复杂
  2. Solr利用Zookeeper进行分布式管理 Elastic Search自身带有分布式协调管理功能
  3. Solr支持更多格式的数据 (json、xml、csv) es仅支持json
  4. Solr官方提供功能更对 es本身更注重核心功能,高级功能有第三方插件提供(例如kibana提供图形化界面)
  5. Solr查询快 更新索引慢(插入慢)用于电商等查询多的应用    ES建立索引快(查询慢)实时性查询快 用于论坛以及社交网站搜索
  6. solr时传统搜索应用有力的解决方案 但ES更适用于新型的实时搜索应用


©著作权归作者所有:来自51CTO博客作者mob604756f85007的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 开发文件上传功能稍不注意就会引发安全漏洞
  2. 工作流引擎的测试容器-功能-使用方法-注意事项
  3. Spark Streaming 在数据平台日志解析功能的应用
  4. SDN实战团分享(十九):OpenDaylight在电信网络中的应用
  5. 「PostgreSQL技巧」Citus实时执行程序如何并行化查询
  6. 【PostgreSQL 】PostgreSQL 12的8大改进,性能大幅度提升
  7. 学 Win32 汇编[16]: 常用寄存器的常规功能
  8. PHP:使用定界符输出九格宫表格,颜色各异,每个小格子宽高50px ,用
  9. 日志实时处理架构方案

随机推荐

  1. 为什么gradle不会覆盖不同Android风格的J
  2. 最近一个月的面试记录总结
  3. java_easyui体系之更换主题
  4. Zookeeper官网文档—第三章 2.Zookeeper
  5. Java Mail发送邮件
  6. php 调用java 接口
  7. Java虚拟机:类的初始化
  8. 当我运行.jar时,在java.library中会得到一
  9. 朋友要去外包,很兴奋的同我炫耀薪水,我想我
  10. 我希望我知道的七个JavaScript技巧