自治事务实现openGauss/MogDB/PanweiDB 计算TPS

背景

之前在维护PG数据库的时候,有客户提过需求,是通过SQL实现数据库QPS查询,这种需求当时是借助pg_stat_statements插件,在一段时间内,执行相同的sql,通过这两个sql执行结果的差值来估算qps,具体SQL如下:

select round( (c.sum - a.sum) / 10 ) as qps from (select sum(calls) from pg_stat_statements ) a left join ( select pg_sleep(10) ) b on 1=1 left join (select sum(calls) from pg_stat_statements ) c on 1=1;