Как использовать Db2 в качестве хранилища исторических данных для платформы Watson IoT вместо NoSQL?

У меня запущен экземпляр платформы Watson IoT, и я заинтересован в хранении данных каждого события в реляционной базе данных (я контролирую, как данные форматируются с устройств, поэтому знание того, как будет выглядеть JSON, не является проблемой). проблема). Я нашел много документации в Интернете, например:

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

Но я не уверен, что это применимо, так как я не использую те же услуги. По сути, я хочу хранить строки данных в своем экземпляре Db2 в облаке. Это так же просто, как подключить приложение Cloud Foundry, чтобы реагировать на новые события из IoTP и записывать их в базу данных? Или есть более простой метод?


person zcleghern    schedule 03.08.2018    source источник


Ответы (2)


Я предполагаю, что вы ищете в IOT возможность записи событий устройства непосредственно в Db2, но я не думаю, что она есть. Если у вас есть приложение, зарегистрированное для прослушивания событий Интернета вещей, то это приложение может выполнять запись в базу данных Db2.

person chughts    schedule 06.08.2018

Я бы посоветовал взглянуть на приложение Connector-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) и ты уже на полпути.

person DavidParker    schedule 06.08.2018