文档章节

ElasticSearch 性能测试工具 rally esrally【译】

仰望星空的伤心胖熊
 仰望星空的伤心胖熊
发布于 2017/02/13 14:32
字数 656
阅读 256
收藏 0

作者原文:https://github.com/elastic/rally

Rally

Rally是Elasticsearch的宏基准框架。

 

What is Rally?

你是否想用基准测试ES?那你可以使用Rally。他可以帮你解决这些任务:

  •   安装以及拆解es集群,进行基准测试;
  •   甚至跨Elasticsearch版本管理基准数据和规范
  •   运行基准测试和记录结果
  •   通过附属的自动检测装置来查找性能问题
  •   对比性能结果

我们在Rally上付出了巨大努力,以确保基准数据具有可复写性。

 

Quick Start

Installing Rally
注意:如果你在ES上进行频发开发,我们建议你,在E上采用开发模式安装Rally,而不是快速移动ES,Rally总是适配于最新的(ES)主版本。
安装Python 3.4+,包含 pip3, JDK 8以及git 1.9+。 然后运行如下命令,加入必要的话,可以使用sudo命令:

pip3 install esrally

如果你有任何疑问或者需要更多的详细说明,请查看详细安装手册

esrally安装完后,在启动的过程,遇到了一个由于Python缺少bz2包导致的小错误,由于不熟悉Python,实际浪费了不少时间。主要是缺少bz2包导致的。


Configure

只是调用esrally配置。
有关更详细的说明和详细演练,请参阅配置指南

 

Run your first race

现在我们已经准备好运行第一个程序了:

esrally --distribution-version=5.0.0

将下载Elasticsearch 5.0.0并运行Rally的默认追踪。 运行结束后,将以命令行方式生成摘要报告:

