Postgres pgbench测试

文章目录

  • 初始化测试库
  • 测试
    • 标准测试
    • 纯查询测试
  • 总结
  • 参考

初始化测试库

新建数据库test,使用pgbench初始化
-i 表示要求调用初始化模式,如果已经初始化过则会删除老表,重新创建及生成数据
-s 将生成的行数乘以比例因子。例如,-s 100将在pgbench_accounts表中创建 10,000,000 行。默认为 1。当比例为 20,000 或更高时,用来保存账号标识符的列(aid列)将切换到使用更大的整数(bigint),这样才能足以保存账号标识符。
命令如下:

pgbench -i -s 2000 test

初始化数据库
Postgres pgbench测试_第1张图片

测试

-c 模拟的客户端数量,也就是并发数据库会话数量。默认为 1。
-j gbench中的工作者线程数量。在多 CPU 机器上使用多于一个线程会有用。客户端会尽可能均匀地分布到可用的线程上。默认为 1。
-t 每个客户端运行的事务数量。默认为 10。
-r 在基准结束后,报告平均的每个命令的每语句等待时间(从客户端的角度来说是执行时间)。
-S 执行内建的只有选择的脚本。是-b select-only简写形式。

标准测试

pgbench -c 80 -j 4 -t 2000 -r  test

Postgres pgbench测试_第2张图片

纯查询测试

pgbench -c 80 -j 4 -t 2000 -r  -S test

Postgres pgbench测试_第3张图片

总结

此次使用pgbench做简单测试,数据库各项参数都未调整过,之后会根据此次测试作为基准,调整参数测试。具体配置可参考postgres在docker环境下配置

参考

Pg官方文档-pgbench

你可能感兴趣的:(postgres,压力测试)