了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站
pgbench 简介:
pgbench是一种在PostgreSQL上运行基准测试的简单程序。它可能在并发的数据库会话中一遍一遍地运行相同序列的 SQL 命令,并且计算平均事务率(每秒的事务数)。默认情况下,pgbench会测试一种基于 TPC-B 但是要更宽松的场景,其中在每个事务中涉及五个SELECT、UPDATE以及INSERT命令。但是,通过编写自己的事务脚本文件很容易用来测试其他情况。
使用方法
pgbench [OPTION]... [DBNAME]
初始化选项
-i, --initialize 调用初始化模式
-F, --fillfactor=NUM 设置填充因数
-n, --no-vacuum 初始化后不运行vacuum
-q, --quiet 安静模式
-s, --scale=NUM 比例因子
标准选项
-c, --client=NUM 数据库客户端并发数量(默认值:1)
-C, --connect 为每个事务建立新的连接
-D, --define=VARNAME=VALUE 定义自定义脚本使用的变量
-f, --file=FILENAME 从文件名中读取事务脚本
-j, --jobs=NUM 线程数(默认为1)
-l, --log 写入日志文件
-L, --latency-limit=NUM 将持续时间超过毫秒(ms)的事务算作延迟
-M, --protocol=simple|extended|prepared 提交查询的协议(默认:simple)
-n, --no-vacuum 测试前不要运行vacuum
-N, --skip-some-updates 跳过pgbench_tellers和pgbench_branches的更新
-P, --progress=NUM 每隔指定秒显示线程进度报告
-r, --report-latencies 报告每个命令的平均延迟
-R, --rate=NUM 每秒事务的目标速率
-s, --scale=NUM 在输出中报告这个比例因子
-S, --select-only 执行只读查询
-t, --transactions=NUM 每个客户端运行的事务数(默认为10)
-T, --time=NUM 基准测试持续时间(秒)
-v, --vacuum-all 测试前vacuum全部4张标准表
硬件环境
数量 | 3台服务器 |
型号 | 华为2488H V5 |
CPU | 4*16核 Intel Xeon 6130 2.10GHz |
存储 | 2*480GB SSD 、22*1.2T SAS |
内存 | 1T(33*32 GB) 2666MHz DDR4 |
网口 | 2块双口千兆、2块双口万兆以太网卡 |
Linux发行版 | Red Hat Enterprise Linux Server release 7.5 |
Linux内核 | 3.10.0-862.el7.x86_64 |