PostgreSQL 性能评测指南
背景
建议至少提交两份测试报告(从一、二选择两个测试case)
一、任选一(建议结合业务选择,简单在线业务选tpcb,复杂在线业务选tpcc,偏分析业务选tpch)
- tpcc
- tpcb
- tpch
二、任选一(建议结合业务场景选择)
- 并行计算,选择 RDS PG 12 进行测试
- GIS,选择 RDS PG 12 进行测试
- 精准营销,选择 RDS PG 12 进行测试
- 化学分析,选择 RDS PG 12 进行测试
- 多维搜索,选择 RDS PG 12 进行测试
- 回归分析、数据预测,选择 RDS PG 12 进行测试
- 全文检索,选择 RDS PG 11 进行测试
- 模糊查询,选择 RDS PG 11 进行测试
- 图像识别,选择 RDS PG 11 进行测试
- 相似人群扩选,选择 RDS PG 11 进行测试
三、测试方法
1、准备 rds pg
2、准备 ecs测试客户端
3、测试,并输出测试报告(测试报告应该包含:测试方法,测试结论,测试结果解读)
四、建议
1、tpcb
测试case:
初始化数据
测试只读
测试读写
性能指标:
初始化数据时间
qps,tps,平均响应时间
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/201809/20180919_01.md
2、tpcc
准备tpcc测试环境
测试case:
初始化数据
测试
性能指标:
tpmc total
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/201911/20191121_01.md
3、tpch
准备tpch测试环境
测试case:
初始化数据
测试
性能指标:
每条sql耗费时间
(如有某些query的优化方式附在报告中,酌情加分)
参考:
https://github.com/digoal/blog/blob/master/201911/20191121_01.md
4、并行计算,选择 RDS PG 12 进行测试
初始化测试数据
sql测试
测试case:
- 聚合
- 过滤
- 全表扫描
- 索引扫描
- JOIN
- 排序
- 新建表
- 新建索引
- 分区表JOIN
性能指标:
case
关闭并行,耗时
开启并行,并行度,耗时
参考:
https://github.com/digoal/blog/blob/master/201903/20190318_05.md
5、GIS,选择 RDS PG 12 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
qps,平均响应时间
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/201711/20171107_48.md
https://github.com/digoal/blog/blob/master/201711/20171107_30.md
https://github.com/digoal/blog/blob/master/201711/20171107_06.md
https://github.com/digoal/blog/blob/master/201711/20171107_07.md
6、精准营销,选择 RDS PG 12 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
响应时间
参考:
https://github.com/digoal/blog/blob/master/202001/20200113_01.md
7、化学分析,选择 RDS PG 12 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
响应时间
参考:
https://github.com/digoal/blog/blob/master/201911/20191125_01.md
8、多维搜索,选择 RDS PG 12 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
qps,平均响应时间
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/202001/20200115_01.md
9、回归分析、数据预测,选择 RDS PG 12 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
平均响应时间
参考:
https://github.com/digoal/blog/blob/master/202001/20200117_01.md
10、全文检索,选择 RDS PG 11 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
qps,平均响应时间
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/202001/20200116_01.md
11、模糊查询,选择 RDS PG 11 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
qps,平均响应时间
参考:
https://github.com/digoal/blog/blob/master/202001/20200116_01.md
12、图像识别,选择 RDS PG 11 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
qps,平均响应时间
建议:
绑定变量,长连接,连接数建议CPU核数3倍。
参考:
https://github.com/digoal/blog/blob/master/202001/20200115_01.md
13、相似人群扩选,选择 RDS PG 11 进行测试
测试case:
初始化测试数据
初始化测试脚本
测试
性能指标:
响应时间
参考:
https://github.com/digoal/blog/blob/master/202001/20200115_01.md
作者丨digoal
本文来自博客园,作者:古道轻风,转载请注明原文链接:https://www.cnblogs.com/88223100/p/PostgreSQL-Performance-Evaluation-Guide.html