今日焦点 焦点资讯 营销之道 企业报道 淘宝运营 网站建设 软件开发 400电话
  当前位置: 首页 » 资讯 » 网站建设 » 正文

开源搜索引擎评估:ucene sphinx

放大字体  缩小字体 发布日期:2018-02-18  来源:新格网  作者:新格网  浏览次数:246  【去百度看看】
核心提示:搜索引擎程序这个名称不妥当,严格说来应该叫做索引程序(indexing program),早期主要用来做中文全文搜索,但是随着互联网的深入普及,各家网站规模越来越大,索引程序在优化网站架构上发挥了更大的作用:替代mysql数据库内置的索引

开源搜索引擎程序有3大类

  • lucene系,java开发,包括solr和elasticsearch
  • sphinx,c++开发,简单高性能
  • Xapian,c++开发

搜索引擎程序这个名称不妥当,严格说来应该叫做索引程序(indexing program),早期主要用来做中文全文搜索,但是随着互联网的深入普及,各家网站规模越来越大,索引程序在优化网站架构上发挥了更大的作用:替代mysql数据库内置的索引

  1. 让mysql no sql化,只承担数据持久化存储的功能
  2. 消除join查询/子查询,提高数据库的并发处理能力

使用状况

Lucene出自名门,子孙兴旺,而且它的兄弟Hadoop风头正盛,所以名气最大,而sphinx因为简单可靠,代码结构优良,性能非常好,在国内大型网站中使用最广.xapian用户太少,不建议使用

技术选型要选人最多的方向,不可标新立异

Lucene系

  • Lucene 就是一个纯粹的索引程序代码包,使用的时候,你得写一个简单的server程序(接受关键词-通过lucence查询-返回结果),然后配置在应用服务器中(tomcat/Resin),一般来说,这个server程序会采用http协议,或者xml-rpc,直接用tcp那也太无聊了

  • Solr 有大侠急公好义,帮你把上文提到的web 程序写好了,你只需要配置部署就可用,这就是solr,solr对外的接口是http协议,也支持分布式索引

  • Elasticsearch,新项目,最近很红,其实也是Lucene的马甲,有如下特点

    1. restful接口
    2. 分布式导向,包括分布式搜索,分布式索引,零配置,自动分片,索引自动负载
    3. 针对实时搜索专门优化:先把索引放在内存中,定期同步到硬盘
    4. 附带web 图形化管理工具

sphinx平均查询时间一般=20ms,elasticsearch有数据说是200ms

elasticsearch 从设计思路上是针对 Amazon CloudSearch,它的关键词是

  • 分布式
  • 实时
  • 高可用

这几点一看就是高富巨,日uv几百万的网站,索引也只有几十G,普通玩家是用不着的

但是从紧跟前沿技术的角度,如果你的索引服务器超过3台,可以尝试部署elasticsearch,性能现在是差点,但硬件和时间会帮你搞定一切

本文地址: http://lutaf.com/158.htm 鲁塔弗原创文章,欢迎转载,请附带原文链接

 
 
[ 资讯搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 违规举报 ]  [ 关闭窗口 ]

 
0条 [查看全部]  相关评论

 
网站首页 | 关于我们 | 联系方式 | 使用协议 | 版权隐私 | 网站地图 | 排名推广 | 广告服务 | 积分换礼 | 网站留言 | RSS订阅 | 皖ICP备2021004516号-14
企业800网 · 提供技术支持