Easysearch VS Opensearch 数据写入与存储性能对比

本文记录 Easysearch 和 Opensearch 数据写入和数据存储方面的性能对比。

准备

  1. 压测工具:INFINI Loadgen

  2. 对比版本:

  • Easysearch 1.11.1(lucene 8.11.4)
  • Opensearch 2.19.1(lucene 9.12.1)
  1. 节点 JVM 配置:1G

数据写入

压测命令:

shell 复制代码
./loadgen-linux-amd64 -c 20 -d 300

Opensearch

plain 复制代码
PUT infinilabs
{
  "settings": {
    "number_of_shards": "1",
    "number_of_replicas": 0,
    "index.refresh_interval": "120s",
    "translog": {
      "durability": "async",
      "sync_interval": "120s"
    }
  }
}

Easysearch

plain 复制代码
PUT infinilabs
{
  "settings": {
    "number_of_shards": "1",
    "number_of_replicas": 0,
    "index.refresh_interval": "120s",
    "translog": {
      "durability": "async",
      "sync_interval": "120s"
    }
  }
}

数据存储

压测命令:

shell 复制代码
./loadgen-linux-amd64 -c 20 -d 600 -l 10000

Opensearch: zstd 压缩

plain 复制代码
PUT infinilabs
{
  "settings": {
    "number_of_shards": "1",
    "number_of_replicas": 0,
    "index.refresh_interval": "120s",
    "translog": {
      "durability": "async",
      "sync_interval": "120s"
    },
    "index.codec": "zstd"
  }
}

Easysearch: zstd + source_reuse 压缩

plain 复制代码
PUT infinilabs
{
  "settings": {
    "number_of_shards": "1",
    "number_of_replicas": 0,
    "index.refresh_interval": "120s",
    "translog": {
      "durability": "async",
      "sync_interval": "120s"
    },
    "index.codec": "ZSTD",
    "index.source_reuse": "true"
  }
}

结论

  1. 数据写入方面,Easysearch(lucene 8.x) 和 Opensearch(lucene 9.x)基本持平;
  2. 数据存储方面,相同数据量经过 Easysearch 和 Opensearch 的压缩后,Easysearch 占用的空间明显少于 Opensearch,并且数据量越大越明显。
相关推荐
njidf6 分钟前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
F1FJJ23 分钟前
Shield CLI v0.3.0:插件系统上线,首发 MySQL Web 管理
网络·数据库·网络协议·mysql·容器·golang
波波七25 分钟前
maven导入spring框架
数据库·spring·maven
深蓝轨迹26 分钟前
Redis 分布式锁实现流程
数据库·redis·分布式
程序猿阿伟28 分钟前
《OpenClaw端口通信失效全解:监听修改与防火墙规则落地指南》
服务器·数据库·windows
进击的雷神29 分钟前
突破增量抓取困境:基于数据库状态判断的高效新闻爬虫设计
数据库·爬虫·spiderflow
一叶飘零_sweeeet33 分钟前
击穿 MySQL 事务隔离级别:底层实现原理 + 生产级架构选型避坑指南
数据库·mysql·架构·mysql事务隔离级别
虾..35 分钟前
Linux 五种IO模型
linux·服务器·数据库
程序边界41 分钟前
深度Oracle替换工程实践的技术解读(上篇)
数据库·oracle
2401_831824961 小时前
RESTful API设计最佳实践(Python版)
jvm·数据库·python