Elasticsearch 压力测试

2019-06-03  本文已影响0人  猴子精h

为什么要压测

俗话说 "知己知彼,百战不殆",当我们上线一个新的系统或应用的时候,至少要知道这个系统或应用的上线在哪里,做直接的数据可能就是【吞吐量】是多少,【延时】是多少,【瓶颈】是什么。更多关于压测的指导可参考CoolShell 的性能测试应该怎么做?

压测工具

rally es 官方提供的一款压测工具。同时官方也将 es 的实时压测结果放在了 https://elasticsearch-benchmarks.elastic.co/ , 你可以将你自己的结果与它进行对比,官方是使用 2 台服务器进行压测,一台运行 rally, 一台运行 es, 服务器的配置如下:

CPU: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
RAM: 32 GB
SSD: Crucial MX200
OS: Linux Kernel version 4.8.0-53
JVM: Oracle JDK 1.8.0_131-b11

rally

安装

# 创建虚拟环境
virtualenv venv

pip3 install esrally

# 配置 rally,默认在 ~/.rally 目录中
esrally configure

rally 相关术语

rally 是汽车拉力赛的意思,所以关于它里面术语也是跟汽车的拉力赛有关。

如下实例,使用 pmc 样本数据对一个已存在的 es 实例进行压力测试,使用 track-params 对默认的压测参数进行覆盖,对这次测试以 version:5.5.0 进行 tag 标记。

esrally --track=pmc --target-hosts=10.10.102.35:9200  \
    --pipeline=benchmark-only \
    --track-params="number_of_shards:3,number_of_replicas=1" \
    --user-tag="version:5.5.0"

被压测 ES 硬件资源

压测结果

以下所有的压测参数均使用默认值

压测数据类型: pmc (学术论文)

单节点,普通硬盘,副本数0

Task Min Throughput Median Throughput Max Throughput P99 latency
index-append 853.79 docs/s 889.94 docs/s 909.67 docs/s 19435.3ms

单节点,4块普通硬盘组成 RAID0,副本数0

Task Min Throughput Median Throughput Max Throughput P99 latency
index-append 1182.27 docs/s 1259.22 docs/s 1285.84 docs/s 4811.05 ms

压测数据类型: eventdata

单节点,普通硬盘,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 29751.8 docs/s 34498.3 docs/s 35366.3 docs/s 1338.77 ms 2337.83 ms

单节点,4块普通硬盘组成 RAID0,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 39982.6 docs/s 40951.4 docs/s 41216.8 docs/s 1177.72 ms 1470.46 ms

3节点,4块普通硬盘组成 RAID0,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 68381.3 docs/s 70045.9 docs/s 70533.6 docs/s 654.343 ms 800.628 ms

3节点,4块普通硬盘组成 RAID0,副本数1

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 37794.8 docs/s 38637 docs/s 39569.2 docs/s 1232.43 ms 1426.42 ms

压测数据类型: geonames

单节点,普通硬盘,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 49641.4 docs/s 50195.2 docs/s 51236.1 docs/s 1213.64ms 2235.51ms

单节点,4块普通硬盘组成 RAID0,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 54829.7 docs/s 55663.9 docs/s 56248.9 docs/s 941.875 ms 1327.69 ms

3节点,4块普通硬盘组成 RAID0,副本数0

Task Min Throughput Median Throughput Max Throughput P90 latency P99 latency
index-append 88812.7 docs/s 89132.5 docs/s 89452.5 docs/s 512.118 ms 961.595 ms

总结

参考

https://segmentfault.com/a/1190000011174694#articleHeader0

上一篇 下一篇

猜你喜欢

热点阅读