elasticsearch 性能测试

最近花很大的经历来做性能测试,把结果整理到了ppt中,可能有个别地方不准,但是可以看看一个趋势。

主要分为两部分,一部分是写入elasticsearch性能,一部分是查询测试,elasticsearch的查询性能。

当然在elasticsearch1.3.0之后elasticsearch会提供benchmark来评估服务器性能实用情况。

硬件配置

主机cpumemdisksystem
192.168.32.243 POWER7  4228MHz*1224G swap:1GIBMsas 600GRed Hat Enterprise Linux Server 6.4
192.168.32.244POWER7  4228MHz*816G swap:1GIBMsas 600GRed Hat Enterprise Linux Server 6.4
192.168.32.245POWER7  4228MHz*816G swap:1GIBMsas 600GRed Hat Enterprise Linux Server 6.4

 

测试样本说明

  • 入库测试(bulk)、查询测试
  • 1个服务~3个服务
  • 3、6、9分片
  • 1备份
  • 2.4亿条记录
  • 8g内存
  • jmeter压力测试工具(2.11)

入库测试

POST http://192.168.32.245:9200/performance/fluxdata-2014-05-27/1414709176&0&GigabitEthernet%2019\1\19&1414709176

POST data:
{
    "collectTime": 1414709176,
    "deltatime": 300,
    "deviceId": "48572",
    "getway": 0,
    "ifindiscards": 0,
    "ifindiscardspps": 0,
    "ifinerrors": 0,
    "ifinerrorspps": 0,
    "ifinnucastpkts": 0,
    "ifinnucastpktspps": 0,
    "ifinoctets": 160300978,
    "ifinoctetsbps": 0,
    "ifinucastpkts": 0,
    "ifinucastpktspps": 0,
    "ifinunknownprotos": 0,
    "ifinunknownprotospps": 0,
    "ifoutdiscards": 0,
    "ifoutdiscardspps": 0,
    "ifouterrors": 0,
    "ifouterrorspps": 0,
    "ifoutnucastpkts": 0,
    "ifoutnucastpktspps": 0,
    "ifoutoctets": 1454523370,
    "ifoutoctetsbps": 0,
    "ifoutqlen": 0,
    "ifoutqlenpps": 0,
    "ifoutucastpkts": 0,
    "ifoutucastpktspps": 0,
    "portInfo": "GigabitEthernet 19/1/19"
}

 



 

 

 

 

 



 

详情见ppt吧,这里没有涉及到分词。

 

附件说明:elasticsearch.zip  elasticsearch测试ppt

index.zip jmeter测试模板

 

系统监控的工具tsar

### Elasticsearch 性能监测方法及工具 #### 方法概述 性能监测对于优化和维护 Elasticsearch 集群至关重要。通过定期监控集群的状态、节点健康状况以及查询响应时间,可以及时发现潜在问题并采取措施加以解决。常用的性能监测方法包括但限于以下几个方面: - **指标收集**:持续跟踪 CPU 使用率、内存消耗、磁盘 I/O 和网络带宽等基础资源指标[^1]。 - **日志分析**:利用 Elasticsearch 的内置日志记录功能,深入挖掘慢查询日志 (Slow Log),识别耗时较长的操作及其原因[^2]。 - **压力测试**:借助专门设计的压力测试工具模拟真实场景下的高负载情况,评估系统的极限承载能力。 #### 工具推荐 以下是几款广泛应用于 Elasticsearch 性能检测的优秀工具: ##### 1. INFINI Loadgen 作为一款由国内团队开发的功能强大且易于使用的负载生成器,INFINI Loadgen 支持多种协议接口调用方式,并能够灵活配置并发数与请求频率参数,非常适合用来执行复杂的多维度综合评测任务[^3]。 ```bash # 下载安装脚本 wget https://example.com/infini-loadgen.sh && chmod +x infini-loadgen.sh # 启动简单示例测试 ./infini-loadgen.sh --target http://localhost:9200/_search?pretty=true \ --concurrency-levels="1,5,10" \ --duration-per-level=60s ``` ##### 2. esRally 这是官方推出的开源基准测试框架 esRally ,它允许用户定义个性化的赛道(Track),从而精确控制数据集规模大小、索引创建过程以及具体的查询模式组合。 ```yaml # 自定义轨道文件 example_track.json 中的部分片段展示 { "indices": [ { "name": "my_custom_index", "body": {"settings":{"number_of_shards":4}}, "types":[...] } ], ... } ``` 运行命令如下所示: ```bash pip install esrally # 如果尚未完成初始化环境搭建的话先完成依赖包安装工作 esrally race --track-path=/path/to/example_track.json --pipeline=from-sources-complete ``` 除了上述提到的内容之外,还有许多第三方插件可供选择,比如 Curator 可用于管理旧数据生命周期;Kibana 提供图形界面支持更直观的数据可视化效果等等。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值