------------------------------------------------------
    _______             __   _____
   / ____(_)___  ____ _/ /  / ___/_________  ________
  / /_  / / __ \/ __ `/ /   \__ \/ ___/ __ \/ ___/ _ \
 / __/ / / / / / /_/ / /   ___/ / /__/ /_/ / /  /  __/
/_/   /_/_/ /_/\__,_/_/   /____/\___/\____/_/   \___/
------------------------------------------------------

|                         Metric |            Operation |     Value |   Unit |
|-------------------------------:|---------------------:|----------:|-------:|
|                  Indexing time |                      |   28.0997 |    min |
|                     Merge time |                      |   6.84378 |    min |
|                   Refresh time |                      |   3.06045 |    min |
|                     Flush time |                      |  0.106517 |    min |
|            Merge throttle time |                      |   1.28193 |    min |
|               Median CPU usage |                      |     471.6 |      % |
|             Total Young Gen GC |                      |    16.237 |      s |
|               Total Old Gen GC |                      |     1.796 |      s |
|                     Index size |                      |   2.60124 |     GB |
|                Totally written |                      |   11.8144 |     GB |
|         Heap used for segments |                      |   14.7326 |     MB |
|       Heap used for doc values |                      |  0.115917 |     MB |
|            Heap used for terms |                      |   13.3203 |     MB |
|            Heap used for norms |                      | 0.0734253 |     MB |
|           Heap used for points |                      |    0.5793 |     MB |
|    Heap used for stored fields |                      |  0.643608 |     MB |
|                  Segment count |                      |        97 |        |
|                 Min Throughput |         index-append |   31925.2 | docs/s |
|              Median Throughput |         index-append |   39137.5 | docs/s |
|                 Max Throughput |         index-append |   39633.6 | docs/s |
|      50.0th percentile latency |         index-append |   872.513 |     ms |
|      90.0th percentile latency |         index-append |   1457.13 |     ms |
|      99.0th percentile latency |         index-append |   1874.89 |     ms |
|       100th percentile latency |         index-append |   2711.71 |     ms |
| 50.0th percentile service time |         index-append |   872.513 |     ms |
| 90.0th percentile service time |         index-append |   1457.13 |     ms |
| 99.0th percentile service time |         index-append |   1874.89 |     ms |
|  100th percentile service time |         index-append |   2711.71 |     ms |
|                           ...  |                  ... |       ... |    ... |
|                           ...  |                  ... |       ... |    ... |
|                 Min Throughput |     painless_dynamic |   2.53292 |  ops/s |
|              Median Throughput |     painless_dynamic |   2.53813 |  ops/s |
|                 Max Throughput |     painless_dynamic |   2.54401 |  ops/s |
|      50.0th percentile latency |     painless_dynamic |    172208 |     ms |
|      90.0th percentile latency |     painless_dynamic |    310401 |     ms |
|      99.0th percentile latency |     painless_dynamic |    341341 |     ms |
|      99.9th percentile latency |     painless_dynamic |    344404 |     ms |
|       100th percentile latency |     painless_dynamic |    344754 |     ms |
| 50.0th percentile service time |     painless_dynamic |    393.02 |     ms |
| 90.0th percentile service time |     painless_dynamic |   407.579 |     ms |
| 99.0th percentile service time |     painless_dynamic |   430.806 |     ms |
| 99.9th percentile service time |     painless_dynamic |   457.352 |     ms |
|  100th percentile service time |     painless_dynamic |   459.474 |     ms |

----------------------------------
[INFO] SUCCESS (took 2634 seconds)
----------------------------------

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
仰望星空的伤心胖熊
粉丝 0
博文 16
码字总数 9715
作品 0
南京
产品经理
私信 提问
ES(elasticsearch)搜索引擎

ES(elasticsearch)搜索引擎 0、授人以渔,少走半年弯路! 死磕 Elasticsearch 方法论:普通程序员高效精进的 10 大狠招! 一、Elasitcsearch基础篇 1.1 Elasitcsearch基础认知 1、Elasticse...

Ocean_K
09/11
0
0
ElasticStack 5.0.0 发布,大版本更新

ElasticStack 5.0.0 发布了,ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats。 部分更新内容如下: Ingest Node:一种Elasticsearch节点类型,在索...

王练
2016/10/27
3.7K
14
ElasticSearch开发问题汇总(不断更新中)

1、Mapping: [译]ElasticSearch数据类型--string类型已死, 字符串数据永生 ElasticSearch动态日期映射 2、Spring Data Elasticsearch: Spring Data Elasticsearch教程...

九州暮云
07/18
0
0
死磕 Elasticsearch 方法论序篇:普通程序员高效精进的 10 大狠招!|MVP讲堂

作者:阿里云MVP 铭毅 开篇 人工智能、大数据快速发展的今天,对于 TB 甚至 PB 级大数据的快速检索已然成为刚需。Elasticsearch 作为开源领域的后起之秀,从2010年至今得到飞跃式的发展。 El...

辰悠
12/14
0
0
Elasticsearch 安装Head插件(2)

Elasticsearch Head Plugin: 对ES进行各种操作,如查询、删除、浏览索引等。 1、下载elasticsearch-head并解压 在线下载:wget https://github.com/mobz/elasticsearch-head/archive/master....

Favour
2017/10/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS官方钱包keosd

EOS官方钱包的名称是keosd,它负责管理你的私钥,并且帮你进行交易的签名。 不过不幸的是,keosd钱包对普通用户并不友好,它是一个命令行程序,目前还没有像以太坊的mist那样的图形化界面,而...

汇智网教程
今天
34
0
ArrayList的实现原理以及实现线程安全

一、ArrayList概述 ArrayList是基于数组实现的,是一个动态的数字,可以自动扩容。 ArrayList不是线程安全的,效率比较高,只能用于单线程的环境中,在多线程环境中可以使用Collections.syn...

一看就喷亏的小猿
今天
39
0
Netty 备录 (一)

入职新公司不久,修修补补1个月的bug,来了点实战性的技术---基于netty即时通信 还好之前对socket有所使用及了解,入手netty应该不是很难吧,好吧,的确有点难,刚看这玩意的时候,可能都不知道哪里...

_大侠__
昨天
46
0
Django简单介绍和用户访问流程

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。 Django是一个开放源代码的Web应用框架,由Python写成。 Django遵守BSD版权,初...

枫叶云
昨天
57
0
Spring Cloud Stream消费失败后的处理策略(四):重新入队(RabbitMQ)

应用场景 之前我们已经通过《Spring Cloud Stream消费失败后的处理策略(一):自动重试》一文介绍了Spring Cloud Stream默认的消息重试功能。本文将介绍RabbitMQ的binder提供的另外一种重试...

程序猿DD
昨天
27
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部