タイムアウト補間ノードは、データレポートが中断された場合に、所定の値でギャップを埋めることでデータの継続性を維持します。このノードは、途切れないデータシーケンスが必要なシナリオで使用します。
シナリオ
サーモスタットの温度センサーは、温度が変化した場合にのみデータをレポートします。データがレポートされない場合、温度は一定であると見なされます。このようなセンサーに対して、タイムアウト補間ノードを使用することで、分単位のデータモニタリングを実現できます。
前提条件
データコンピューティングの式またはデータフィルタリングのフィルターが設定されていることを確認してください。詳細については、「データコンピューティングとデータフィルタリングの設定」をご参照ください。
背景情報
データ解析機能の概要については、「使用上の注意」をご参照ください。
データ解析ワークスペースの操作方法については、「データ解析ワークスペースの操作手順」をご参照ください。
操作手順
中央のキャンバスで、現在のノードの後に追加
アイコンをクリックします。-
ポップアップ表示されたノードリストで、[タイムアウト補間] ノードをシングルクリックします。
-
キャンバスで、[タイムアウト補間] ノードを 1 回クリックします。右側の設定パネルで、次の表に従って設定します:
設定項目
パラメーター
説明
例
基本設定
補間時間タイプ
以下から選択します。
-
[相対時間]:データ解析タスクの開始時刻に基づいて、一定の間隔で補間します。[相対時間補正期間] を [10s]、[15s]、[30s]、[1min]、[5min]、[15min]、[30min] などに設定します。
-
[絶対時間]: Java (Quartz) 標準 Crontab 式を使用して、絶対補間時間を定義します。[絶対時間補正期間] を設定します。詳細については、「付録: Crontab 式」をご参照ください。
「シナリオ」の例のように、分単位のモニタリングを行うには、2種類の補間時間タイプから選択します。
-
[相対時間]:[相対時間補正期間] を [1 min] に選択します。
-
[絶対時間]:Crontab 式を
0 */1 * * * ?に設定します。
補間データタイプ
オプションは次のとおりです。
-
[直前の実データ]:最後にレポートされた実データを補間に使用します。
-
[プリセットデータ]:事前定義されたデータを補間に使用します。メッセージ内容は JSON 形式である必要があります。
「シナリオ」セクションでは、[以前の実データ] を選択します。
詳細設定
メッセージパーティションキー
任意。タイムアウト補間のディメンションを指定します。多くの場合、異なるデバイスからのメッセージを区別するために使用されます。
設定しない場合、IoT Platform システムはデフォルトで ProductKey と DeviceName をパーティションキーとして使用します。
「シナリオ」の例では、サーモスタットの ID である boxId フィールドをパーティションキーとして使用します。
許容遅延
実際のメッセージの伝送遅延による不要な補間を防ぐため、メッセージを補間するまでの遅延を秒単位で指定します。
デフォルト設定を使用します。
Time-to-Live
トピックが長期間メッセージをレポートしていない場合に、補間を継続する最大期間を秒単位で定義します。最小消去時間は 1 分、最大は 7 日で、デフォルトは 1 日です。タイマーはメッセージを受信するたびにリセットされます。
デフォルト設定を使用します。
-
-
タイムアウト補間ノードの設定を完了するには、データ解析ワークスペースの右上隅にある[保存]をクリックします。
重要備考:このノードの出力フィールドは、先行するノードの出力フィールドと同じです。
次のステップ
タイムアウト補間ノードを設定した後、追加の処理ノードをセットアップするか、ターゲットノードを設定してデータ解析タスクを完了します。
付録:Crontab 式
Java (Quartz) 標準の Crontab 式の詳細は以下のとおりです。
例:
# 各月の最終日
@Scheduled(cron = "0 0 18 * * ?")
public void doAtLastDayOfMonth() {
// ここで何らかの処理を実行します...
}
説明:
Java (Quartz)
* * * * * * *
- - - - - - -
| | | | | | |
| | | | | | + 年 [任意]
| | | | | +----- 曜日 (0 - 7) SUN,MON,TUE,WED,THU,FRI,SAT
| | | | +---------- 月 (1 - 12) または JAN,FEB,MAR,APR ...
| | | +--------------- 日 (1 - 31)
| | +-------------------- 時 (0 - 23)
| +------------------------- 分 (0 - 59)
+------------------------------ 秒 (0 - 59)
|
フィールド |
必須 |
値の範囲 (整数) |
使用可能な特殊文字 |
|
秒 |
はい |
0~59 |
|
|
分 |
はい |
0~59 |
|
|
時 |
はい |
0~23 |
|
|
日 (月) |
はい |
1~31 |
|
|
月 |
はい |
1~12 または JAN~DEC 対応関係:1 は 1 月 (JAN)、2 は 2 月 (FEB)、3 は 3 月 (MAR)、4 は 4 月 (APR)、5 は 5 月 (MAY)、6 は 6 月 (JUN)、7 は 7 月 (JUL)、8 は 8 月 (AUG)、9 は 9 月 (SEP)、10 は 10 月 (OCT)、11 は 11 月 (NOV)、12 は 12 月 (DEC) です。 |
アスタリスク (*):フィールドのすべての可能な値を表します。 |
|
曜日 |
はい |
0~7 または SUN~SAT 対応関係:0 (SUN)、1 (MON)、2 (TUE)、3 (WED)、4 (THU)、5 (FRI)、6 (SAT)。0 と 7 の両方が日曜日 (SUN) を表すことに注意してください。 |
アスタリスク (*)、疑問符 (?):フィールドで「特定の値なし」または「任意の値」を指定するために使用されます。 |
|
年 |
いいえ |
1970~2099 |
アスタリスク (*):フィールドのすべての可能な値を表します。 |