2017/06/20 系统架构 No Comments 全文检索:sphinx_elasticsearch_xunsearch选型分析 全文检索:sphinx_elasticsearch_xunsearch选型分析 #### 开发语言: Sphinx和Xunsearch是基于C/C++开发、Elasticsearch基于java开发 #### MySQL数据导入及索引生成: Sphinx > Elasticsearch > Xunsearch Sphinx跟RDBMS(特别是MYSQL)绑定的特别紧密,在导入MySQL数据生成索引时,从易用性、可靠性、速度上来看,Sphinx优于ElasticSearch。Sphinx真的很快。ElasticSearch官方文档上,数据都是使用RESTful接口一条一条插入的,也就是增量更新。有个bulk接口,可以批量导入、大幅加快速度 #### 增量更新支持: ------------ ElasticSearch、Xunsearch优于Sphinx。ElasticSearch、Xunsearch把增量更新作为首选CURD方式;而Sphinx使用辅助表的方案不但不优雅,还会让你的其他系统变得复杂起来,在你频繁更改单条数据的时候很容易出错。 #### 可视化与辅助管理工具: ElasticSearch:Kibana,Beats,Logstash,Marvel,Head Sphinx:Sphinx Tools PS:Kibana支持可视化的报表数据,Beats、Logstash偏重于log收集 #### 检索速度: Sphinx > Elasticsearch > Xunsearch > PS: 如果配置群集,群集越多搜起来就越快 #### 对中文支持: Xunsearch > Sphinx,Xunsearch支持拼音搜索 #### 搜索算法支持 - Ranker自定义: Elasticsearch > Sphinx > Xunsearch > PS:在自定义Ranker方面,Elastic Search的Function Score Query比Sphinx的expression-ranker强大许多。 #### 横向扩展与高可用: Elasticsearch > Sphinx > PS:Xunsearch未发现群集/分布式之列的文档。ElasticSearch有更强的横向扩展能力和高可用性。 #### 资源占用: Sphinx > Elasticsearch > Xunsearch #### 易用性: Xunsearch > Sphinx > Elasticsearch `PS:'>'符号理解为优于。` 本文最后更新于 2019-06-27 13:48:44 并被添加「elasticsearch sphinx xunsearch 全文检索」标签,已有 5580 位童鞋阅读过。 本文作者:未来往事 本文链接:https://felixway.cn/post/640.html 本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
此处评论已关闭