选择TSDB进行一次性智能家居安装

时间:2015-06-19 05:14:17

标签: mysql raspberry-pi raspberry-pi2 influxdb opentsdb

我正在构建一个一次性的智能家居数据收集盒。它预计将运行在raspberry-pi级机器(~1G RAM)上,每天处理大约200K数据点(每个64位int)。我们一直在使用vanilla MySQL,但性能开始崩溃,特别是对于给定时间间隔内的条目数量的查询。

据我了解,这基本上就是为时间序列数据库设计的。如果有的话,关于我的情况的不寻常的事情是音量相对较低,可用的RAM量也是如此。

快速浏览维基百科可以看出OpenTSDB,InfluxDB和BlueFlood。 OpenTSDB建议使用4G的RAM,但这可能适用于高容量设置。 InfluxDB实际上提到了传感器读数,但我找不到很多关于需要什么样的资源的信息。

好的,所以这是我的实际问题:是否有明显的红旗会使这些系统中的任何一个不适合我描述的项目?

我意识到这是对火焰的邀请,所以我指望人们把它放在明亮而有益的一面。非常感谢提前!

4 个答案:

答案 0 :(得分:3)

InfluxDB应该可以正常使用该卷的1 GB RAM。像Raspberry Pi这样的嵌入式传感器和低功耗设备绝对是一个核心用例,尽管我们还没有对ARM上的最新测试版进行过多次测试。

InfluxDB 0.9.0刚刚发布,几周后我们的托管环境就可以使用0.9.x.低端实例具有1 GB RAM和1个CPU等效,因此它们是Pi性能的合理代理,免费试用持续两周。

如果您有更具体的问题,请通过Influxdb@googlegroups.com或support@influxdb.com与我们联系,我们会看到我们可以提供帮助。

答案 1 :(得分:1)

您是否尝试过使用OpenTSDB?我们使用OpenTSDB为近150所房屋收集智能电表数据,每10分钟收集一次数据。即一天内有很多数据点。但是我们还没有在Raspberry pi中测试它。对于Raspberry pi,OpenTSDB可能非常繁重,因为它需要运行webserver,HBase和Java。 仅供参考。您可以使用Raspberry pi作为智能家居的收集中心,并将数据从Raspberry pi发送到服务器并存储服务器中的所有点。稍后在服务器中,您可以执行任何您想要的操作,例如聚合,或执行统计分析等。然后您可以将结果发送回智能中心。

答案 2 :(得分:1)

ATSD支持ARM体系结构,可以安装在Raspberry Pi 2上以存储传感器数据。目前,需要Ubuntu或Debian OS。确保设备具有至少1 GB的RAM和具有高写入速度(60mb / s或更高)的SD卡。 SD卡的大小取决于您想要存储多少数据以及多长时间,我们建议至少16GB,您应该提前计划。还建议备用电池电源,以防止崩溃和不合适的停机。

Here您可以找到有关设置与Arduino设备配对的温度/湿度传感器的深入指南。使用该指南,您将能够使用MQTT或TCP协议将传感器数据流式传输到ATSD。包括开源草图。

答案 3 :(得分:1)

尝试VictoriaMetrics。它应在具有低RAM的系统(例如Raspberry Pi)上运行。参见these instructions on how to build it for ARM

VictoriaMetrics对于小型系统还具有以下其他优点:

  • 易于配置和维护,因为它具有零外部依赖关系,并且所有配置都是通过几个命令行标志完成的。
  • 针对低CPU使用率和持久性存储IO使用率进行了优化。
  • 它可以很好地压缩数据,因此与其他解决方案相比,它使用少量的持久存储空间。