使用benchmarksql测试lightdb-x集中式版性能
0、LightDB是基于PostgreSQL最新版的企业发行版,类似于redhat与linux内核的关系。
1、首先从lightdb官网www.hs.net/lightdb下载对应操作系统和CPU架构的版本,比如centos x86或kylinv10 arm;
2、然后安装手册或快速入门安装lightdb并启动。注意:lightdb必须安装在lightdb用户下,需要先groupadd lightdb && useradd -g lightdb lightdb创建用户和组;
3、从https://github.com/hslightdb/citus-benchmarksql下载benchmarksql源码,并编译。或者从链接: https://pan.baidu.com/s/1f-vZvJXIddF1879cjei6lg 提取码: 6wrf 直接下载二进制。然后解压
4、进入run目录
[zjh@hs-10-20-30-193 run]$ pwd
/home/zjh/benchmarksql-REL5_1/run
[zjh@hs-10-20-30-193 run]$ mkdir report
5、创建一个database benchmarksql1000;
ltsql
create database benchmarksql1000;
create user benchmarksql with password 'benchmarksql';
alter database benchmarksql1000 owner to 'benchmarksql';
5、创建或修改配置文件,例如lightdb_1000w.pg
db=postgres driver=org.postgresql.Driver conn=jdbc:postgresql://10.20.30.199:8000/benchmarksql1000 user=benchmarksql password=benchmarksql warehouses=500 loadWorkers=96 terminals=200 //To run specified transactions per terminal- runMins must equal zero runTxnsPerTerminal=0 //To run for specified minutes- runTxnsPerTerminal must equal zero runMins=30
6、删除数据库(重跑时)
./runDatabaseDestroy.sh lightdb_1000w.pg
7、初始化造数据
./runDatabaseBuild.sh lightdb_1000w.pg
8、压测(32c Intel 6250/384GB内存下)
./runBenchmark.sh lightdb_1000w.pg
[zjh@hs-10-20-30-193 run]$ ./runBenchmark.sh lightdb_1000w.pg 13:00:40,834 [main] INFO jTPCC : Term-00, 13:00:40,836 [main] INFO jTPCC : Term-00, +-------------------------------------------------------------+ 13:00:40,836 [main] INFO jTPCC : Term-00, BenchmarkSQL v5.1devel 13:00:40,836 [main] INFO jTPCC : Term-00, +-------------------------------------------------------------+ 13:00:40,836 [main] INFO jTPCC : Term-00, (c) 2003, Raul Barbosa 13:00:40,836 [main] INFO jTPCC : Term-00, (c) 2004-2016, Denis Lussier 13:00:40,837 [main] INFO jTPCC : Term-00, (c) 2016, Jan Wieck 13:00:40,837 [main] INFO jTPCC : Term-00, +-------------------------------------------------------------+ 13:00:40,837 [main] INFO jTPCC : Term-00, 13:00:40,837 [main] INFO jTPCC : Term-00, db=postgres 13:00:40,837 [main] INFO jTPCC : Term-00, driver=org.postgresql.Driver 13:00:40,837 [main] INFO jTPCC : Term-00, conn=jdbc:postgresql://10.20.30.199:8000/postgres 13:00:40,837 [main] INFO jTPCC : Term-00, user=benchmarksql 13:00:40,837 [main] INFO jTPCC : Term-00, 13:00:40,837 [main] INFO jTPCC : Term-00, warehouses=500 13:00:40,838 [main] INFO jTPCC : Term-00, terminals=200 13:00:40,838 [main] INFO jTPCC : Term-00, runMins=30 13:00:40,838 [main] INFO jTPCC : Term-00, limitTxnsPerMin=1000000 13:00:40,838 [main] INFO jTPCC : Term-00, terminalWarehouseFixed=false 13:00:40,839 [main] INFO jTPCC : Term-00, useStoredProcedures=null 13:00:40,839 [main] INFO jTPCC : Term-00, 13:00:40,839 [main] INFO jTPCC : Term-00, newOrderWeight=45 13:00:40,839 [main] INFO jTPCC : Term-00, paymentWeight=43 13:00:40,839 [main] INFO jTPCC : Term-00, orderStatusWeight=4 13:00:40,839 [main] INFO jTPCC : Term-00, deliveryWeight=4 13:00:40,839 [main] INFO jTPCC : Term-00, stockLevelWeight=4 13:00:40,839 [main] INFO jTPCC : Term-00, 13:00:40,839 [main] INFO jTPCC : Term-00, resultDirectory=report/lightdb_10.20.30.231_1000w_200t_%tY-%tm-%td-%tH%tM%tS 13:00:40,839 [main] INFO jTPCC : Term-00, osCollectorScript=./misc/os_collector_linux.py 13:00:40,839 [main] INFO jTPCC : Term-00, 13:00:40,848 [main] INFO jTPCC : Term-00, copied lightdb_1000w.pg to report/lightdb_10.20.30.231_1000w_200t_2022-05-25-130040/run.properties 13:00:40,848 [main] INFO jTPCC : Term-00, created report/lightdb_10.20.30.231_1000w_200t_2022-05-25-130040/data/runInfo.csv for runID 198 13:00:40,848 [main] INFO jTPCC : Term-00, writing per transaction results to report/lightdb_10.20.30.231_1000w_200t_2022-05-25-130040/data/result.csv 13:00:40,849 [main] INFO jTPCC : Term-00, osCollectorScript=./misc/os_collector_linux.py 13:00:40,849 [main] INFO jTPCC : Term-00, osCollectorInterval=1 13:00:40,849 [main] INFO jTPCC : Term-00, osCollectorSSHAddr=null 13:00:40,849 [main] INFO jTPCC : Term-00, osCollectorDevices=null 13:00:40,888 [main] INFO jTPCC : Term-00,
progress: 0.0, tpmTOTAL: 12000.0, tpmC: 0.0
progress: 1.0, tpmTOTAL: 452187.8, tpmC: 200379.6
progress: 2.0, tpmTOTAL: 478440.8, tpmC: 212473.8
progress: 3.0, tpmTOTAL: 485658.1, tpmC: 215088.3
progress: 4.0, tpmTOTAL: 489057.7, tpmC: 217835.5
progress: 5.0, tpmTOTAL: 488998.2, tpmC: 217900.4
progress: 6.0, tpmTOTAL: 489378.4, tpmC: 218203.6
progress: 7.0, tpmTOTAL: 484756.5, tpmC: 216474.8
progress: 8.0, tpmTOTAL: 488833.9, tpmC: 217510.3
progress: 9.0, tpmTOTAL: 488979.0, tpmC: 218295.7
progress: 10.0, tpmTOTAL: 490175.0, tpmC: 218450.2
progress: 11.0, tpmTOTAL: 490755.4, tpmC: 218658.3
progress: 12.0, tpmTOTAL: 491789.0, tpmC: 219516.7
调用./generateReport.sh my_result_xx 生成报告。
正常负载都能跑到90%以上且稳定。
连续4个小时,能够极为稳定,几乎没有明显的抖动。
下面是开源PG的压测曲线:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2021-05-25 centos 7安装tigervnc,最简单(亲测)