在实现性能测试报告聚合的时候,一开始使用的方案是通过数据库查询load出所有数据,然后不同维度数据不同消费者消费聚合对应的数据,这样实现当数据量超过1000w+时下载速度无法解决
因为使用的数据库是TimescaleDB,可以使用数据库直接聚合数据的方式
Aggregate Functions
PostgreSQL提供了一系列的 聚合方法
其中我们可以找到有序集合聚合函数
PERCENTILE_CONT
ERCENTILE_CONT 在对值进行排序后计算值之间的线性内插
PERCENTILE_CONT
是一种假定连续分布模型的逆分布函数。该函数具有一个百分比值和一个排序规范,并返回一个在有关排序规范的给定百分比值范围内的内插值
语法
PERCENTILE_CONT ( percentile )
WITHIN GROUP