当前位置:   article > 正文

【Postgresql】pgbench压测工具使用简介_pgbench参数

pgbench参数

官方文档:https://www.postgresql.org/docs/14/pgbench.html

概述

 pgbench是一个在PostgreSQL上运行基准测试的简单程序。它可以在多个并发数据库会话中一遍又一遍地运行相同的 SQL 命令序列,然后计算平均事务率(每秒事务数)。默认情况下,pgbench测试一个基于 TPC-B 的松散场景,每个事务涉及五个SELECT、、UPDATEINSERT命令。但是,通过编写自己的事务脚本文件很容易测试其他情况。

基本命令行和用例

1. 创建基准测试环境,会自动创建几个压力测试用的表

pgbench -i [ other-options] dbname

[ other-options]:-s 指定要生成测试的数据行数,-F也可以用来指定要增加的测试行数

这个过程会创建下面四个表,并初始化一些数据,提示:如果数据库中有同名的表会被删除

table                   # of rows
---------------------------------
pgbench_branches        1
pgbench_tellers         10
pgbench_accounts        100000
pgbench_history         0

2. 运行压力测试

pgbench [options] dbnam
[options]:压力测试使用最普遍的参数有 -c(客户端数据量), -t(事务数量), -T(时间限制), -f(自定义脚本文件),-S(只运行select)
常用连接参数
  1. -h hostname 数据库服务器的主机名
  2. -p port 数据库服务器的端口号
  3. -U login 要连接的用户名
其他还有 --partition-method=NAME 创建测试表的分区名 --partitions=NUM 分区数 --tablespace=tablespace 在指定表空间创建测试表 -C 为每个事务建立一个新连接,而不是每个客户端会话只做一次。这对于测量连接开销很有用 更多选项及功能参考官网手册。

 用例:运行一个时间1分钟200个客户端的压力测试

  1. postgres@iZuf65mtbjzzl8rj91h713Z:~$ pgbench -c 200 -S -T 60 postgres
  2. pgbench (14.4 (Ubuntu 14.4-1.pgdg22.04+1))
  3. starting vacuum...end.
  4. transaction type: <builtin: select only>
  5. scaling factor: 1
  6. query mode: simple
  7. number of clients: 200
  8. number of threads: 1
  9. duration: 60 s
  10. number of transactions actually processed: 9522096
  11. latency average = 1.254 ms
  12. initial connection time = 292.991 ms
  13. tps = 159475.299732 (without initial connection time)

报告介绍

前六行报告了一些最重要的压测运行参数设置。

number of transactions actually processed n/m:报告已完成和预期的交易数量(后者只是客户数量和每个客户的交易数量的乘积);

latency average:平均延迟

initial connection time:初始连接时间

tps:每秒事务数

构造脚本

实际测试中一般自己构造一个测试的脚本文件,通过-f <文件名>来替换基准测试用的默认脚本。

一个简单的例子:vi test.sql

/set id random(1,100000000)  
select * from test where id=:id;

运行

pgbench -c 200 -S -T 60 -f test.sql postgres

更多构造脚本的语法请参考官方手册。
 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/92338
推荐阅读
相关标签
  

闽ICP备14008679号