如何在Firebase

时间:2016-11-09 19:49:37

标签: firebase arduino firebase-realtime-database esp8266

我每分钟都会采取措施,我正在寻找一种将这些措施存储在Firebase中的好方法。

我首先考虑将每个值存储在不同的自动生成密钥

measures : {
    KEY1 : {
        measure : 456 ,
        timestamp : 2016-11-08T08:54:12
    },
    KEY2 : {
        measure : ... ,
        timestamp : ...
    },
    KEY3 : {...}
    ...
}

但这不可持续,不能永远运行。

我的第二个想法是决定我只需要最后10个值然后

  • 阅读第9个最后记录的测量 - >将它存放在第10位
  • 阅读第8期 - >在第9个商店
  • ...
  • 最后将我的最后一个值存储在第一位

但这可能需要大量的读写操作,我决定存储100个值或每分钟24小时= 1440个值。

第三个想法:删除旧密钥

第三个想法是仅保留最后9个自动生成的密钥 并添加一个带有最后一个值的新值。但我不知道该怎么做(知道我在esp8266上使用arduino-firebase api https://github.com/firebase/firebase-arduino)。

[编辑]第4个想法:循环缓冲区

在键1到60中写入值,然后从1

重新开始

这可能是一个很好的解决方案。密钥甚至可以编码为小时/分钟

[编辑]第五个想法:增量字符串

将值写为逗号分隔的字符串 读取当前保存的字符串,然后在开头添加新值ad,然后更新值字符串

这样做的缺点是需要越来越多的带宽

有更好的方法吗?

0 个答案:

没有答案