百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Elasticsearch VS Easysearch 性能测试

off999 2025-01-07 14:56 27 浏览 0 评论

压测环境

虚拟机配置

使用阿里云上规格:ecs.u1-c1m4.4xlarge,PL2: 单盘 IOPS 性能上限 10 万 (适用的云盘容量范围:461GiB - 64TiB)

vCPU

内存 (GiB)

磁盘(GB)

带宽(Gbit/s)

数量

16

64

500

5000

24

Easysearch 配置

7 节点集群,版本:1.9.0

实例名

内网 IP

软件

vCPU

JVM

磁盘

i-2zegn56cijnzklcn2410

172.22.75.144

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240u

172.23.15.97

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240i

172.25.230.228

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240y

172.22.75.142

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240x

172.22.75.143

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240z

172.24.250.252

Easysearch

16

31G

500GB

i-2zegn56cijnzklcn240r

172.24.250.254

Easysearch

16

31G

500GB

Elasticsearch 配置

7 节点集群,版本:7.10.2

实例名称

内网 IP

软件

vCPU

JVM

磁盘

i-2zegn56cijnzklcn240m

172.24.250.251

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240p

172.22.75.145

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240o

172.17.67.246

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240t

172.22.75.139

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240q

172.22.75.140

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240v

172.24.250.253

Elasticsearch

16

31G

500GB

i-2zegn56cijnzklcn240l

172.24.250.250

Elasticsearch

16

31G

500GB

监控集群配置

单节点 Easysearch 集群,版本:1.9.0

实例名

内网 IP

软件

vCPU

内存

磁盘

i-2zegn56cijnzklcn240f

172.25.230.226

监控集群:Console

16

64G

500GB

i-2zegn56cijnzklcn240j

172.23.15.98

监控集群:Easysearch

16

64G

500GB

压测 loadgen 配置

loadgen 版本:1.25.0

4 台压 Easysearch,4 台压 Elasticsearch。

实例名

内网 IP

软件

vCPU

内存

磁盘

i-2zegn56cijnzklcn240n

172.17.67.245

Loadgen - 压 Easysearch

16

64G

500GB

i-2zegn56cijnzklcn2411

172.22.75.141

Loadgen - 压 Easysearch

16

64G

500GB

i-2zegn56cijnzklcn240k

172.25.230.227

Loadgen - 压 Easysearch

16

64G

500GB

i-2zegn56cijnzklcn240e

172.22.75.138

Loadgen - 压 Easysearch

16

64G

500GB

i-2zegn56cijnzklcn240h

172.24.250.255

Loadgen - 压 Elasticsearch

16

64G

500GB

i-2zegn56cijnzklcn240w

172.24.251.0

Loadgen - 压 Elasticsearch

16

64G

500GB

i-2zegn56cijnzklcn240g

172.24.250.248

Loadgen - 压 Elasticsearch

16

64G

500GB

i-2zegn56cijnzklcn240s

172.24.250.249

Loadgen - 压 Elasticsearch

16

64G

500GB

压测索引 Mapping

PUT nginx
{
  "mappings": {
    "properties": {
      "method": {
        "type": "keyword"
      },
      "bandwidth": {
        "type": "integer"
      },
      "service_name": {
        "type": "keyword"
      },
      "ip": {
        "type": "ip"
      },
      "memory_usage": {
        "type": "integer"
      },
      "upstream_time": {
        "type": "float"
      },
      "url": {
        "type": "keyword"
      },
      "response_size": {
        "type": "integer"
      },
      "request_time": {
        "type": "float"
      },
      "request_body_size": {
        "type": "integer"
      },
      "error_code": {
        "type": "keyword"
      },
      "metrics": {
        "properties": {
          "queue_size": {
            "type": "integer"
          },
          "memory_usage": {
            "type": "integer"
          },
          "thread_count": {
            "type": "integer"
          },
          "cpu_usage": {
            "type": "integer"
          },
          "active_connections": {
            "type": "integer"
          }
        }
      },
      "cpu_usage": {
        "type": "integer"
      },
      "user_agent": {
        "type": "keyword"
      },
      "connections": {
        "type": "integer"
      },
      "timestamp": {
        "type": "date",
        "format": "yyyy-MM-dd'T'HH:mm:ss.SSS"
      },
      "status": {
        "type": "integer"
      }
    }
  },
  "settings": {
    "number_of_shards": 7,
    "number_of_replicas": 0,
    "refresh_interval": "30s"
  }
}

压测方法

每 4 个 loadgen 使用批量写入接口 bulk 轮询压测同一集群的 7 个节点,每个请求写入 10000 个文档。

具体请求如下:

