我每分钟都会采取措施,我正在寻找一种将这些措施存储在Firebase中的好方法。
我首先考虑将每个值存储在不同的自动生成密钥
中measures : {
KEY1 : {
measure : 456 ,
timestamp : 2016-11-08T08:54:12
},
KEY2 : {
measure : ... ,
timestamp : ...
},
KEY3 : {...}
...
}
但这不可持续,不能永远运行。
我的第二个想法是决定我只需要最后10个值然后
但这可能需要大量的读写操作,我决定存储100个值或每分钟24小时= 1440个值。
第三个想法:删除旧密钥
第三个想法是仅保留最后9个自动生成的密钥 并添加一个带有最后一个值的新值。但我不知道该怎么做(知道我在esp8266上使用arduino-firebase api https://github.com/firebase/firebase-arduino)。
[编辑]第4个想法:循环缓冲区
在键1到60中写入值,然后从1
重新开始这可能是一个很好的解决方案。密钥甚至可以编码为小时/分钟
[编辑]第五个想法:增量字符串
将值写为逗号分隔的字符串 读取当前保存的字符串,然后在开头添加新值ad,然后更新值字符串
这样做的缺点是需要越来越多的带宽
有更好的方法吗?