简介
我们假设我有1000个传感器。每个传感器每1分钟向我的API发送一次测量。此API只是将值放入我的数据库中。
会有:
有些传感器测量空气质量,湿度,温度和压力,有些传感器仅测量空气质量。也许在未来会有传感器,我不知道它们会测量什么。
其他信息
收集数据后,我想将它们表示为网络热图。因此,我可能希望能够以返回选定区域中的测量值的方式查询数据库。
您可以简单地计算出我每个月会有43.2M的请求 - 大约是1.4 GB。因此,将优化将存储在此处的数据大小。
我考虑制作3张桌子:
我将如何应对?
有两个不同的表 - am_static_measurements和am_dynamic_measurements,因为静态传感器比动态传感器多得多(我相信现在如此),我不想浪费存储来获取相同的本地化数据。
如果任何传感器没有(例如)压力测量,我将简单地将NULL放到表中,如果某些传感器将收集我没有预测的任何其他数据,我将只添加另一列到表中
问题
这是好方法吗?关系数据库(MySQL)对此有用吗?有什么建议吗?我是否应该将am_static_measurements和am_dynamic_measurements合并到一个表中,以便拥有更大的存储数据但更容易请求?