##0.はじめに
前回の続きです。今回はMongoDBにデータを蓄積するところを実施します。
##1.必要なもの(今回準備したもの)
項目 | 数量 | メモ |
---|
##2.参考にさせていただいたところ
##3.Node-REDでMongoDB蓄積部分を実装
①Node-REDの左側にあるstorageエリアから下図の赤枠部分にあるmongodbを選択し、右側へドラッグする。
②追加したmongodbノードを設定する。
Serviceに、「mongodb-42」を指定する。
Collectionに、「SenseData」を入力する。
Operationに、「save」を指定する。
Only store msg.payload object?に、チェックを入れる。
Nameに、「DB蓄積」を入力する。
④mongodb検索用ノードを追加する。
①で追加したmongodbノードではなく、下図の赤枠のmongodbノードを選択する。
※入力用と出力用に分かれています。(ロゴが左に付いているものが入力用、右に付いているものが出力用。)
⑤mongodb検索用ノードを設定する。
Serviceに、「mongodb-42」を指定する。
Collectionに、「SenseData」を入力する。
Operationに、「find」を指定する。
Nameに、「DB検索」を入力する。
⑥injectノードを追加する。
mongodb検索ノードを追加しましたが、実行するトリガーがないため、このままでは動作しません。
そのため、トリガーとなるinjectノードを追加する。
左側のinputエリアからinjectノードを選択する。
⑦Injectノードを設定する。
Payloadを、リストから「String」を選択する。
Nameを、「DB一覧表示」と入力する。
⑧debugノードを追加する。
左側のoutputエリアからdebugノードを選択する。
⑨InjectノードとDB一覧表示ノードとdebugノードを接続する。
⑩右上にあるDeployをクリックし、設定を反映する。
##4.mongodbへデータを投入##
①前回作成した、mqtt.jsを使用してデータを投入する。
pi@raspberrypi ~ $ node mqtt.js
②mongodbに蓄積されているか確認する。
下図の赤枠をクリックする。
右側のdebugウィンドウにDB検索結果が表示されていれば、正常に格納されています。
##5.mongodbのデータ(テーブル)を削除##
テストなどで溜まったデータを消したい場合があったので、DB削除用のinjectを作成しました。
①injectノードを追加・設定する。
Payloadを、リストから「String」を選択する。
Nameを、「DB削除」と入力する。
②DB削除ノードを追加・設定する。
Serviceに、「mongodb-42」を指定する。
Collectionに、「SenseData」を入力する。
Operationに、「remove」を指定する。
Nameに、「DB削除」を入力する。
③injectノードとDB削除ノードを接続し、Deployする。
④DB削除用injectを実行する
実行すると、Successfully inject: DB削除 が出力されます。
⑤削除されているか確認する。
DB一覧表示injectを実行し、debug画面で中身が空になっていることを確認する。
以上でmongodbの動作確認は完了です。
次回(その8)は、Google Gaugeを使って、リアルタイムでの温度・湿度・気圧の可視化を行います。