在简单的postgres和timescaleDB查询性能测试中没有看到任何增强吗?

问题描述

我尝试了在postgres和timescaleDB之间进行简单的性能测试。 这是我的结果:-

总行403,204

使用Postgres

获取聚合查询的时间176行: 203ms-240ms

获取联接查询的时间102行: 660ms-720ms

使用TimescaleDB

获取聚合查询的时间176行: 175ms-200ms

获取联接查询的时间102行: 614ms-650 ms

cellForRow

我期望查询性能会有所提高。 我还能做些什么来提高查询性能?

解决方法

几件事:

  1. 我有点困惑。 time_bucket是一个TimescaleDB函数,而不是Postgres函数,因此它可能正在运行我们的某些代码。
  2. 您仍在对所有数据执行全表扫描。在这里没有太多的优化方法。并且数据集很小(400K),因此将全部容纳在缓冲区缓存中;如果要查看某些插入/查询性能,则可能需要(a)更多数据,(b)更复杂的查询类型。
  3. 但是TimescaleDB还具有其他功能。例如,打开压缩,您可能会发现这些“全表扫描”更快(尽管一旦进入磁盘绑定的工作负载)。或启用连续aggs,以便您可以连续/递增地实现这些结果以服务于例如面向用户的仪表板。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...