如何将Db2用作Watson IoT Platform的历史数据存储而不是NoSQL?

时间:2018-08-03 17:29:29

标签: ibm-cloud iot watson-iot

我有一个正在运行的Watson IoT Platform实例,并且我有兴趣将每个事件的数据存储在关系数据库中(我控制着如何从设备格式化数据,因此知道JSON的外观是没问题)。我在线上找到了很多文档,例如:

https://developer.ibm.com/recipes/tutorials/create-dashdb-data-warehouse-for-reporting-on-elevator-device-data/

但是我不确定这是否适用,因为我没有使用相同的服务。本质上,我想做的是将数据行存储在Cloud上的Db2实例中。这就像连接Cloud Foundry应用程序以响应来自IoTP的新事件并将它们写入数据库一样简单吗?还是有更简单的方法?

2 个答案:

答案 0 :(得分:2)

我想您正在IOT中寻找一个将设备事件直接写到Db2的选项,但是我认为没有。如果您有一个已注册用于侦听IOT事件的应用程序,则该应用程序可能正在写入Db2数据库。

答案 1 :(得分:1)

我建议看看连接器-cloudant应用程序。

https://github.com/ibm-watson-iot/connector-cloudant

这演示了如何编写/部署将订阅Watson IoT组织中某些/所有事件并将其异步写入数据库的应用程序。在这种情况下,数据库为Cloudant,但是可以轻松修改此示例中的代码以将其写入任何数据库:

具体参见myEventCallback()方法:https://github.com/ibm-watson-iot/connector-cloudant/blob/master/connector/connector-cloudant.py#L71

对于应用程序收到的每个事件,都会调用该方法。重写该方法,将对Cloudant的写入替换为对db2的写入(例如,使用ibm_db模块),并且您已经完成了一半。