`
zhousheng29
  • 浏览: 150831 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ElasticSearch导入测试

 
阅读更多
      最近有点空,又看了看之前写的ES导入的测试记录,干脆整理一下,看是否能给大家一点参考和借鉴。
      采用的是bulkindex方式,实际上就是把index操作作为prepareIndex,扔到bulkRquest中,等积累到一定数量的时候再统一提交,这样的目的无非就是为了效率。

      测试服务器
      4*2 = 8核 2.13G, 4G*4=16G, 硬盘6T 一共4台。

      测试用例

      1. Case 1
      Index:5shards, 复制一份数据
      数据:200万数据,每条数据200个字节
      A: 200万数据 1个服务(一台服务器)3分48秒
      B: 200万数据 2个服务(一台服务器)6分10秒
      C: 200万数据 2个服务(两台服务器)8分44秒
      D: 200万数据 4个服务(四台服务器)6分20秒
      E: 200万数据 8个服务(四台服务器)12分33秒
      看来服务器少,服务少的情况下,速度反而快,数据分配需要占用时间;当服务器增加到较大时,比如4台,时间会减少,应该是并行处理起了作用,导入时间减少。

       2. Case 2
       Index:5shards, 复制一份数据
       4个服务,四台服务器
       A: 650万数据 31分50秒
       B: 1.2亿数据 4个小时

       3. Case 3
       Index: 20shards, 复制零份
       4个服务(四台服务器)
       多线程方式导入数据
       A: 1650万数据,8个线程, 20分钟,13750doc/s
       B: 1560万数据,16个线程,20分钟,13000doc/s
       C: 2700万数据,12个线程,40分钟,11250doc/s
       D: 1350万数据,8个线程,20分钟(32shards, 复制零份), 11250doc/s
       多线程写入对增加索引速度有很大帮助,线程开8个以上时效率变化不明显,shard的增加对效率也几乎没有影响


       新的服务器测试
       机器配置:6*2=12核,超线程24核,内存48G,  4台
       4个ES实例,每台服务器1个

       测试case
       Case 1
       数据:30658837
       多线程开启:4线程
       20 shards,无replias
       执行时间:14m42s, load值最高约8
       速度:34760.6doc/s

       Case 2
       数据:106511749
       多线程开启:6线程
       20 shards,无replias
       执行时间:43m18s, load值最高约20
       速度:40997.6doc/s
      
       结论:线程数4~6,对于效率提高有但不大,相比老服务器,新服务器性能要好很多,效率提高了近4倍,看来硬件对ES的性能影响较大。
分享到:
评论
1 楼 luyee2010 2017-07-24  
每个doc多大?多少个字段?

相关推荐

    ElasticSearch官方测试数据

    1. **导入数据**:使用`curl`命令或者Elasticsearch的Java API将`ElasticSearch官方测试数据.json`导入到Elasticsearch中。 2. **查询语法**:支持丰富的查询语法,如匹配查询、模糊查询、范围查询、布尔查询等,...

    Oracle数据批量导入elasticsearch脚本

    Linux环境下使用sqlplus工具将oracle中的数据导入到elasticsearch中。只需要在es_bulk_tool.properties配置sql即可实现数据的批量导入。在elasticsearch6中测试通过。shell脚本需要使用sqlplus。

    elasticSearch测试数据

    Elasticsearch(ES)是一种基于Lucene的分布式、RESTful搜索和分析引擎,常用于实时大数据的检索和分析。在本场景中,我们有三个测试数据集,分别代表不同的应用场景和数据类型,它们是logstash-*,account,以及...

    Elasticsearch测试数据.rar

    当这些测试数据被导入Elasticsearch时,它们会被自动分析并建立索引。分析过程涉及分词,将文本拆分成更小的单元(称为术语),以便快速匹配搜索查询。Elasticsearch还支持自定义分析器,可以根据特定的语言或业务...

    Elasticsearch测试数据,3160条商品数据

    Elasticsearch测试数据,3160条商品数据 数据导入命令: curl -XPOST 'localhost:9200/pditems/_bulk' -H 'Content-Type:application/json' --data-binary @pditems.json

    ES测试数据-手机.rar

    标题中的“ES测试数据-手机.rar”表明这是一个与Elasticsearch(简称ES)相关的测试数据集,主要聚焦在手机参数上。Elasticsearch是一种流行的开源全文搜索引擎,常用于复杂的数据检索、日志分析和实时数据分析。 ...

    《ElasticSearch入门到实战》电子书,从入门到进阶实战项目的教程文档,框架SpringBoot框架整合ES.zip

    18. **数据导入与同步**:实现数据从源系统到 Elasticsearch 的导入和实时同步机制。 19. **Web 应用开发**:构建基于 SpringBoot 的 Web 应用,提供 Elasticsearch 查询接口,展示查询结果。 20. **监控与报警**...

    Elasticsearch测试医疗数据

    这个压缩包提供了一组用于测试的医疗数据,数据格式为XML,这意味着我们需要利用Logstash这样的工具来将其有效地导入到Elasticsearch中。 首先,让我们详细了解一下Elasticsearch。Elasticsearch基于Lucene,采用...

    kettle elasticsearch插件

    kettle etl工具中,实现批量导入到 elasticsearch中的插件

    elasticsearch1.5.2带head插件

    4. Head 插件还支持导入导出数据,这对于测试和数据迁移非常有用。 **Elasticsearch 的核心特性** 1. **分布式**: 支持多节点集群,数据可以自动分布在多个节点上,提高可用性和容错性。 2. **实时**: 数据索引后...

    Elasticsearch head插件

    **Elasticsearch Head 插件详解** ...总结来说,Elasticsearch Head 插件是一款强大的工具,尤其适合开发和测试环境。通过它,我们可以轻松管理和维护 Elasticsearch 集群,提升工作效率,同时为日常运维提供了便利。

    elasticsearch-head插件

    Elasticsearch-Head 是一款专为谷歌Chrome浏览器设计的开源插件,主要用于方便地管理和查看Elasticsearch(ES)集群的状态和数据。这款插件提供了一个直观的图形用户界面(GUI),使得用户无需编写复杂的查询语句,...

    yscb elastic 压力测试工具

    2. 数据预热:在正式测试前,通常会进行数据预热,即向Elasticsearch批量导入测试数据,确保所有节点都已加载完毕。 3. 执行测试:启动YSBC,执行预设的测试操作,如读取、写入或更新。测试过程中,YSBC会记录每个...

    elasticsearch-7.1.0-windows-x86_64.zip

    - 解压"elasticsearch-7.1.0"文件夹到任意位置,设置环境变量`ES_PATH_CONF`指向配置文件夹。 - 修改`config/elasticsearch.yml`配置文件,如设置集群名称、网络监听地址等。 - 配置JVM内存,修改`jvm.options`...

    Python-同步mysql数据到elasticsearch的工具

    通过这些库,开发者可以编写脚本或应用,定时或实时地将MySQL中的表数据导入到Elasticsearch索引中。 这个工具的特点包括: 1. **功能丰富**:除了基本的数据同步功能,可能还包含了错误处理、数据转换、过滤和...

    elasticsearch-bulk-insert-plugin-8.2.0.0-342.zip

    总的来说,elasticsearch-bulk-insert-plugin-8.2.0.0-342.zip是一个解决Kettle与Elasticsearch 7.x兼容问题的插件,提供了数据批量导入的能力,帮助用户充分利用Elasticsearch的强大功能进行数据分析和存储。...

    ES测试代码,包括连接和数据插入及查询的测试工程,可直接运行

    标题"ES测试代码,包括连接和数据插入及查询的测试工程,可直接运行"表明这是一个关于Elasticsearch(ES)的测试代码集合,主要涉及ES客户端的连接、数据插入以及查询操作。这通常是一个示例项目或者教程,方便...

    elasticsearch1.0.zip

    描述中提到的"springboot2.1.7+elasticsearch6.4.3安装配置文档+后台代码实现增删改查批量删除批量导入"说明了这个压缩包的内容主要是围绕如何在SpringBoot项目中设置和使用Elasticsearch,以及如何实现基础的CRUD...

    ElasticSearch 5.4 的测试java工程 依赖包很全 有配置好的log4j

    **Elasticsearch 5.4 测试Java工程详解** Elasticsearch 5.4 是一个高性能、可扩展的全文搜索引擎,常用于大数据分析和实时搜索。这个Java工程是专为测试Elasticsearch 5.4设计的,包含了所有必要的依赖包,确保...

    elasticsearch-6.2.4.tar.gz.zip

    Elasticsearch 6.2.4 是一个高度可扩展、高性能的开源全文搜索引擎,它基于 Lucene 库构建,但提供了更高级别的分布式、实时、近实时搜索和分析功能。这个压缩包“elasticsearch-6.2.4.tar.gz.zip”包含了这个版本的...

Global site tag (gtag.js) - Google Analytics