requests:
  - request: #prepare some docs
      method: POST
      runtime_variables:
#        batch_no: uuid
      runtime_body_line_variables:
#        routing_no: uuid
#      url: $[[env.ES_ENDPOINT]]/_bulk
      url: $[[ip]]/_bulk
      body_repeat_times: 10000
      basic_auth:
       username: "$[[env.ES_USERNAME]]"
       password: "$[[env.ES_PASSWORD]]"
      body: |
        {"index": {"_index": "nginx", "_type": "_doc", "_id": "$[[uuid]]"}}
        $[[message]]

压测数据样本

{"method":"DELETE","bandwidth":1955,"service_name":"cart-service","ip":"120.204.26.240","memory_usage":1463,"upstream_time":"1.418","url":"/health","response_size":421,"request_time":"0.503","request_body_size":1737,"error_code":"SYSTEM_ERROR","metrics":{"queue_size":769,"memory_usage":1183,"thread_count":65,"cpu_usage":68,"active_connections":837},"cpu_usage":70,"user_agent":"Mozilla/5.0 (iPad; CPU OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1","connections":54,"timestamp":"2024-11-16T14:25:21.423","status":500}
{"method":"OPTIONS","bandwidth":10761,"service_name":"product-service","ip":"223.99.83.60","memory_usage":567,"upstream_time":"0.907","url":"/static/js/app.js","response_size":679,"request_time":"1.287","request_body_size":1233,"error_code":"NOT_FOUND","metrics":{"queue_size":565,"memory_usage":1440,"thread_count":148,"cpu_usage":39,"active_connections":1591},"cpu_usage":87,"user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1","connections":354,"timestamp":"2024-11-16T05:37:28.423","status":502}
{"method":"HEAD","bandwidth":10257,"service_name":"recommendation-service","ip":"183.60.242.143","memory_usage":1244,"upstream_time":"0.194","url":"/api/v1/recommendations","response_size":427,"request_time":"1.449","request_body_size":1536,"error_code":"UNAUTHORIZED","metrics":{"queue_size":848,"memory_usage":866,"thread_count":86,"cpu_usage":29,"active_connections":3846},"cpu_usage":71,"user_agent":"Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)","connections":500,"timestamp":"2024-11-16T15:14:30.424","status":403}

压测索引 1 主分片 0 副本

Elastic 吞吐

Elastic 线程及队列

资源消耗

Easysearch 吞吐

Easysearch 线程及队列

资源消耗

对比

软件

平均集群吞吐

平均单节点吞吐

最大队列

磁盘消耗

Elasticsearch

5w

5w

811

10G

Easysearch

7w

7w

427

4G

压测索引 1 主分片 1 副本

Elastic 吞吐

Elastic 线程及队列

资源消耗

Easysearch 吞吐

Easysearch 线程及队列

资源消耗

对比

软件

平均集群吞吐

平均单节点吞吐

最大队列

磁盘消耗(~3000 万文档)

Elasticsearch

10w

5w

791

22G

Easysearch

14w

7w

421

7G

压测索引 7 主分片

Elastic 吞吐

Elastic 线程及队列

资源消耗

网络

单节点平均接收 26MB/s,对应带宽:1456 Mb/s

5 千万文档,总存储 105 GB,单节点 15 GB

Easysearch 吞吐

Easysearch 线程及队列

资源消耗

对比

软件

平均集群吞吐

平均单节点吞吐

最大队列

磁盘消耗

Elasticsearch

35w

5w

2449

105G

Easysearch

60w

8.5w

1172

36G

总结

通过对不同场景的压测结果进行对比分析,得出以下结论:

  • Easysearch 相比 Elasticsearch 的索引性能显著提升
    Easysearch 集群的吞吐性能提升了 40% - 70%,且随着分片数量的增加,性能提升效果更为显著。
  • Easysearch 相比 Elasticsearch 的磁盘压缩效率大幅提高
    Easysearch 集群的磁盘压缩效率提升了 2.5 - 3 倍,并且随着数据量的增加,压缩效果愈发明显。

此测试结果表明,Easysearch 在日志处理场景中具有更高的性能与存储效率优势,尤其适用于大规模分片与海量数据的使用场景。

如有任何问题,请随时联系我,期待与您交流!

相关推荐

怎么查询家里wifi密码(怎么查询家里wifi密码是多少)

一、通过已连接wifi的电脑查看1、找到电脑右下角的无线网图标,就是类似信号的图标,点开;2、然后右键自己的wifi名称,选择“属性”;3、进去之后勾选“显示字符”,然后就可以看见密码框的密码以数字显...

分区工具diskgenius怎么合并分区

