#1. はじめに
Dr.Sum Data Funnelは「データ収集」する場合、以下の3つの方法(プロトコル)に対応しています。
・MQTT
・HTTP
・OPC UA
また、クライアントからコマンドを実行することで、定期的に生成されるデータファイル(CSVファイルまたはJSONファイル)を入力データとすることもできます。
今回の記事ではHTTPプロトコルを利用するDr.Sum Data Funnel HTTP Agentを使用してデータ投入をしてみたいと思います。
Dr.Sum Data Funnelの概要、またはデータファイルでの連携については「Dr.Sum Data FunnelでCSVファイルを連携してみた」の記事を参考にして下さい。
#2. Dr.Sum Data Funnel HTTP Agentとは
Dr.Sum Data Funnel HTTP Agentは、HTTPで送信されたデータを受け取り、MQTTプロトコルでDr.Sum Data Funnel Message Brokerにパブリッシュします。
たとえば、MQTTトピック「http_topic」にパラメーターを付与して送信するときは、次のようにアクセス(指定)します。
####http://<サーバー名またはIPアドレス>:6280/funnel/topics/http_topic?LIGHT=2.2&PRESSURE=985.22
この例では、
####{"LIGHT": "2.2","PRESSURE": "985.22"}
というJSONオブジェクトが組み立てられ、MQTTでDr.Sum Data Funnel Message Brokerにパブリッシュします。
※Dr.Sum Data Funnel HTTP Agentでのデータの投入についての詳細は以下のマニュアルを参照下さい。
#3. パイプライン定義の作成
任意の名前でパイプライン定義を作成し、以下を設定して「テーブル化の設定」をクリックします。
実行種別:ストリーム
データタイプ:JSON
MQTTトピック:http_topic
トリガー間隔:1秒
「データを入力して推定」を選択して、赤枠部分に例で表示したJSON形式のテキスト
{"LIGHT": "2.2","PRESSURE": "985.22"}
を張り付けて「推定」ボタンを押すとテーブル化されますので、そのまま「OK」ボタンを押します。
「時刻関連項目設定」画面で分析用日時項目を「ARRIVEDTIME」に指定します。
「Dr.Sumに出力」画面で出力先を設定してパイプライン定義を保存します。
※「テーブルの作成SQLをクリップボードにコピー」ボタンを押すとCREATE文がコピーされるので、必要に応じてDr.Sum 側にテーブルを作成してください。
#4. Dr.Sum Data Funnel HTTP Agent経由でデータを投入してみる
以下のURLをブラウザから実行します。
####http://<サーバー名またはIPアドレス>:6280/funnel/topics/http_topic?LIGHT=2.2&PRESSURE=985.22
※以下の例ではlocalhost宛にデータを送信しています。
Dr.Sum Data Funnel HTTP Agent経由でDr.Sumにデータが格納されたことを確認できます。
#まとめ
Dr.Sum Data Funnel HTTP Agentを利用してHTTPで送信されたデータをJSON形式に変換してMQTTでDr.Sum Data Funnel Message Brokerにパブリッシュします。Dr.Sum Data Funnel ServerでJSON形式のデータをテーブル化してDr.Sumにデータ投入する一連の流れをご理解いただけたと思います。
ウイングアーク1st社のホームページからDr.Sum Data Funnelハンズオンの申込ができるようです。興味がある方はぜひ申込してみてください!