sphinx的特色之一是建立索引速度快,最近转投Elasticsearch后,一直想做个对比,网上资料常见说法是10倍的差距。

测试环境


  • 硬件:单核,2G内存的E5-2630 虚拟机
  • 操作系统:Centos 6.5

版本


  • sphinx 版本:coreseek 4.1(基于sphinx 2.02)
  • Elasticsearch 版本:2.3.1
  • mysql 版本:5.6

分词器(均使用默认的分词词库)


  • mmseg:coreseek自带
  • ik:Elasticsearch 插件

索引数据源


  • 数据库:mysql
  • 数据量:46万+篇文章,约为1.6G数据
  • 建立索引的字段:id,title,content
  • Elasticsearch 使用插件:Elasticsearch-jdbc 2.3.1

Elasticsearch 集群设置


为了尽可能接近单机测试,Elasticsearch 仅开启一个服务节点(本地),且索引不做分片,不做副本。

测试情况


sphinx
  • 每秒处理数据量:2.77 MB
  • 每秒处理文档数:1277 篇

     
    截图-sphinx
Elasticsearch
  • 每秒处理数据量:0.794 MB
  • 每秒处理文档数:397 篇
 
截图-Elasticsearch(kibana 监控)

测试结论


  1. sphinx 索引速度确实相对比较快,可能是环境的差异,未达到官方所说的10M/s 的索引速度;
  2. 同等环境下,Elasticsearch索引速度约为sphinx的1/4,但实际生产环境下,Elasticsearch应该会有较大提升(多核、高内存硬件),而不会仅仅约400+篇/s的索引速度。

全文检索引擎sphinx 与 Elasticsearch 索引速度对比的更多相关文章

  1. 【Lucene】Apache Lucene全文检索引擎架构之构建索引2

    上一篇博文中已经对全文检索有了一定的了解,这篇文章主要来总结一下全文检索的第一步:构建索引.其实上一篇博文中的示例程序已经对构建索引写了一段程序了,而且那个程序还是挺完善的.不过从知识点的完整性来考虑 ...

  2. sphinx全文检索引擎

    今天刚刚学习了一下,就直接分享上去,有些还没有接触,如果有问题请指正,谢谢 sphinx是什么? Sphinx是一个全文检索引擎.主要为其他应用提供高速.低空间占用.高结果 相关度的全文搜索功能. S ...

  3. Sphinx全文检索引擎测试

    数据表 1.documents CREATE TABLE `documents` ( `id` int(13) NOT NULL auto_increment, `group_id` int(11) ...

  4. centos7下搭建sphinx全文检索引擎

    Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用 程序更容易实现专业化的全文检索.Sphinx特别为一些 ...

  5. 全文检索引擎 sphinx-coreseek中文索引

    Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索. Sphinx特别为一些 ...

  6. Apache Lucene(全文检索引擎)—创建索引

    目录 返回目录:http://www.cnblogs.com/hanyinglong/p/5464604.html 本项目Demo已上传GitHub,欢迎大家fork下载学习:https://gith ...

  7. ElasticSearch 索引模块——全文检索

    curl -XPOST http://master:9200/djt/user/3/_update -d '{"doc":{"name":"我们是中国 ...

  8. 全文检索引擎在Django中的使用

    Haystack 1.什么是Haystack Haystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsear ...

  9. Lucene:基于Java的全文检索引擎简介 (zhuan)

    http://www.chedong.com/tech/lucene.html ********************************************** Lucene是一个基于Ja ...

随机推荐

  1. tpcc-mysql测试mysql5.6 (EXT4文件系统)

    操作系统版本:CentOS release 6.5 (Final)  2.6.32-431.el6.x86_64 #1 内存:32G CPU:Intel(R) Xeon(R) CPU E5-2450 ...

  2. Nginx-配置负载均衡实例

    配置负载均衡实例 实现效果: 配置负载均衡 实验代码 1) 首先准 备两个同时启动的 Tomcat 2) 在 nginx.conf 中进行配置 随着互联网信息的爆炸性增长,负载均衡(load bala ...

  3. Cluster基础(二):ipvsadm命令用法、部署LVS-NAT集群、部署LVS-DR集群

    一.ipvsadm命令用法 目标: 准备一台Linux服务器,安装ipvsadm软件包,练习使用ipvsadm命令,实现如下功能: 使用命令添加基于TCP一些的集群服务 在集群中添加若干台后端真实服务 ...

  4. 0XFF

    0xFF = 00000000000000000000000011111111 也就是说 0xFF 代表了一个 byte 位全为 1,-1的补码(数据). 数值和数据是两个不同的概念.数值表示一个数的 ...

  5. spring mvc中的@Entity是什么意思?

    @Entitypublic Class JavaBean{}标注该类为实体类.

  6. Gradle查看Project中的所有 Task

    查看Project中所有的Task:$ gradle tasks 查看Project中所有的properties:$ gradle properties 如: 参照了: https://www.jia ...

  7. 用BP人工神经网络识别手写数字

    http://wenku.baidu.com/link?url=HQ-5tZCXBQ3uwPZQECHkMCtursKIpglboBHq416N-q2WZupkNNH3Gv4vtEHyPULezDb5 ...

  8. Vagrant 手册之 box - box 的信息格式

    原文地址 创建 Vagrant 的 box 时,可以提供在运行 vagrant box list -i 时展示的与用户相关的其他信息.例如,可以打包 box,以包含有关该 box 的作者和网站信息: ...

  9. poj1742Coins(多重背包)

    People in Silverland use coins.They have coins of value A1,A2,A3...An Silverland dollar.One day Tony ...

  10. 工作笔记:phpstrom、docker、phpunit进行单元测试