用于时间序列和聚合的数据库系统

标签 database sqlite time-series

我目前正在创建一个基于树莓派的记录设备,用于记录由太阳能电池阵列馈入电网的电力。

“主表”将增加约 20 个条目,代表阵列的几个部分产生的“当前”功率。

基本上这不是那么多,可以使用 raspberry pi 以可接受的性能处理,但随着越来越多的数据查询,如“选择过去 10 年,按月分组”可能不会非常有效。 ..(数据应通过交互式网络界面显示)

我想做一些“后台聚合”并维护几个表来包含各种时间范围的聚合数据,但这似乎是一个以前可能已经被很多人处理过的问题。

你建议我做什么?

最佳答案

您不知道需要多少数据增长才能影响性能。
你不知道届时性能会受到多大影响。
您不知道性能是否会受到影响完全

只要您甚至没有估计需要多少性能改进,尝试进行优化就没有意义。

或者,正如 Donald Knuth 所说:

premature optimization is the root of all evil


如果您真的确实想要创建聚合值的缓存,我建议使用 triggers在对原始数据进行任何更改后保持缓存一致。

关于用于时间序列和聚合的数据库系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13894343/

相关文章:

mysql - 确保数据库信息安全

php - 从数据库中的交集行和列中选择一个价格

mysql - 是否可以在 Laravel 中的 String/varchar 类型列上的两个表之间创建外键关系?

android - Nexus 9 SQLite 文件在外部目录上写入操作的解决方法?

android - SQLite 数据库浏览器 - 导入国家字体时出现问题

r - 按 R 中指定的不规则间隔拆分 xts 对象

python - 将 Pandas 时间序列切成 n 个月的 block

php - Postgres 中数组元素的自动涂层

python - 添加到数据库时时间值略有偏差

database - 时序数据存储 : RDBMS vs NoSQL