DiskGenius是一款功能全面的磁盘管理工具,其可以帮助我们进行磁盘分区管理,包括创建新分区、删除分区、扩展分区等。如果您想要合并分区到C盘,可以按照以下步骤进行操作:1.打开DiskGeniu...

windows10易升怎么用(微软windows10易升使用教程)

windows10易升是微软官方的。windows10易升是微软官方发布的升级助理或者叫升级助手(官方下载),帮助你升级到win10最新版本,同时也帮助Win7Win8.1用户升级到Windows1...

300兆光纤买什么路由器(300兆光纤买3000m的路由器有用吗)

对于300Mbps的网速,推荐选择支持AC750及以上的路由器型号。比如TP-LinkArcherC20、D-LinkDIR-816、NetgearR6020等,都是性价比不错的选择。此类路由...

windows10产品密钥查询(查看windows10产品密钥)

要查看电脑上Windows10的产品密钥,你可以按照以下步骤进行操作:打开“开始”菜单,然后点击“设置”图标(齿轮状图标)。在“设置”窗口中,点击“更新和安全”选项。在左侧导航栏中,选择“激活”选项...

电脑怎样设置密码和更改密码
  • 电脑怎样设置密码和更改密码
  • 电脑怎样设置密码和更改密码
  • 电脑怎样设置密码和更改密码
  • 电脑怎样设置密码和更改密码
电脑总死机卡住不动怎么办(电脑老是死机卡住)

如果你的电脑经常卡死,而且只能强制关机,别忘了说明电脑这个配置不够造成的,你需要提高一下它的配置,比如说加一个内存条或者换一个固态硬盘,这样才能够正常运行,不然的话这种电脑是没有办法使用的,现在电脑都...

win10自动修复死循环无法开机

答:1、请确保电脑有充足的电源供应,确保电源可以正常供电;2、检查U盘是否正常安装;3、检查是否有新的软硬件设备接入;4、运行chkdsk,检查硬盘并修复文件系统;5、检查Windows更新,如果存在...

查看台式电脑ip地址(查询台式电脑ip地址)
查看台式电脑ip地址(查询台式电脑ip地址)

如何查看主机名和IP地址:右击我的电脑-属性-网络标识(win2000)/计算机名(winxp)-完整的计算机名称后面的就是你的主机名.右击网上邻居-,属性-右击本地连接-属性-双击INTERNET协议(tcp/ip)就可以看到自己的I...

2025-12-15 19:03 off999

windows7 ultimate(windows7ultimate无法启动)

32位的。1、在下载操作系统镜像的时候,带有x86标识的一般是32位系统,指的是CPU地址总线是32位、fetch、decode解压指令时也按32位字长来进行。x64一般表示系统为64位。2、x86是...

雨林系统u盘安装步骤(雨林重装系统)

如果是ISO镜像那就刻盘安装,如果不想刻盘,就硬盘安装。问题又来了,大部分的都是GHOST的系统,还有就是纯安装版的。我只说一下GHOST的,先把ISO文件给解压了,然后里边会有占主要空间大小的.GH...

0xc000021a手动修复(修复0xc0000225)
0xc000021a手动修复(修复0xc0000225)

出现这样的问题很常见,用以下方法及解决方案就可以解决1、错误代码0xc000021a表示用户模式子系统有所损坏。一般按照蓝屏提示重启系统,即可正常运行。2、如果重启没能解决,则建议通过“最后一次正确的配置”方式启动系统。3、如果系统文件被破...

2025-12-15 17:51 off999

windows7网络驱动(win7网络驱动在哪个文件夹)
windows7网络驱动(win7网络驱动在哪个文件夹)

1.Networkcarddriver。2.右键我的电脑,点击“属性”,选择左侧“设备管理器”3.点击“网络适配器”,如果方框内没有驱动,请下载驱动精灵安装网卡驱动。在Windows7操作系统中,网络驱动程序的名称通常以网络适配器的品...

2025-12-15 17:03 off999

diskgenius的功能介绍(diskgenius是什么)

先打开DiskGenius(如果系统打不开了,可以在PE下运行),在弹出分区工具Diskgenius工具中,依次点击“硬盘——重建主引导记录(MBR)”选项,无需理会弹出的提示窗口,直接按下“是”即可...

网速快但是打开网页慢(网速快但是打开网页慢怎么回事)

原因有很多,有可能是路由器的原因,也有可能是其他原因,总的来说,网速慢的常见原因有以下几种:1.wifi被人蹭网,别人占用了带宽或者给你限速了,可以登录路由器管理页面查看连接的设备数。2.路由器性能...

取消回复欢迎 发表评论: