小编Rog*_*ger的帖子

加速PostgreSQL查询,其中数据在两个日期之间

我有一个大表(> 50米行),其中包含一些带有ID和时间戳的数据:

id, timestamp, data1, ..., dataN
Run Code Online (Sandbox Code Playgroud)

...打开多列索引(id, timestamp).

我需要查询表以选择具有特定ID的所有行,其中时间戳在两个日期之间,我目前正在使用:

SELECT * FROM mytable WHERE id = x AND timestamp BETWEEN y AND z
Run Code Online (Sandbox Code Playgroud)

目前在高端机器上需要2分钟(2x 3Ghz双核Xeons w/HT,16GB RAM,RAID 0中2x 1TB驱动器),我真的很想加速它.

我发现这个提示建议使用空间索引,但它提供的示例是IP地址.然而,速度增加(436s到3s)令人印象深刻.

我如何使用时间戳?

sql postgresql performance spatial-index

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

performance ×1

postgresql ×1

spatial-index ×1

sql ×1