我正在使用 TimeScaleDB 和 PostgreSQL 来管理时间序列数据。
优化表时,建议完全依赖 TimeScaleDB 超表,还是应该像不使用超表时那样独立添加索引?
在这种情况下,关键是检索数据的性能。
我正在使用 TimeScaleDB 和 PostgreSQL 来管理时间序列数据。
优化表时,建议完全依赖 TimeScaleDB 超表,还是应该像不使用超表时那样独立添加索引?
在这种情况下,关键是检索数据的性能。
TimescaleDB 默认在时间维度上创建索引。如果您的查询经常从其他列中选择值的数据,那么在这些列上创建索引会很有帮助,就像您对普通表所做的那样。但是,在 TimescaleDB 的情况下,所有索引都应该是复合索引并包括时间维度列。创建新索引后,您可能会在时间维度上删除自动创建的索引。像往常一样,创建新索引应该考虑到索引占用额外的空间并需要更多的处理资源来维护它们。
Timescale 有一篇博文,其中提供了有关添加索引的建议。