すべてのブロックの概要
次の表は、モデル エディタのパレットから選択できるすべてのブロックの簡単な説明をアルファベット順に示しています(自分で作成したカスタムブロックを除く)。
ブロック名 | 説明 |
---|---|
アラーム入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Alarm オブジェクトを受信し、タイムスタンプに基づいてそれらのオブジェクトを並べ替えます |
アラーム出力 | 事前設定されたアラーム名とパラメーターを使用して、指定されたデバイス、アセット、トリガーデバイス用の新しい Alarm オブジェクトを作成します |
AND | 入力に対して論理 and を実行します
|
平均値 (平均) | 時間の経過に伴う値の平均を計算します |
結合要素 | 選択されたモードと接続された入力に基づいて出力を計算します |
定数値 | トリガー入力ポートが信号を受信したとき、または起動時に値を出力します |
カウンター | 合計入力数と繰り返された入力数を示します |
Cron Timer | cron のような定期タイマー構文に基づいて信号出力を送信します |
超過数カウンター | 指定された方向のしきい値交差の数を検出してカウントします |
差分 | 連続する入力値の差を計算します |
相違 | 接続された入力間の絶対差と符号付きの差を計算します |
方向検出 | 入力値の方向が変化したかどうかを検出します |
個別統計 | 離散入力値の合計、カウント、平均値(平均)、標準偏差、最小値と最大値の統計を生成します |
持続時間 | 設定した開始時刻からの経過時間を計測します |
イベント入力 | デバイス、アセット、またはグループ内のデバイスから Event オブジェクトを受信し、タイムスタンプに基づいてそれらのオブジェクトを並べ替えます |
イベント出力 | 指定されたデバイス、アセット、トリガーデバイスの新しい Event オブジェクトを作成します |
式 | 式を評価して、算術計算、論理計算、または文字列操作を実行します |
プロパティの抽出 | 入力値から指定されたプロパティを抽出し、指定されたタイプに変換します |
ベース N から | 基数 N の文字列を float に変換します |
ゲート | ゲートが開いていて有効になっていない限り、入力が出力に送られるのをブロックします |
ジオフェンス | 入力値を定義されたジオフェンス値と比較して、デバイスがジオフェンス内にあるかどうか、およびデバイスがジオフェンスに出入りしたかどうかを検出します |
勾配 | 値の加重線形回帰勾配を計算します |
グループ統計 | ブロックが入力値を受け取ったグループ内のすべてのデバイスにわたって、定期的な集計値を生成します |
インテグラル | 時間の経過に伴う入力値の積分を計算します |
KPI | 値を KPI(主要業績評価指標)またはデバイス、アセット、デバイスグループのデータポイントと比較します |
ラッチ値 | ブロックが有効になっている間に受信した最新の入力値をラッチします |
限度 | 定義された上限値と下限値の範囲内に収まる値を出力します |
管理オブジェクト入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから ManagedObject オブジェクトを受信します |
管理オブジェクト出力 | 指定されたデバイス、アセット、トリガーデバイスの ManagedObject オブジェクトを更新します |
測定入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Measurement オブジェクトを受信し、タイムスタンプに基づいて並べ替えます |
測定出力 | 指定されたデバイス、アセット、トリガーデバイスの新しい Measurement オブジェクトを作成します |
最小値 / 最大値 | 時間の経過に伴う値の最小値と最大値を計算します |
不足データ | 設定された時間の間、入力が発生しなかった場合に出力を生成します |
NOT | 入力に対して論理 not を実行します
|
操作入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Operation オブジェクトを受信します |
操作出力 | 指定されたデバイス、アセット、トリガーデバイスのために、新しい Operation オブジェクトを作成します |
OR | 入力に対して論理 or を実行します
|
位置入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Event オブジェクトを受信し、c8y_Position フラグメントを Value オブジェクトに抽出します |
パルス | 非パルス入力をパルス出力に変換します |
範囲 | 入力値を定義された範囲の下限値および上限値と比較して、入力が範囲内か範囲外か、または範囲を超えているかどうかを検出します |
範囲参照 | 入力値が含まれる範囲を検索します |
丸め | 選択可能なルールを使用して、入力を指定された小数点以下の桁数または整数に丸めます |
セレクター | どの入力ポートが true 値を持つかに応じてパラメーター値を出力し、最小値が優先されます |
電子メールの送信 | 指定されたメールアドレスにメールを送信します |
SMS を送信 | 指定した電話番号に SMS(ショートメッセージ サービス)を送信します |
プロパティの設定 | 入力ポートの値から設定されたプロパティを使用して、パルスを出力します |
標準偏差 | 時間の経過に伴う値の標準偏差と分散を計算します |
スイッチ | 指定された入力から値を出力するか、サーキット ブレーカーとして機能します |
テキストの代替 | テキスト テンプレート内のハッシュと中括弧でマークされた識別子(#{name} など)を、入力値の対応するエントリに置き換えます |
しきい値 | 入力値を定義されたしきい値と比較して、入力がしきい値に違反しているかどうか、またはしきい値を超えているかどうかを検出します |
時間遅延 | 指定された時間だけ入力を遅らせます |
ベース N へ | float を基数 N の文字列に変換します |
切り替え | オプションの遅延を使用して、セット信号とリセット信号に基づいて 2 つのパルス入力をブール出力に変換します |
入力
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
アラーム入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Alarm オブジェクトを受信し、タイムスタンプに基づいてそれらのオブジェクトを並べ替えます |
イベント入力 | デバイス、アセット、またはグループ内のデバイスから Event オブジェクトを受信し、タイムスタンプに基づいてそれらのオブジェクトを並べ替えます |
管理オブジェクト入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから ManagedObject オブジェクトを受信します |
測定入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Measurement オブジェクトを受信し、タイムスタンプに基づいて並べ替えます |
操作入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Operation オブジェクトを受信します |
位置入力 | デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Event オブジェクトを受信し、c8y_Position フラグメントを Value オブジェクトに抽出します |
アラーム入力
apama.analyticskit.blocks.cumulocity.AlarmInput
デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Alarm オブジェクトを受信し、タイムスタンプに基づいて並べ替えます。
「アラームステータス」パラメーターが「アクティブ」の場合、「タイムスタンプを無視」パラメーターが設定されていない限り、アラームはタイムスタンプに基づいて並べ替えられます(古すぎる場合は削除されます)。それ以外の場合、データは受信時に処理されます。
ブロックの入力ストリームを定義するパラメーターは、「入力ソース」と「アラームタイプ」です。このブロックが別のモデルのアラーム出力ブロックと同じ「入力ソース」および「アラームタイプ」パラメーターで構成されている場合、各ブロックが Alarm オブジェクトの同じストリームを参照するため、モデル間の接続が形成されます。 注: シミュレーションモードで実行する場合、アラームの作成時間のみが保存されるため、アラームのステータスはアクティブである必要があります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
アラームタイプ | ブロックが監視しているアラームのタイプ | string | |
入力ソース | アラームが受信したソースを定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
重大度 | アラームの重大度。指定しない場合、ブロックはすべてのアラーム重大度を監視します | 任意:次のいずれか
|
任意 |
アラームステータス | アラームのステータス。指定しない場合、ブロックはあらゆるステータスのアラームを監視します | 任意:以下のいずれか
|
任意 |
通知モード | 新しいアラーム、更新されたアラーム、またはすべてのアラームのみが処理されるように Alarm イベントをフィルタリングします。デフォルトでは、すべてのアラームが処理されます | 任意:以下のいずれか
|
デフォルト:すべて |
タイムスタンプを無視 | これを選択すると、受信アラームのタイムスタンプが無視されます。 注:シミュレーションモードで実行する場合、履歴入力データが使用されるため、タイムスタンプは無視されません |
boolean | デフォルト:False |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
アラーム | 追加のプロパティを使用して、受信した各 Alarm オブジェクトのパルス出力を生成します | pulse |
イベント入力
apama.analyticskit.blocks.cumulocity.DeviceEventInput
デバイス、アセット、またはグループ内のデバイスから Event オブジェクトを受信し、タイムスタンプに基づいてそれらのオブジェクトを並べ替えます。
「タイムスタンプを無視」パラメーターが設定されている場合、ブロックはイベントのタイムスタンプを無視し、受信したイベントを処理します。それ以外の場合は、古いイベントを削除します。
ブロックの入力ストリームを定義するパラメーターは、「入力ソース」と「イベントタイプ」です。このブロックが別のモデルのイベント出力ブロックと同じ「入力ソース」 および 「イベントタイプ」 パラメーターで構成されている場合、各ブロックが Event オブジェクトの同じストリームを参照するため、モデル間の接続が形成されます。 注:シミュレーションモードで実行される際、履歴入力データが使用されるため、タイムスタンプは無視されません。 注:Event オブジェクトの変更履歴は保持されないため、インベントリから元のオブジェクトを取得することはできません。このため、この入力ブロックタイプを含むモデルは、シミュレーションモードでは本稼動(Production)モードとは異なる動作をする可能性があります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | イベントの受信元を定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
イベントタイプ | ブロックが監視するイベントタイプ | string | |
通知モード | 新しいイベント、更新されたイベント、またはすべてのイベントのみが処理されるように、Event イベントをフィルタリングします。デフォルトでは、すべてのイベントが処理されます | 任意:以下のいずれか
|
デフォルト:すべて |
タイムスタンプを無視 | これを選択すると、受信イベントのタイムスタンプが無視されます。注: シミュレーションモードで実行する場合、履歴入力データが使用されるため、タイムスタンプは無視されません | boolean | デフォルト:False |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
イベント | 追加のプロパティを使用して、受信した各 Event オブジェクトのパルス出力を生成します | pulse |
管理オブジェクト入力
apama.analyticskit.blocks.cumulocity.ManagedObjectInput
デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから ManagedObject オブジェクトを受信します。
ブロックは受信した ManagedObject オブジェクトを並べ替えず、受信した通りに処理します。「プロパティ名」パラメーターが指定されている場合、指定されたプロパティの値が最後の出力以降変更されていない場合、同じ ManagedObject オブジェクトの他のプロパティが変更された場合でも、ブロックは新しい出力を生成しません。
ブロックからの「値」出力には、「プロパティ名」パラメーターで指定されたプロパティを含む、ManagedObject オブジェクトのすべてのプロパティが含まれます。プロパティ値には、「プロパティの抽出」ブロックを使用してアクセスできます。 string、boolean または float 型の値を持つプロパティには、「プロパティの抽出」ブロックでプロパティの名前を指定することでアクセスできます。例えば、プロパティの名前が ap_State の場合、「プロパティの抽出」ブロックの「プロパティ パス」パラメーターの値として ap_State を指定します。 プロパティ値のタイプが JSON オブジェクトまたはシーケンスである場合、ネストされた値へのフルパスをプロパティの名前として指定することで、ネストされた値にアクセスできます。 例えば、プロパティの名前が c8y_SpeedMeasurement で、値が { "Speed": { "value": 1234, "unit": "km/h" } }(JSON 形式)の場合、「プロパティの抽出」ブロックの「プロパティ パス」パラメーターの値として c8y_SpeedMeasurement.Speed.unit を指定して、単位の値を抽出します。 ManagedObject オブジェクトに関連付けられた位置データはすべて c8y_Position プロパティとして利用でき、「プロパティの抽出」ブロックを使用して抽出できます。 このブロックの「プロパティ名」パラメーターで指定されたプロパティの値が string、boolean または float 型の場合、その値も次のようになります。これは、「値」出力ポートで直接利用でき、「プロパティの抽出」ブロック(「式」ブロックや「相違」ブロックなど)を使用せずに、その型の値を消費するブロックで直接消費できます。 ブロックの入力ストリームを定義するパラメーターは、「入力ソース」と「プロパティ名」です。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | マネージドオブジェクトの受信したソースを定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
プロパティ名 | 監視するプロパティの名前。
ManagedObject オブジェクトには、この名前のプロパティがなければなりません。そうでない場合は無視されます。設定されていない場合、オブジェクトはフィルタリングされません。更新のたびに、ManagedObject のすべてのプロパティを含むパルス出力が生成されます |
string | 任意 |
開始値のキャプチャ | モデルがアクティブになるときに開始値を出力します。「入力ソース」パラメーターが「すべての入力」に設定されている場合は、このパラメーターを選択しないでください | boolean | デフォルト:False |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 受信した各 ManagedObject オブジェクトに対して出力を生成します。
マネージドオブジェクトのすべてのプロパティは、追加プロパティとして使用できます。「プロパティの抽出」ブロックを使用して、その値にアクセスできます。 |
any |
測定入力
apama.analyticskit.blocks.cumulocity.DeviceMeasurementInput
デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Measurement オブジェクトを受信し、タイムスタンプに基づいて並べ替えます。
「タイムスタンプを無視」パラメーターが設定されている場合、ブロックはメジャーメントのタイムスタンプを無視し、メジャーメントを受信したときに処理します。それ以外の場合は、古いメジャーメントが削除されます。
入力にグループを使用する場合、グループ内のデバイスを選択してフラグメントとシリーズを選択し、目的のグループに変更します。 ブロックの出力ストリームを定義するパラメーターは、「入力ソース」と「フラグメントおよびシリーズ」です。このブロックが別のモデルの「測定出力」ブロックと同じ 「入力ソース」と「フラグメントおよびシリーズ」パラメーターで構成されている場合、各ブロックが Measurement の同じストリームを参照するため、モデル間の接続が形成されます。 注:シミュレーションモードで実行される際、履歴入力データが使用されるため、タイムスタンプは無視されません。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | メジャーメントを受信したソースを定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
フラグメントおよびシリーズ | ブロックが監視するフラグメント。
これには、選択したオブジェクト(デバイスまたはグループ)に関連付けられたメジャーメントのフラグメントとシリーズのみが表示されます。グループ内のデバイスのメジャーメントは、デバイスが選択されている場合にのみ表示されます(そのグループをソースとして使用するメジャーメントがある場合を除く)。例えば、温度メジャーメントが摂氏で送信される場合、フラグメントは T であり、シリーズは C(Celsius) です。つまり、このパラメーターは T.C または T=>C として設定できます。 |
string | |
タイムスタンプを無視 | これを選択すると、受信アラームのタイムスタンプが無視されます。 注:シミュレーションモードで実行する場合、履歴入力データが使用されるため、タイムスタンプは無視されません |
boolean | デフォルト:False |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | メジャーメントオブジェクトからの数値 | float |
操作入力
apama.analyticskit.blocks.cumulocity.OperationInput
デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Operation オブジェクトを受信します。
ブロックは受信した Operation オブジェクトを並べ替えず、受信した通りに操作を処理します。ブロックは、指定されたステータスまたはプロパティを持つ操作のみを処理するように任意で構成できます。
ブロックからの出力には、Operation オブジェクトのすべてのプロパティが含まれます。プロパティ値は、「プロパティの抽出」ブロックを使用してアクセスできます。 string、boolean または float 型の値を持つプロパティには、「プロパティの抽出」ブロックのプロパティ名を指定することによりアクセスできます。例えば、プロパティの名前が ap_State の場合、「プロパティの抽出」ブロックの「プロパティ パス」パラメーターの値として ap_State を指定します。 プロパティ値のタイプが JSON オブジェクトまたはシーケンスである場合、ネストされた値へのフルパスをプロパティの名前として指定することで、ネストされた値にアクセスできます。 例えば、プロパティの名前が c8y_SpeedMeasurement で、値が { "Speed": { "value": 1234, "unit": "km/h" } }(JSON 形式)の場合、「プロパティの抽出」ブロックの「プロパティパス」パラメーターの値として c8y_SpeedMeasurement.Speed.unit を指定して、単位の値を抽出します。 ブロックの入力ストリームを定義するパラメーターは「入力ソース」です。 注:Operation オブジェクトの変更履歴は保持されないため、インベントリから元のオブジェクトを取得することはできません。このため、この入力ブロックタイプを含むモデルは、シミュレーションモードでは本稼動(Production)とは異なる動作をする可能性があります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | オペレーションが受信したソースを定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
操作名 | ブロックが監視するオペレーションの名前。
指定した場合、Operation オブジェクトには、この名前のプロパティがなければなりません。そうでない場合は無視されます |
string | 任意 |
操作ステータス | 監視するステータス。
指定しない場合、ブロックはあらゆるステータスの操作を監視します。 |
任意:以下のいずれか
|
任意 |
通知モード | 新しい操作のみ、更新された操作、またはすべての操作が処理されるように、Operation イベントをフィルタリングします。デフォルトでは、すべての操作が処理されます | 任意:以下のいずれか
|
デフォルト:すべて |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
操作 | 受信した各 Operation オブジェクトに対してパルス出力を生成します。
Operation オブジェクトのすべてのプロパティは、追加プロパティとして使用できます。「プロパティの抽出」ブロックを使用して、その値にアクセスできます |
pulse |
位置入力
apama.analyticsbuilder.blocks.PositionInput
デバイス、アセット、グループ内のデバイス、またはすべての入力ソースから Event オブジェクトを受信し、c8y_Position フラグメントを Value オブジェクトに抽出します。
c8y_Position フラグメントが存在しない場合、イベントは無視されます。フラグメントに少なくとも有効な緯度と有効な経度が含まれていない場合、イベントは無視されます。「プライマリ値」パラメーターが「属性」に設定されており、フラグメントに属性が含まれていない場合、イベントは無視されます。 緯度は -90 度から 90 度までの範囲にする必要があります。経度は -180 度から 180 度までの範囲にする必要があります。
出力 Value オブジェクトの主な値は、緯度、経度、属性に設定できます。c8y_Position フラグメントのすべてのメンバーが、Value オブジェクトのプロパティ ディクショナリに追加されます。 「タイムスタンプを無視」パラメーターが設定されている場合、ブロックはイベントのタイムスタンプを無視し、受信したメジャーメントをそのまま処理します。それ以外の場合、イベントの順序を変更し、古いメジャーメントを削除します。 ブロックの入力ストリームを定義するパラメーターは「入力ソース」であり、設定されている場合は「イベントタイプ」です。 注:シミュレーションモードで実行される際、履歴入力データが使用されるため、タイムスタンプは無視されません。 注:Event オブジェクトの変更履歴は保持されないため、インベントリから元のオブジェクトを取得することはできません。このため、この入力ブロックタイプを含むモデルは、シミュレーションモードでは本稼動(Production)モードとは異なる動作をする可能性があります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | 位置を受信したソースを定義します。
これは、単一のデバイス、アセット、デバイスのグループを参照または含むオブジェクト、またはすべての入力ソースを指定できます |
any | |
イベントタイプ | ブロックが監視するイベントタイプ。設定しないままにすると、タイプによるフィルタリングは行われません。
別のモデルからイベントを消費するには、このプロパティを設定する必要があります |
string | 任意 |
通知モード | 新しいイベント、更新されたイベント、またはすべてのイベントのみが処理されるように Event イベントをフィルタリングします。
デフォルトでは、すべてのイベントが処理されます。 |
任意:次のいずれか
|
デフォルト:新しいイベントのみ |
タイムスタンプを無視 | これを選択すると、受信メジャーメントのタイムスタンプが無視されます。 注:シミュレーションモードで実行する場合、履歴入力データが使用されるため、タイムスタンプは無視されません |
boolean | デフォルト:False |
プライマリ値 | ブロックによって出力される主な値:緯度、経度、属性、または設定されていない場合は空 | 任意:次のいずれか
|
任意 |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
位置 | 少なくとも緯度と経度を含むオブジェクト | any |
出力
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
アラーム出力 | 事前設定されたアラーム名とパラメーターを使用して、指定されたデバイス、アセット、トリガーデバイス用の新しい Alarm オブジェクトを作成します |
イベント出力 | 指定されたデバイス、アセット、トリガーデバイスのために、新しい Event オブジェクトを作成します |
管理オブジェクト出力 | 指定されたデバイス、アセット、トリガーデバイスの ManagedObject オブジェクトを更新します |
測定出力 | 指定されたデバイス、アセット、トリガーデバイスのために、新しい Measurement オブジェクトを作成します |
操作出力 | 指定されたデバイス、アセット、トリガーデバイスのために、新しい Operation オブジェクトを作成します |
電子メールの送信 | 指定されたメールアドレスにメールを送信します |
SMS を送信 | 指定された電話番号にSMS(ショートメッセージ サービス)を送信します |
アラーム出力
apama.analyticskit.blocks.cumulocity.CreateAlarm
指定されたデバイス、アセット、または事前設定されたアラーム名とパラメーターを使用してトリガーデバイス用に新しい Alarm オブジェクトを作成します。
このブロックは同期出力を生成します。出力ストリームを定義するパラメーターは「出力先」と「アラームタイプ」です。
「アラームの作成」が繰り返し提供されると、アラーム数が増加します(アラームがクリアされていない限り)。重大度またはメッセージが変更された場合、カウントは増加せず、代わりに既存のアラームが変更されます。アラームが確認された場合、アラームのステータスは重大度が増加した場合にのみアクティブになります。既存のアラームを変更するたびにアラームを再アクティブ化するには、「常にアラームをアクティブ化」パラメーターを使用します。 アラーム出力ブロックのデフォルトの動作では、同期出力が生成されます。分析ビルダーのフレームワークは、同期出力の生成時にループを引き起こす可能性のあるモデルを明示的に禁止します。ただし、非同期出力が生成される場合、そのような検証は無効になります。したがって、「非同期出力の作成」パラメーターを使用する場合は、特別な注意が必要です。これにより、モデルの実行中に(同じモデルまたは複数のモデルにわたって)無限ループが発生し、パフォーマンスの低下やアプリケーションのメモリ不足につながる可能性があります。例えば、モデルが特定のタイプのアラーム入力を消費し、同じデバイスに対して同じタイプのアラーム出力を生成すると、ループが発生する可能性があります。モデルによって生成された出力は、同じモデルによって入力として消費され、ループが発生します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力先 | アラームが関連付けられているデバイス(デバイスのグループを処理するモデルの場合、トリガーデバイスまたはアセット)。アセットは、デバイス間の集計の送信にのみ使用できます。
モデル エディタはデバイス名を使用します。これは、内部でデバイス識別子にマッピングされます |
any | |
アラームタイプ | このアラームのタイプを識別します (例:com_cumulocity_events_TamperEvent) |
string | |
メッセージ | アラームがトリガーされた場合に表示されるテキスト。メッセージは、パラメーターまたは入力によって設定されます。両方が設定されていない場合は、モデル名が使用されます。両方を設定することはできません | string | 任意 |
重大度 | アラームの重大度。 重大度は、このパラメーターまたは入力ポートによって設定されます。いずれか 1 つだけを設定する必要があります | 任意:次のいずれか
|
任意 |
パラメーターのフラグメント | このパラメータが設定されている場合、プロパティ入力ポートの受信プロパティが、生成された Alarm 内のこのフラグメントに追加されます。これが設定されていない場合、プロパティは Alarm パラメーターの最上位にコピーされます | string | 任意 |
非同期出力の作成 | 「アラームの作成」または「アラームのクリア」を非同期で実行できるようにします。
非同期出力イベントは、ソースのタイムスタンプを持たず、プラットフォームから受信したときに別のモデルによってのみ時間非同期で使用できるイベントです。 注意:アラーム出力ブロックのデフォルトの動作では、同期出力が生成されます。分析ビルダーのフレームワークは、同期出力の生成時にループを引き起こす可能性のあるモデルを明示的に禁止します。例えば、非同期出力が生成されている場合、そのような検証は無効になります。したがって、「非同期出力の作成」パラメーターを使用する場合は、特別な注意が必要です。これにより、モデルの実行中に(同じモデルまたは複数のモデルにわたって)無限ループが発生し、パフォーマンスの低下やアプリケーションのメモリ不足につながる可能性があります。例えば、モデルがタイプ foo のアラーム入力を消費し、同じデバイスに対してタイプ foo のアラーム出力を生成すると、ループが発生する可能性があります。モデルによって生成された出力は、同じモデルによって入力として再び消費され、ループが発生します。 |
boolean | 任意 |
常にアラームをアクティブ化 | 選択すると、ブロックによって生成されるすべてのアラームがACTIVEに設定されます。デフォルト(未選択)の場合、アラームが確認された場合は、重大度が上昇した場合のみアラームが再アクティブ化されます。
これを選択すると、ブロックによって生成されるすべてのアラームがアクティブに設定されます。デフォルト(未選択)では、アラームが確認された場合、アラームは重大度が増加した場合にのみ再アクティブ化されます |
boolean | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
アラームの作成 | 信号を受信し、重大度の値が設定されている場合にアラームを作成します | pulse |
アラームのクリア | 信号を受信すると、既存のアラームのステータスを「クリア済み」に更新します | pulse |
重大度 | アラームの重大度。重大度の値(警告、マイナー、メジャー、クリティカル)または「クリア済み」のいずれかにする必要があります | string |
メッセージ | アラームのメッセージ | string |
時間 | アラームのタイムスタンプを設定します。接続されていない場合、現在のモデル時間が使用されます | float |
プロパティ | アラームに設定するプロパティ | any |
イベント出力
apama.analyticskit.blocks.cumulocity.CreateEvent
指定されたデバイス、アセット、またはトリガーデバイスのために、新しい Event オブジェクトを作成します。
イベントのテキストは、「テキスト入力」入力ポートまたは「メッセージ」パラメーターによって決まります。両方を設定しないでください。どちらも設定されていない場合は、モデル名がテキストとして使用されます。
このブロックは同期出力を生成します。 ブロックの出力ストリームを定義するパラメーターは、「出力先」と「イベントタイプ」です。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力先 | イベントの送信先のデバイス(デバイスグループを処理するモデルの場合、トリガーデバイスまたはアセット)。アセットは、デバイス間の集計の送信にのみ使用できます。
モデル エディタは現在のデバイス名を使用します。これは、内部でデバイス識別子にマッピングされます |
any | |
イベントタイプ | このイベントのタイプを識別します | string | |
メッセージ | イベントの作成時に表示されるテキスト。
これには、「テキスト入力」入力ポートが接続されていないことが必要です。どちらも設定されていない場合は、モデル名がテキストとして使用されます。 |
string | 任意 |
パラメーターのフラグメント | このパラメーターが設定されている場合、「プロパティ」入力ポートの受信プロパティが生成された Event 内のこのフラグメントに追加されます。これが設定されていない場合、「プロパティ」は Event パラメーターの最上位にコピーされます | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
イベントの作成 | シグナルを受信したときにイベントを作成します | pulse |
テキスト入力 | イベントのテキストを設定します。これを使用する場合、「メッセージ」パラメーターを設定しないでください | string |
時間 | イベントのタイムスタンプを設定します。接続されていない場合、現在のモデル時間が使用されます。 | float |
プロパティ | イベントに設定するプロパティ | any |
管理オブジェクト出力
apama.analyticskit.blocks.cumulocity.ManagedObjectOutput
指定されたデバイス、アセット、またはトリガーデバイスの ManagedObject オブジェクトを更新します。
「プロパティ名」パラメーターが設定されている場合、「値」入力ポート(値が空の場合はそのプロパティ)を使用して、マネージドオブジェクトにそのプロパティが設定されます
「プロパティ名」パラメーターが設定されていない場合、「値」入力ポートのすべてのプロパティがマネージドオブジェクトの更新に使用されます。 注意:マネージドオブジェクトの次の参照プロパティは、このブロックを使用して更新できません: childDeviceIds、childAssetIds、deviceParentIds、assetParentIds このブロックは、時間同期のモデル間通信には参加しません。単一モデルまたは複数のモデルで複数のブロックを使用して、同じデバイスの同じプロパティを更新できます。このブロックによりモデル間のサイクルが形成される可能性があるため、モデルが無限に周期的に実行されないよう注意する必要があります このブロックは非同期出力を生成します。ブロックの出力ストリームを定義するパラメーターは「出力先」です。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力先 | マネージドオブジェクトが関連付けられているデバイス(デバイスグループを処理するモデルの場合、トリガーデバイスまたはアセット)。アセットは、デバイス間集計の送信にのみ使用できます。
モデル エディタは現在のデバイス名を使用します。これは、内部でデバイス識別子にマッピングされます |
any | |
プロパティ名 | 更新するプロパティの名前。
設定されていない場合、「値」入力ポートのプロパティはマネージドオブジェクトの最上位プロパティにマッピングされます |
string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 設定するプロパティの値 | any |
プロパティの更新 | プロパティが更新されることを示します。接続されていない場合、「値」入力ポートからの新しい値ごとにプロパティが更新されます | pulse |
測定出力
apama.analyticskit.blocks.cumulocity.CreateMeasurement
指定されたデバイス、アセット、またはトリガーデバイスのために、新しい Measurement オブジェクトを作成します。
このブロックは、「値」入力ポートの新しいメジャーメントを送信します。「送信」入力ポートが接続されている場合、このブロックは送信信号を受信したときにのみ出力を送信します。メジャーメントは、現在のデバイスまたは指定されたデバイスに送信されます。
このブロックは同期出力を生成します。ブロックの出力ストリームを定義するパラメーターは「出力先」、「フラグメント名」、「シリーズ名」です。 非有限値は無視されます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力先 | メジャーメントを送信するデバイス(デバイスグループを処理するモデルの場合、トリガーデバイスまたはアセット)。アセットは、デバイス間の集計の送信にのみ使用できます。
モデル エディタは現在のデバイス名を使用します。これは、内部でデバイス識別子にマッピングされます |
any | |
フラグメント名 | メジャーメント内のフラグメントの名前 | string | |
シリーズ名 | メジャーメント内のシリーズの名前 | string | |
単位 | メジャーメントの単位の名前(「mm」または「ルクス」など。 | string | 任意 |
パラメーターのフラグメント | このパラメータが設定されている場合、「プロパティ」入力ポートの受信プロパティが、生成された Measurement 内のこのフラグメントに追加されます。これが設定されていない場合、プロパティは Measurement パラメーターの最上位にコピーされます | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 送信されるメジャーメント | float |
送信 | 新しいメジャーメントが作成されることを示します。 接続されていない場合、新しい値を入力するたびにメジャーメントが作成されます | pulse |
時間 | メジャーメントのタイムスタンプを設定します。接続されていない場合、現在のモデル時間が使用されます | float |
プロパティ | メジャーメントに設定するプロパティ | any |
操作出力
apama.analyticskit.blocks.cumulocity.CreateOperationStaticValue
指定されたデバイス、アセット、またはトリガーデバイスのために、新しい Operation オブジェクトを作成します。
操作名、パラメーター名、パラメーター値のいずれのパラメーターも設定されていない場合、操作は「プロパティ」入力ポートを使用して Operation オブジェクトを設定します。
ブロックは、時間同期のモデル間通信には参加しません。複数のブロックを 1 つのモデルまたは複数のモデルで使用して、同じデバイスに対して新しい操作を作成できます。このブロックによりモデル間のサイクルが形成される可能性があるため、モデルが無限に周期的に実行されないよう注意する必要があります。 ブロックは非同期出力を生成します。ブロックの出力ストリームを定義するパラメーターは「出力先」です。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力先 | 操作を送信するデバイス(デバイスグループを処理するモデルの場合、トリガーデバイスまたはアセット)。アセットは、デバイス間の集計を送信する場合にのみ使用できます。
モデル エディタはデバイス名を使用します。これは、内部でデバイス識別子にマッピングされます |
any | |
操作名 | Operation オブジェクトに作成するプロパティの名前 | string | 任意 |
パラメーター名 | 操作のためのパラメーター名 | string | 任意 |
パラメーター値 | 操作のためのパラメーター値 | string | 任意 |
説明 | 作成するオペレーションの説明 | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
操作の作成 | シグナルを受信したときにオペレーションを作成します | pulse |
プロパティ | 操作に設定するプロパティ | any |
電子メールの送信
apama.analyticskit.blocks.cumulocity.Send_Email
指定されたメールアドレスにメールを送信します。
「件名」と「本文」はそれぞれ、パラメーターまたは入力ポートを使用して、両方ではなく、いずれかを使用して指定する必要があります。
注:シミュレーションモードまたはテストモードで実行すると、ブロックはメールを送信する代わりに出力をログに記録します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
件名 | メールの件名 | string | 任意 |
本文 | HTMLとして処理されるメールのテキスト。例えば、改行する場合は <br> タグを使用します | string | 任意 |
返信先 | メールの返信先アドレス | string | 任意 |
送信先 | メールの受信者。カンマで区切られた 1 つ以上のメールアドレス | string | 任意 |
CC | (カーボンコピー)メールのコピーを受信する受信者。カンマで区切られた 1 つ以上のメールアドレス | string | 任意 |
BCC | (ブラインドカーボンコピー)メールのブラインドコピーを受信する受信者。カンマで区切られた 1 つ以上のメールアドレス。「送信先」および「CC」に記載された受信者は「BCC」リストを確認できません | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
送信 | シグナルを受信するとメールを送信します | pulse |
件名 | メールの件名 | string |
本文 | メールの本文 | string |
SMS を送信
apama.analyticskit.blocks.cumulocity.Send_SMS
指定された電話番号に SMS(ショートメッセージ サービス)を送信します
「SMS を送信」入力ポートが接続されている場合、このブロックは信号を受信すると、指定された電話番号に出力を送信します
注:シミュレーションモードまたはテストモードで実行すると、ブロックは SMS を送信する代わりに出力をログに記録しますパラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
電話番号 | SMS の送信先の電話番号 | string | |
本文 | SMS の内容。最大長は 160 文字。「SMS テキスト」入力ポートを使用する場合、このパラメーターを指定しないでください | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
SMS を送信 | SMS の送信をトリガーします | pulse |
SMS テキスト | SMS の内容。接続されていない場合、「本文」パラメーターに内容を指定します | string |
ロジック
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
AND | 入力に対して論理 and を実行します
|
NOT | 入力に対して論理 not を実行します
|
OR | 入力に対して論理 or を実行します
|
AND
apama.analyticskit.blocks.core.And
入力に対して論理 and
を実行します。
接続されているすべての入力が true の場合、出力は true になり、それ以外の場合は false になります。いずれかの入力が pulse タイプの場合、出力は pulse になります。pulse 入力と boolean 入力の任意の組み合わせが有効です。一部の入力が接続されていない場合でも、ブロックは機能します。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 1 | ブロックへの最初の入力値 | boolean |
値 2 | ブロックへの 2 番目の入力値 | boolean |
値 3 | ブロックへの 3 番目の入力値 | boolean |
値 4 | ブロックへの 4 番目の入力値 | boolean |
値 5 | ブロックへの 5 番目の入力値 | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
AND | 入力の論理 and
|
pulseOrBoolean(value1, value2, value3, value4, value5) |
NOT
apama.analyticskit.blocks.core.Not
入力に対して論理 not
を実行します。
接続された入力が true の場合、出力は false になります。接続された入力が false の場合、出力は true になります。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | ブロックに値を入力します | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
NOT | 入力の論理 not
|
boolean |
OR
apama.analyticskit.blocks.core.Or
入力に対して論理 or
を実行します
接続された入力のいずれかが true の場合、出力は true になり、それ以外の場合は false になります。 すべての入力が pulse タイプの場合、出力は pulse になります。 入力は同じタイプである必要があります。 一部の入力が接続されていない場合でも、ブロックは機能します。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 1 | ブロックへの最初の入力値 | boolean |
値 2 | ブロックへの 2 番目の入力値 | boolean |
値 3 | ブロックへの 3 番目の入力値 | boolean |
値 4 | ブロックへの 4 番目の入力値 | boolean |
値 5 | ブロックへの 5 番目の入力値 | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
OR | 入力の論理 or
|
sameAsAll(value1, value2, value3, value4, value5) |
計算
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
超過数カウンター | 指定された方向のしきい値交差の数を検出してカウントします |
差分 | 連続する入力値の差を計算します |
相違 | 接続された入力間の絶対差と符号付きの差を計算します |
方向検出 | 入力値の方向が変化したかどうかを検出します |
式 | 式を評価して、算術計算、論理計算、または文字列操作を実行します |
ベース N から | 基数 N の文字列を float に変換します |
KPI | 値を KPI(主要業績評価指標)またはデバイス、アセット、デバイスグループのデータポイントと比較します |
限度 | 定義された上限値と下限値の範囲内に収まる値を出力します |
範囲 | 入力値を定義された範囲の下限値および上限値と比較して、入力が範囲内か範囲外か、または範囲を超えているかどうかを検出します |
範囲参照 | 入力値が含まれる範囲を検索します |
丸め | 選択可能なルールを使用して、入力を指定された小数点以下の桁数または整数に丸めます |
しきい値 | 入力値を定義されたしきい値と比較して、入力がしきい値に違反しているかどうか、またはしきい値を超えているかどうかを検出します |
ベース N へ | float を基数 N の文字列に変換します |
超過数カウンター
apama.analyticskit.blocks.core.CrossingCounter
指定された方向のしきい値交差の数を検出してカウントします。
超過は、しきい値の一方の側から、もう一方の側への入力値の変化として定義されます(より小さいからより大きい、またはその逆)。
ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、無制限のウィンドウが使用されます。「リセット」入力ポートは、ウィンドウの内容をクリアします。
ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値の時間は最も近いバケット間隔の近似値となります。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
しきい値 | この値は入力値と比較されます | float | デフォルト:0.5 |
方向 | しきい値の交差をチェックする方向: 上方向、下方向、または両方向のいずれで交差を検出するかどうか | 任意:次のいずれか
|
|
ウィンドウ期間(秒) | 存在する場合、値をウィンドウ内に保持する時間(秒単位)。
これは、有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 交差を検出するための入力値 | float |
リセット | 交差の数をリセットします | pulse |
サンプル | 現在の値の再評価を強制し、出力を送信します | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
超過数 | 超過点の数 | float |
超過 | 超過が検出されるとパルスを送信します | pulse |
差分
apama.analyticskit.blocks.core.Delta
連続した入力値の差を計算します。
ブロックは、少なくとも 2 つの入力値を取得した後に出力を生成します。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 差分を計算する値 | float |
リセット | ブロックの状態をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
差分値 | 差分値 | float |
相違
apama.analyticskit.blocks.core.Difference
接続された入力間の絶対差と符号付きの差を計算します。
両方の入力が値を受け取った場合にのみ、出力を生成します。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 1 | ブロックへの最初の入力 | float |
値 2 | ブロックへの 2 つ目の入力 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
絶対的な相違 | 入力の絶対差 | float |
署名された相違 | 入力の符号付き差。値 1 の入力が値 2 の入力より大きい場合は正 | float |
方向検出
apama.analyticskit.blocks.core.DirectionDetector
入力値の方向が変化したかどうかを検出します。
方向の変化と最後の重要な変曲点を出力します。変化が定義されたヒステリシス値より小さい場合は、小さな変化は無視されます。同じ値を繰り返し入力しても無視されます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ヒステリシス | 方向が変わった時点から入力値が定義されたヒステリシス値だけ変化する場合にのみ、方向の変化をカウントします。
ゼロ(すべての方向変化がカウントされることを意味する)、または正の数値のいずれかでなければなりません |
float | デフォルト:0.0 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 方向の変化を検出する数値 | float |
リセット | ブロックの状態をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
上向きの方向 | 入力値が上方向に変化する場合は true、それ以外の場合は false です | boolean |
変曲点 | ブロックによって検出された最後の変曲点 | float |
式
apama.analyticskit.blocks.core.Expression
式を評価して算術計算、論理計算、または文字列操作を実行します。
入力値が変更されると(使用中の入力がすべて受信された後)、パラメーターで指定された式が再計算されます。
式言語は EPL によく似ています(EPLリファレンス 参照)。ただし、float(浮動小数点)、integer(整数)、string(文字列)、boolean(ブール値)タイプに制限されます。 注記:すべての数値リテラルは、小数部分がない場合でも、float タイプの値として扱われます。整数値は、floor() などの関数の結果としてのみ取得できます。EPL と同様に、integer と float は式内で暗黙的に変換できません。式の結果が integer 値の場合、自動的に float に変換されます(精度が失われる可能性があります)。 ブール値は、ブール リテラル true および false を使用して指定できます。ブール リテラルでは大文字と小文字が区別されないため、例えば、TRUE と True が許可されます。文字列値は、文字列リテラルをダブルクォーテーションで囲むことによって指定できます(例:"my value")。特殊文字は、バックスラッシュ(\)でエンコードされます。次の特殊文字(エンコーディングも含む)が、文字列リテラルでサポートされています。- ダブルクォーテーション: \"
- バックスラッシュ: \\
- 改行: \n
- タブ: \t
float、integer、string、boolean タイプの組み込みメソッドを呼び出すことができます。 これには、x.abs()(xの絶対値)、x.pow(y)(x の y 乗)、x.sin()(ラジアン単位の x のサイン)、x.round()(四捨五入、x を最も近い整数に変換します)、s.ltrim()(文字列 s の先頭から空白を削除します)が含まれます。
サポートされているタイプの組み込み静的メソッドは、タイプ名に続いてドット(.)とメソッド名を指定することで呼び出すことができます(例:float.max(input1, input2)(2 つの入力値のうち大きい方を見つけます)。
サポートされているタイプの組み込み定数にアクセスするには、タイプ名に続けてドット(.)と定数名を指定します(例:float.E(オイラー定数)
any タイプの値は、式を評価するために実行時に解凍されます。解凍後の値は、float、string、boolean タイプである必要があります。 タイプチェッカーは検証フェーズ中に式を検証しようとしますが、これは any タイプでは常に可能であるとは限りません。そのため、式に any が含まれている場合、検証フェーズを通過したとしても、間違ったタイプの変数が渡されたり、サポートされていない操作が実行されたりするため、実行時に失敗する可能性があります。組み込みメソッドと定数の完全なリストについては、API リファレンス (EPL (ApamaDoc) を参照してください。 例:
- 華氏を摂氏に変換: (input1 - 32) * 5/9
- 日を秒に変換: input1 * 86400
- 4つの入力の平均: (input1 + input2 + input3 + input4) / 4
- しきい値比較: input1 > 3.1412 (ただし、しきい値ブロック 参照)
- ピタゴラスの定理で直角三角形の斜辺を計算: (input1.pow(2) + input2.pow(2)).sqrt()
- 小数点以下 3 桁まで比較: (input1 * 1000 - (input1 * 1000).fractionalPart()) = (input2 * 1000 - (input2 * 1000).fractionalPart())
- 範囲チェック: input1 >= 1 and input1 <= 10
- 文字列比較: input1 = "my value"
- 大きい値: float.max(input1, float.PI)
- 整数の除算の余り: input1.round() % input2.round()
- 整数値の左シフト: input1.round() << 4.round()
- 整数値の右シフト: input1.round() >> 2.round()
- 整数値のビット単位の否定: not input1.round()
- 整数値のビット単位の OR: input1.round() or input2.round()
- 整数値のビット単位の AND: input1.round() and input2.round()
- 整数値のビット単位の XOR: input1.round() xor input2.round()
- 文字列と非文字列の連結: "現在の温度は" + input1 + "度です"
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
式 | 式: EPL 式の文字列表現
EPL 式に似ていますが、上記のような違いがあります |
string |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
input1 | 式の input1 として使用される最初の入力 | any |
input2 | 2 番目の入力。式のinput2として使用されます | any |
input3 | 3 番目の入力。式の input3 として使用されます | any |
input4 | 4 番目の入力。式の input4 として使用されます | any |
input5 | 5 番目の入力。式の input5 として使用されます | any |
出力ポートの詳細
名前 | 説明 | 型 |
---|---|---|
結果 | 式の結果 | any |
ベース N から
apama.analyticsbuilder.blocks.FromBaseN
基数 N の文字列を浮動小数点数に変換します。
入力文字列は、2 ~ 36 の任意の整数基数で指定できます。英語のアルファベットの文字は、10 を超える基数の数字として使用されます。一般的な基数は、2(2 進数)、8(8 進数)、10(10 進数)、16(16 進数)です。変換される数値には、基数を含めることができます。
任意の 2 つの塩基間の変換は、このブロックを、「ベース N へ」ブロックと連結することで実現できます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ベース | 2 ~ 36 の範囲の入力ストリームの基数 | integer | デフォルト:16 |
基数文字 | 基数点として使用する文字。ドットまたはカンマであることが期待されます | 任意:次のいずれか
|
デフォルト:ドット |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
ベース N | 基数 N の文字列入力 | string |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
浮動小数点 | 数値出力 | float |
KPI
apama.analyticskit.blocks.cumulocity.KPI
値を KPI(主要業績評価指標)またはデバイス、アセット、デバイスグループのデータポイントと比較します
このブロックは、「KPI」入力ポート、またはデータポイントを含むデバイス、アセット、デバイスグループからのデータを使用します。単位、ラベル、赤と黄色の範囲を抽出します。出力は、値が KPI またはデータポイントで指定された赤または黄色の範囲内にあるかどうかを示します。
KPI 入力は、通常は KPI マネージドオブジェクトから、赤と黄色の範囲、単位、ラベルなどのプロパティを提供できます。デバイスに指定されたフラグメントおよびシリーズのデータポイントが含まれている場合、データポイントの値が KPI の値を上書きします。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力ソース | データポイントを含むデバイス、グループ、またはアセット。指定された場合、このソース(通常はメジャーメント ソースと同じ)に、指定されたフラグメントとシリーズのデータポイントが含まれているかが確認されます。データポイントが含まれている場合、ソース オブジェクトの赤と黄色の範囲値が KPI 値の代わりに使用されます。
KPI ブロックの場合、このパラメーターを「すべての入力」に設定しないでください。 |
any | 任意 |
データポイントのフラグメントとシリーズ | このパラメーターは、「入力ソース」パラメーターが指定されている場合に指定する必要があります。ソース オブジェクトからのデータポイントを指定します。これは通常、メジャーメント ソースのフラグメントおよびシリーズと同じです。
「データポイントのフラグメントとシリーズ」は、fragment.seriesとして指定する必要があります。 |
string | 任意 |
黄色の範囲の上部端は除外 | 設定すると、黄色の範囲の上限は含まないものとして扱われます | boolean | デフォルト:False |
赤い範囲の上部端は除外 | 設定すると、赤い範囲の上限は含まれないものとして扱われます | boolean | デフォルト:False |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 定義された範囲と比較する数値 | float |
KPI | c8y_Kpiプロパティを含むオブジェクト | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
赤 | 値が赤色の範囲内にある場合(赤色の範囲が定義されている場合)、true に設定されます | boolean |
黄色 | 値が黄色の範囲にある場合(黄色の範囲が定義されている場合)、true に設定されます | boolean |
単位 | データポイントからの単位名 | string |
ラベル | データポイントからのラベル名 | string |
限度
apama.analyticsbuilder.blocks.Limit
定義された上限値と下限値の範囲内に収まる値を出力します。
入力値は、出力が「下限」パラメーターと「上限」パラメーターで定義された境界を超えないように制限されます。入力がいずれかの制限に違反する場合、出力はパラメーター値に設定され、それ以外の場合は値が変更されずに渡されます。
いずれかの制限を指定することのみが必須です。この場合、入力は指定されたパラメーターの方向にのみ制限されます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
上限 | この値を超える入力があると、出力はこの値に制限されます | float | 任意 |
下限 | この値を下回る入力があると、出力はこの値に制限されます | float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 入力値 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
出力 | 「下限」パラメーターと「上限」パラメーターで定義された制限内にある場合の入力値。入力値がいずれかの制限パラメーターを超える場合、そのパラメーターの値に設定されます | float |
範囲
apama.analyticsbuilder.blocks.Range
入力値を定義された範囲の下限値および上限値と比較して、入力が範囲内か範囲外か、または範囲を超えているかどうかを検出します。
デフォルトでは、範囲には下限範囲の値が含まれますが、上限範囲の値は含まれません。例えば、下限範囲が 100、上限範囲が 200 の場合、100 ~ 199 のすべての値が範囲内になります。200 は範囲外とみなされます。
定義された範囲を超えるとパルスが送信されます。つまり、範囲の下限または上限を超えた場合、または値が範囲内に入らずに範囲の下から範囲を超えた(またはその逆)場合です。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
範囲の下限値 | 範囲の下限値 | float | 任意 |
範囲の下限値を含む | 選択すると、下限範囲に等しい入力値が考慮され、範囲内か範囲外かを識別します。選択しない場合、下限範囲に等しい入力値は考慮されません | boolean | デフォルト:True |
範囲の上限値 | 範囲の上限値 | float | 任意 |
範囲の上限値を除外 | 選択すると、上限範囲に等しい入力値は、範囲内か範囲外かを識別するために考慮されません。選択しない場合、そのような入力値は範囲内か範囲外かを識別するものとみなされます | boolean | デフォルト:True |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 定義された範囲に対して検証する入力値 | float |
リセット | ブロックの状態をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
範囲外 | 入力値が定義された範囲内にない場合、true に設定されます | boolean |
範囲内 | 入力値が定義された範囲内にある場合、true に設定されます。 | boolean |
超過 | 範囲を超えるとパルスを送信します | pulse |
範囲参照
apama.analyticskit.blocks.core.RangeLookup
入力値が含まれる範囲を検索します。
範囲は、一意の上限値の昇順リストを使用して定義されます。最初の範囲の下限は、「最小値」パラメーターの値によって異なります。後続の各範囲の下限は、前の範囲の上限によって定義されます。境界値と等しい入力値が属する範囲は、「上限を除く」パラメーターによって異なります。このブロックは、入力が含まれる範囲のマッピングされた値を出力するか、入力値がどの範囲にも入っていない場合は失敗フラグを出力します。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
最小値 | 最初の範囲(最初の行)の下限。何も指定しない場合、負の無限大が最小値として扱われます | float | 任意 |
範囲 | 入力値を検索する範囲の上限の境界とマッピング値のペア、および入力値が範囲内にある場合に出力値として使用されるマッピング値です | 上限値とマッピングされた値のリスト | |
上限を除く | これを選択すると、行の上限に等しい入力値が次の行の範囲の一部とみなされます。選択されていない場合、そのような入力値は現在の行の範囲の一部とみなされます | boolean | デフォルト:True |
タイプ | 出力値に使用されるタイプ | 任意:次のいずれか
|
任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 範囲を求める入力値 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
マッピング済み | 一致する範囲のマッピング値 | any |
失敗 | 入力がどの範囲にも収まらない場合に true になります。それ以外の場合は false です | boolean |
丸め
apama.analyticskit.blocks.core.Rounding
選択可能なルールを使用して、入力を指定された小数点以下の桁数または整数に丸めます。
数値を四捨五入するとは、ほぼ等しいが、より短く単純な表現を持つ別の値に置き換えることを意味します。
使用できるルールは、次の通りです。- 切り上げ(上限を取る、またはプラスの無限大に向かって丸める): 入力を最も近いターゲット数値に切り上げます。
- 切り捨て(下限を取る、またはマイナスの無限大に向かって丸める): 入力を最も近いターゲット数値に切り下げます。
- ゼロ方向(切り捨てる、または無限大から離れる方向に丸める): 入力値をゼロ方向に最も近いターゲット数値に丸めます。
- 四捨五入(半分を切り上げる、または半分をプラスの無限大方向に丸める): 最も近いターゲット数値に丸めます。最も近い 2 つのターゲット数値から等距離にある数値は、常に切り上げられます。例えば、値 23.5 は 24 に四捨五入されますが、-23.5 は -23 に四捨五入されます。
- 偶数または直近: 最も近いターゲット数値に丸めます。2 つの最も近いターゲット数値から等距離にある数値は、常に最も近い偶数のターゲットに丸められます。例えば、0.5 は 0 に切り捨てられ、1.5 は 2 に切り上げられます。銀行丸めとも呼ばれます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ルール | 適用される丸めルール | 任意:次のいずれか
|
|
小数点数 | 入力を四捨五入する小数点以下の桁数 | integer | デフォルト:0 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 四捨五入される入力値 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
丸め値 | 指定された小数点以下の桁数または整数に四捨五入された入力値 | float |
しきい値
apama.analyticskit.blocks.core.Threshold
入力値を定義されたしきい値と比較して、入力がしきい値に違反しているかどうか、またはしきい値を超えているかどうかを検出します。
方向が「上」に設定され、入力値が定義されたしきい値より大きい場合、または方向が「より小さい」に設定され、入力値が定義されたしきい値より小さい場合、違反が発生します。方向が「以上」に設定されて入力値が定義されたしきい値以上の場合、または方向が「以下」に設定されて入力値が以下の場合、定義されたしきい値に達します。
定義されたしきい値を任意の方向から超えると、パルスが送信されます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
しきい値 | この値は入力値と比較されます | float | |
方向 | 調べる方向: 入力値が定義されたしきい値より上か、下か、または等しいか、または定義されたしきい値を超えているか | 任意:次のいずれか
|
デフォルト:上 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 定義されたしきい値と比較する入力値 | float |
リセット | ブロックの状態をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
違反されたしきい値 | しきい値に違反すると、true に設定されます | boolean |
しきい値内 | しきい値を超えていない場合、true に設定されます | boolean |
超過したしきい値 | しきい値を超えたときにパルスを送信します | pulse |
ベース N へ
apama.analyticsbuilder.blocks.ToBaseN
float を基数 N の文字列に変換します。
出力文字列は、2 ~ 36 の任意の整数基数で指定できます。英語のアルファベットの文字は、10 を超える基数の数字として使用されます。一般的な基数は、2(2 進数)、8(8 進数)、10(10 進数)、および 16(16 進数)です。変換される数値には、基数を含めることができます。出力は、基数 16 桁の最大精度で計算されます。
任意の 2 つの塩基間の変換は、このブロックを「ベース N から」ブロックと連結することで実現できます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
出力ベース | 2 ~ 36 の範囲の出力ストリームの基数 | integer | デフォルト:16 |
基数文字 | 基数点として使用する文字。ドットまたはカンマであることが期待されます | 任意:次のいずれか
|
デフォルト:ドット |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
浮動小数 | 数値入力 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
ベース N | 基数 N の文字列出力 | string |
集約
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
平均値 (平均) | 時間の経過に伴う値の平均を計算します |
カウンター | 合計入力数と繰り返された入力数を示します |
個別統計 | 離散入力値の合計、カウント、平均(平均)、標準偏差、最小値と最大値の統計を生成します |
勾配 | 値の加重線形回帰勾配を計算します |
グループ統計 | ブロックが入力値を受け取ったグループ内のすべてのデバイスにわたって、定期的な集計値を生成します |
インテグラル | 時間の経過に伴う入力値の積分を計算します |
最小値 / 最大値 | 時間の経過に伴う値の最小値と最大値を計算します |
標準偏差 | 時間の経過に伴う値の標準偏差と分散を計算します |
平均値 (平均)
apama.analyticskit.blocks.core.Mean
時間の経過に伴う値の平均を計算します
このブロックは、不規則にサンプリングされた場合でも、連続値に適しています。入力またはサンプル間の時間は重要ですが、サンプル数は重要ではありません。このブロックは、例えば、入力が定期的または不定期にサンプリングされる温度などの物理的特性である場合に使用します(温度の変化に応じてメジャーメントのみを生成する場合など)。チケット販売など、メジャーメント数は重要ですが、測定間の時間は重要ではない独立した測定には、「平均値 (平均)」ブロックの代わりに「個別統計」ブロックを使用します。
平均は、入力の値の合計に、オプションのウィンドウ内で入力がその値に留まっていた時間を乗算し、ウィンドウ期間またはブロックの開始または最後にリセットされてからの時間のいずれか小さい方で割ったものとして定義されます。 ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、ブロックは無制限のウィンドウを使用します。「リセット」入力ポートは、ウィンドウの内容をクリアします。出力は、新しい入力に対して生成されます。または、「出力しきい値」パラメーターが設定されている場合、出力が指定された出力しきい値を超えて変化した場合にのみ生成されます(それ以上入力が発生しない場合、または古いエントリの期限切れによってのみ値が変化する場合も含まれます)。「サンプル」入力ポートを使用して、再評価を強制し、最新の値を生成できます。 このブロックからの出力の頻度と、ウィンドウ内の値の動作の詳細と例については、分析ビルダー ドキュメントの「値のタイプ」トピックを参照してください。 ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値はバケット全体の平均値の近似値になります。 注:「平均値 (平均)」ブロックは、個々のデバイスの平均を生成します。入力が複数のデバイスからのものである場合、平均はそのグループ内のデバイスごとに個別に生成されます。グループ全体(個々のデバイスではなく)の集計値を計算して生成するには、「グループ統計」ブロックを使用します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
出力しきい値 | 存在する場合、少なくともこの値だけ変化した時点で出力が送信されます。
これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 平均を計算する入力 | float |
リセット | ウィンドウの内容をクリアします | pulse |
サンプル | 現在の平均値の再評価を強制し、出力を送信します | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
平均値 | 値の合計にその値を維持する時間を乗算し、合計時間を割った値 | float |
カウンター
apama.analyticskit.blocks.core.Counter
合計入力数と繰り返された入力数を示します。
2 つの連続する入力値のタイプが異なる場合、それらは繰り返し値として評価されません。たとえば、float 値 1.0は、整数値 1 の繰り返しとして評価されません。2 つの値が互いに等しいかどうかに関する他のすべての評価は、EPL と同じルールに従います。詳細については、タイプ を参照してください。
各カウントの最大値は、個別に指定できます。デフォルトでは、各カウンターは最大値に達した後の最初の入力をカウントし、1 に戻ります。これは、例えば、n 番目の入力ごとにアクションをトリガーしたい場合や、入力が予想よりも頻繁に繰り返された場合などに便利です。また、各カウンターが最大値に達したら停止するように設定することもできます。このモードでは、カウントをリセットするには「リセット」入力ポートへのパルスが必要ですが、これは両方のカウンターを同時にリセットします。この二重リセットが問題となる場合は、各カウントを個別に処理するために、別々の「カウンター」ブロックを使用する必要があります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
最大数 | 「数」出力ポートが取り得る最大値。負の値またはゼロは、float.MAX (~2e308) として解釈されます。これは、「数」出力ポートにのみ影響します。カウンターがループしている場合、n 番目 の入力ごとにアクションをトリガーするのに便利です。 | float | デフォルト:0.0 |
ループ数 | 選択すると、「数」出力ポートは最大値を超えたときに 1 にリセットされます。選択しない場合、最大値に達した時点でカウンターはカウントを停止し、手動でリセットする必要があります。これは、「数」出力ポートにのみ影響します。 | boolean | デフォルト:True |
最大数が同じ | 「数が同じ」出力ポートが取り得る最大値。負の値またはゼロは float.MAX (~2e308) として解釈されます。これは「数が同じ」出力ポートにのみ影響します。これは、GPS メジャーメントにおける位置など、値が予想外に長い時間にわたって静止しているかどうかを評価する場合に役立ちます。 | float | デフォルト:0.0 |
ループ数が同じ | 選択すると、「数が同じ」出力ポートは最大値を超えたときに 1 にリセットされます。選択しない場合、最大値に達した時点でカウンターのカウントが停止し、手動でリセットする必要があります。これは、「数が同じ」出力ポートにのみ影響します。 | boolean | デフォルト:True |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | カウントされる入力 | any |
リセット | 両方のカウンターをリセットします | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
数 | すべての入力の合計数 | float |
数が同じ | 同じ値が繰り返された入力の現在の数。
値を変更すると、これは 1 にリセットされます。 |
float |
個別統計
apama.analyticsbuilder.blocks.DiscreteStatistics
離散入力値の合計、カウント、平均値 (平均)、標準偏差、最小値と最大値の統計を生成します。
このブロックは、サンプル(または入力)の数が重要である一方で、サンプル間の時間は重要ではない離散時間入力に適しています。「平均値 (平均)」ブロックと「標準偏差」ブロックは、温度メジャーメントなど、不規則にサンプリングされる可能性のある連続値に適しています。例えば、各サンプルが販売されるチケットなどのトランザクションを表す場合は、このブロックを使用します。
「サンプル」入力ポートが接続されていない場合、すべての値がサンプリングされます。リセットと同じアクティブ化期間中に新しい値を受信した場合、その値はリセット後にサンプリングされます。それ以外の場合は無視されます。すべての値が使用されるため、標準偏差には一般的な公式 σ² = ∑(x - µ)² / N が使用されます。 「サンプル」入力ポートが接続されている場合、ブロックは「サンプル」入力ポートが信号を受信したときにのみデータをサンプリングします。この場合、サンプリング標準偏差には次の式が使用されますます。σ² = ∑(x - µ)² / (N-1) リセット信号とサンプル信号が一緒に受信された場合、リセットが最初に処理されます。入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 現在の値 | float |
サンプル | 統計の生成に現在の値を使用します。接続しないままにすると、すべての値が使用されます | pulse |
リセット | ブロックの状態をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
合計 | サンプリングされた入力値の合計 ∑x | float |
数 | サンプリングされた入力値の数 N | float |
平均値 | サンプリングされた入力値の平均値 (平均) µ = ∑x / N | float |
標準偏差 | サンプリングされた入力値の標準偏差。「サンプル」入力ポートが接続されていない状態ですべての値がサンプリングされている場合は、一般的な標準偏差 σ² = ∑(x - µ)² / N が使用されます。それ以外の場合は、サンプリング標準偏差 σ² = ∑(x - µ)² / (N-1) が使用されます | float |
最小値 | サンプリングされた入力値の最小値 | float |
最大値 | サンプリングされた入力値の最大値 | float |
勾配
apama.analyticskit.blocks.core.Gradient
値の加重線形回帰勾配を計算します。
勾配は、時間の経過に伴う値の変化率を測定します。正の勾配は入力値の増加を示し、負の勾配は入力値の減少を示します。勾配の大きさは変化の規模を表します。
ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、無制限のウィンドウが使用され、ブロックは 1 秒ごとに再評価され、1 秒のバケットが使用されます。ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値の時間は最も近いバケット間隔の近似値となります。最初の勾配出力は、少なくとも 2 つのバケットが計算に利用できる場合にのみ生成されます。 「リセット」入力ポートは、ウィンドウの内容をクリアします。「サンプル」入力ポートを使用して再評価を強制し、最新の値を生成できます。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 勾配を計算する入力値 | float |
リセット | ウィンドウの内容をクリアします | pulse |
サンプル | 現在の値の再評価を強制し、出力を送信します | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
勾配 | 入力値の勾配 | float |
グループ統計
apama.analyticskit.blocks.core.GroupStatistics
ブロックが入力値を受け取ったグループ内のすべてのデバイスにわたって、定期的な集計値を生成します。
このブロックは、次の集計値を生成します。
- 最小値
- 最大値
- デバイス数
- 平均値
- 標準偏差
- 差異
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
出力期間(秒) | 各出力間の時間(秒単位)。
これは有限の正の数でなければなりません |
float | デフォルト:5.0 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 集計値を計算する入力値 | float |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
最小値 | グループ内のすべてのデバイスにわたる最小の入力値(負の無限大に最も近い値) | float |
最大値 | グループ内のすべてのデバイスにわたる最大の入力値(正の無限大に最も近い値) | float |
デバイス数 | これまでに入力値を受信したグループ内のデバイスの数 | float |
平均値 | 値の合計にその値を維持する時間を乗算し、合計時間とデバイス数で割った値 | float |
標準偏差 | グループ内のすべてのデバイスにわたる入力値の標準偏差 | float |
差異 | グループ内のすべてのデバイスにわたる入力値の分散 | float |
インテグラル
apama.analyticskit.blocks.core.Integral
時間の経過に伴う入力値の積分を計算します。
積分は、ブロックが開始されたか最後にリセットされてから、オプションのウィンドウ内で入力がその値に留まっていた時間を乗算した入力値の合計として定義されます。
ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、無制限のウィンドウが使用されます。「リセット」入力ポートは、ウィンドウの内容をクリアします。出力は、新しい入力に対して生成されます。または、「出力しきい値」パラメーターが設定されている場合、出力が指定された「出力しきい値」を超えて変化したときのみ生成されます(これには、それ以上入力が発生しない場合、または古いエントリの期限切れによってのみ値が変化する場合も含まれます)。「サンプル」入力ポートを使用して再評価を強制し、最新の値を生成できます。 ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値はバケット全体の平均値の近似値となります。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
出力閾値 | 存在する場合、少なくともこの値を超えて変化したときに送信される出力。
これは有限で正の数である必要があります。 |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 積分を計算する入力 | float |
リセット | ウィンドウの内容をクリアします | pulse |
サンプル | 現在の積分値の再評価を強制し、出力を送信します | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
整数値 | 値にその値が維持される時間を乗算した合計 | float |
最小値 / 最大値
apama.analyticskit.blocks.core.MinMax
時間の経過に伴う値の最小値と最大値を計算します。
最小値はウィンドウ内の入力値の最小値(負の無限大に最も近い)として定義され、最大値はウィンドウ内の入力値の最大値 (正の無限大に最も近い) として定義されます。
ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、ブロックは無制限のウィンドウを使用します。「リセット」入力ポートはウィンドウの内容をクリアします。出力は、現在の最小値または最大値を超える新しい入力、または「ウィンドウ期間(秒)」パラメーターが設定されている場合は、以前の最小値または最大値の期限が切れたときに生成されます。 ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値の時間は最も近いバケット間隔の近似値になります。 注:「最小値 / 最大値」ブロックは、個々のデバイスの最小値と最大値を生成します。入力がデバイスのグループからのものである場合、これらの値はそのグループ内のデバイスごとに個別に生成されます。グループ全体(個々のデバイスではなく)の集計値を計算して生成するには、「グループ統計」ブロックを使用します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 最小値と最大値を計算する入力 | float |
リセット | ウィンドウの内容をクリアします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
最小値 | ウィンドウ内の最小値(負の無限大に最も近い値) | float |
最大値 | ウィンドウ内の最大値(正の無限大に最も近い値) | float |
標準偏差
apama.analyticskit.blocks.core.StandardDeviation
時間の経過に伴う値の標準偏差と分散を計算します。
このブロックは、不規則にサンプリングされた場合でも、連続値に適しています。入力またはサンプル間の時間は重要ですが、サンプル数は重要ではありません。このブロックは、例えば、入力が定期的または不定期にサンプリングされる温度などの物理的特性である場合(温度の変化に応じてメジャーメントのみを生成する場合など)に使用します。チケット販売など、メジャーメント数は重要ですが測定間の時間は重要ではない独立したメジャーメントには、「標準偏差」ブロックの代わりに「個別統計」ブロックを使用します。
標準偏差は、一連のデータ値の変動または分散の量を定量化するために使用される尺度です。標準偏差が低いことは、データポイントがセットの平均に近い傾向があることを示し、標準偏差が高いことは、データポイントがより広い範囲の値に分散していることを示します。 ブロックは、「ウィンドウ期間(秒)」パラメーターで指定された時間制限されたウィンドウにわたって動作できます。このパラメーターが指定されていない場合、ブロックは無制限のウィンドウを使用します。「リセット」入力ポートはウィンドウの内容をクリアします。「サンプル」入力ポートを使用して、再評価を強制し、最新の値を生成できます。出力は新しい入力に対して生成されます。または、「ウィンドウ期間(秒)」パラメーターが設定されている場合は、ウィンドウに追加される新しいバケットごとに出力が定期的に生成されます。 ウィンドウが構成されている場合、ブロックは 20 個のバケットのセットを使用するため、期限切れ値の時間は最も近いバケット間隔の近似値になります。 注:「標準偏差」ブロックは、個々のデバイスの標準偏差と分散を生成します。入力がデバイスのグループからのものである場合、これらの値はそのグループ内のデバイスごとに個別に生成されます。グループ全体(個々のデバイスではなく)の集計値を計算して生成するには、「グループ統計」ブロックを使用します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ウィンドウ期間(秒) | 存在する場合、値がウィンドウ内に保持される時間(秒単位)。
これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 標準偏差と分散を計算する入力 | float |
リセット | ウィンドウの内容をクリアします | pulse |
サンプル | 現在の値の再評価を強制し、出力を送信します | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
標準偏差 | 入力値の標準偏差 | float |
差異 | 入力値の分散 | float |
フロー操作
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
結合要素 | 選択されたモードと接続された入力に基づいて出力を計算します |
ゲート | ゲートが開いていて有効になっていない限り、入力が出力に送られるのをブロックします |
ラッチ値 | ブロックが有効になっている間に受信した最新の入力値をラッチします |
パルス | 非パルス入力をパルス出力に変換します |
セレクター | どの入力ポートが true 値を持つかに応じてパラメーター値を出力し、最小値が優先されます |
スイッチ | 指定された入力から値を出力するか、サーキット ブレーカーとして機能します |
時間遅延 | 指定された時間だけ入力を遅らせます |
結合要素
apama.analyticskit.blocks.core.Combiner
選択したモードと接続された入力に基づいて、出力を計算します。
利用可能なモードは、次の通りです。
- 最小値:
値を受け取った接続された入力の最小値を出力します。すべての数値リテラルは、float タイプとして扱われます。 - 最大値:
値を受け取った接続された入力の最大値を出力します。すべての数値リテラルは、float タイプとして扱われます。 - 平均値(平均):
値を受け取った接続された入力の平均値(平均)を出力します。すべての数値リテラルは、float タイプとして扱われます。 - 最新更新値:
最後に変更された値を出力します。1 回のアクティブ化で複数の値が変更される場合、最も大きい番号の入力ポートが使用されます。例えば、値 1 と値 2 が更新された値を取得した場合、値 2 が出力用に選択されます。入力は同じタイプである必要があります。「最新更新値」モードを使用するときに、実際の値が変更されない場合、値は変更されたとはみなされません。例えば、温度センサーで「最新更新値」モードを使用すると、温度が最後に変更されたセンサー値が出力されます。 - 最新の入力:
実際の値が変更されていない場合でも、最新の入力値を出力します。1 回のアクティブ化で複数の値が更新される場合、最も大きい番号の入力ポートが使用されます。例えば、さまざまな間隔で定期的に温度を測定するセンサーが多数あり、それらすべてのセンサーでブロックが受信した最新の温度を取得したい場合、「結合要素」ブロックを「最新の入力」モードで使用できます。これにより、センサーが同じ温度を測定して公開した場合でも、最新の公開温度が提供されます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
モード | 選択されるモード | 任意:次のいずれか
|
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 1 | ブロックへの最初の入力値 | any |
値 2 | ブロックへの 2 番目の入力値 | any |
値 3 | ブロックへの 3 番目の入力値 | any |
値 4 | ブロックへの 4 番目の入力値 | any |
値 5 | ブロックへの 5 番目の入力値 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
組み合わされた値 | 計算された結合値 | sameAsAll(value1, value2, value3, value4, value5) |
ゲート
apama.analyticskit.blocks.core.Gate
ゲートが開いていて有効になっていない限り、入力が出力に送られるのをブロックします。
「有効化」入力ポートが接続されている場合、ブロックは無効で開始されます。それ以外の場合、ブロックは常に有効になります。「開く」入力ポートが接続されている場合、ブロックは閉じて開始され、そうでない場合、ブロックは開き始めます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
Null 値 | ゲートが無効または閉じている場合に、出力値として使用する値。
値の正確なタイプは、「Null 値型」パラメーターによって異なります。「Null 値型」パラメーターが指定されている場合、「文字列」値は指定されたタイプとして解析されます。「Null 値型」パラメーターが指定されておらず、値が「浮動小数 (float)」または「ブール値 (boolean)」に解析可能な場合、対応する値のタイプに解析されます。それ以外の場合は、「文字列」値として使用されます |
string | 任意 |
Null 値型 | 「Null 値」パラメーターで指定された値のタイプ。指定した場合、Null 値は指定されたタイプに解析されます | 任意:次のいずれか
|
任意 |
閉鎖期間(秒) | クローズ信号を受信したときにゲートを閉じる時間(秒単位)。
パラメーターが指定されていない場合、クローズ信号を受信した後、オープン信号を受信するまでゲートは閉じたままになります。パラメーターが指定されている場合、その時間が経過する前に別の開閉信号を受信しない限り、ゲートは指定された秒数後に自動的に開きます。開くときに、ゲートも有効になっている場合、最新の入力値が出力として送信されます。 これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 出力に渡す値 | any |
有効化 | ゲートを有効にします。ゲートを常に有効にする場合、このポートを未接続のままにしておきます | boolean |
開く | ゲートを開きます。最初にゲートを開いたままにする場合、このポートを未接続のままにしておきます | pulse |
閉じる | ゲートを閉じます。「閉鎖期間(秒)」パラメーターが指定されている場合、ゲートは指定された秒数だけ閉じられます | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
ゲート値 | ゲートが開いていて有効な場合の入力値と同じです。それ以外の場合、「Null 値」パラメーターで指定された値 | 入力(値) |
アクティブ | パルスを出力します。ゲートがアクティブになるときに生成されます。ゲートが開いていて有効になっている場合、ゲートはアクティブになります | pulse |
非アクティブ | パルスを出力します。ゲートが非アクティブになったときに生成されます。ゲートが閉じられているか無効になっている場合、ゲートは非アクティブになります | pulse |
ラッチ値
apama.analyticskit.blocks.core.Latch
ブロックが有効になっている間に受信した最新の入力値をラッチします。
入力値が変化し、ブロックが有効になっている場合にのみ出力を生成します。「有効化」入力ポートが接続されている場合、ブロックは無効で開始されます。そうでない場合、ブロックは常に有効になります。
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 監視する入力値 | any |
有効化 | ブロックを有効にします。ブロックを常に有効にする場合、これを未接続のままにしておきます | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
ラッチ値 | 入力値と同じ。ブロックが有効になっている間に入力が変更された場合にのみ生成されます | 入力(値) |
変更済み | パルスを出力します。ブロックが有効になっている間に入力が変更された場合にのみ生成されます | pulse |
有効化 | パルスを出力します。ブロックが有効になっているが、以前は無効になっていた場合に生成されます | pulse |
無効 | パルスを出力します。ブロックが無効になっているが、以前は有効になっていた場合に生成されます | pulse |
パルス
apama.analyticskit.blocks.core.Pulse
非パルス入力をパルス出力に変換します。
ブロックは、値が変化したときにパルスを送信するように構成できます。これはデフォルトの変換動作でもあり、すべての入力、またはすべての非ゼロ値に対しても送信されます。
デフォルトの変換動作では、入力が文字列(string)または浮動小数点(float)で値が変化した場合、または入力がブール値(boolean)で値が true に変化した場合にパルスを送信します。 これは、パルス値と非パルス値の両方を消費するブロック、および明示的な変換なしで入力値が非パルスとして扱われるブロックで便利です。 例えば、「OR」ブロックに渡された数値は、ゼロ以外の場合 true として扱われます(分析ビルダー ドキュメントの「型変換」トピックで説明されています)。ただし、数値を「パルス」ブロックに渡し、「パルス」ブロックの出力を「OR」ブロックに接続すると、数値がパルスに変換され、「OR」ブロックがパルスを送信します。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
モード | ブロックがパルスを送信するタイミングを制御します | 任意:次のいずれか
|
デフォルト: 値変更時(false を除く) |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | パルスとして扱う入力 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
パルス | 入力値を換算した出力パルス値です | pulse |
セレクター
apama.analyticsbuilder.blocks.Selector
どの入力ポートが true 値を持つかに応じてパラメーター値を出力し、最小値が優先されます。
このブロックのパラメーターを使用して、送信される出力値を指定します。パラメーター値のうちの 1 つだけが出力で送信されます。これは、対応する入力ポートが true 値を受信したときに送信されます。複数の入力ポートが true 値を受け取る場合、名前に最も小さい番号を持つ入力ポートが使用されます。例えば、入力 1 は入力 2 よりも高い優先順位を持ちます。
すべての入力値が false の場合、「入力なし」パラメーターで指定された値が送信されます。 例:入力 1 は「高」、入力 2 は「中」、入力 3 は「低」、「入力なし」パラメーターの値は「オフ」です。どの入力ポートも true 値を受信しない場合、出力値として「オフ」が送信されます。「入力 2」ポートと「入力 3」ポートの両方が true 値を受信し、入力 1 が false 値を受信した場合、出力値として「中」が送信されます。これは、入力 2 の優先順位が入力 3 よりも高いためです。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
入力 1 | 「入力 1」ポートが true の値を受信したときに送信される出力 | string | |
入力 2 | 「入力 2」ポートが true 値を受信したときに送信される出力ですが、これが名前の中で最も小さい番号を持つポートである場合に限ります | string | 任意 |
入力 3 | 「入力 3」ポートが true 値を受信したときに送信される出力ですが、これが名前の中で最も小さい番号を持つポートである場合に限ります | string | 任意 |
入力 4 | 「入力 4」ポートが true 値を受信したときに送信される出力ですが、これが名前の中で最も小さい番号を持つポートである場合に限ります | string | 任意 |
入力 5 | 「入力 5」ポートが true 値を受信したときに送信される出力ですが、これが名前の中で最も小さい番号を持つポートである場合に限ります | string | 任意 |
入力なし | true 値を持つ入力がない場合に送信される出力 | string | |
タイプ | パラメーター値を解釈し、出力タイプを設定する方法。
タイプとして「JSON」が選択されている場合、すべての「入力」パラメーター値は同じタイプの有効な JSON 値である必要があります。これにより、「セレクター」ブロックがプロパティを出力できるようになり、例えば「プロパティの設定」ブロックと併用して、「セレクター」ブロックのどの入力ポートが有効になっているかに応じて、出力ブロックのさまざまなプロパティセットを生成できます。 「タイプ」パラメーターが選択されていない場合、出力値のタイプはすべての「入力」パラメーター値のタイプに基づいて設定されます。すべての値が true または false の場合、出力は「ブール値」になります。すべての値が数値の場合、出力は「浮動小数」値になります。それ以外の場合はすべて、出力は「文字列」値です。 |
任意:次のいずれか
|
任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
入力 1 | true の場合、「入力 1」パラメーター値が送信されます | boolean |
入力 2 | true の場合(また、それより小さい番号の入力が true でない場合)、「入力 2」パラメーター値が送信されます | boolean |
入力 3 | true の場合(また、それより小さい番号の入力が true でない場合)、「入力 3」パラメーター値が送信されます | boolean |
入力 4 | true の場合(また、それより小さい番号の入力が true でない場合)、「入力 4」パラメーター値が送信されます | boolean |
入力 5 | true の場合(また、それより小さい番号の入力が true でない場合)、「入力 5」パラメーター値が送信されます | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
出力 | いずれかのパラメーターからの出力値 | any |
スイッチ
apama.analyticsbuilder.blocks.Switch
指定された入力から値を出力するか、サーキット ブレーカーとして機能します。
「選択された入力」パラメーターが指定されている場合、指定された入力が存在し、対応する入力ポートが接続されている必要があります。
「選択された入力」パラメーターが指定されていない場合、ブロックはサーキット ブレーカーとして機能します。 入力には初期のデフォルト名を使用できます。ただし、よりわかりやすい名前に変更することもできます。入力の名前は一意である必要があるため、2 つの入力が同じ名前を共有することはできません。接続された入力は、すべて同じタイプである必要があります。 想定されるユースケースは、「選択された入力」パラメーターがテンプレート パラメーターに設定され、モデル インスタンスごとに個別に設定して、どの入力が使用されるかを決定することです。パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
選択された入力 | 出力を指定するには、5 つの入力名のいずれかを指定します。サーキット ブレーカーとして機能するには、このパラメーターを空のままにします | string | 任意 |
入力 1 の名前 | ブロックへの最初の入力の名前 | string | デフォルト:input1 |
入力 2 の名前 | ブロックへの 2 番目の入力の名前 | string | デフォルト:input2 |
入力 3 の名前 | ブロックへの 3 番目の入力の名前 | string | デフォルト:input3 |
入力 4 の名前 | ブロックへの 4 番目の入力の名前 | string | デフォルト:input4 |
入力 5 の名前 | ブロックへの 5 番目の入力の名前 | string | デフォルト:input5 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
入力 1 | 最初の入力 | any |
入力 2 | 2 番目の入力 | any |
入力 3 | 3 番目の入力 | any |
入力 4 | 4 番目の入力 | any |
入力 5 | 5 番目の入力 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
スイッチ | 指定された入力からの値、または「選択された入力」パラメーターが空の場合は値なし(サーキット ブレーカー) | sameAsAll(input1, input2, input3, input4, input5) |
時間遅延
apama.analyticskit.blocks.core.TimeDelay
指定された時間だけ入力を遅らせます
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
遅延時間(秒) | 入力が遅れる時間(秒単位)。
これは有限の正の数でなければなりません |
float |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 遅延させる入力値 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
遅延値 | 遅延された出力値 | 入力(値) |
ユーティリティ
このカテゴリには、次のブロックが含まれています。
ブロック名 | 説明 |
---|---|
定数値 | 「トリガー」入力ポートが信号を受信したとき、または起動時に値を出力します |
Cron Timer | cron のような定期タイマー構文に基づいて、信号出力を送信します |
持続時間 | 設定された開始時刻から経過した時間を測定します |
プロパティの抽出 | 入力値から指定されたプロパティを抽出し、指定されたタイプに変換します |
ジオフェンス | 入力値を定義されたジオフェンス値と比較して、デバイスがジオフェンス内にあるかどうか、およびデバイスがジオフェンスに出入りしたかどうかを検出します |
不足データ | 設定された時間の間、入力が発生しなかった場合に出力を生成します |
プロパティの設定 | 入力ポートの値から設定されたプロパティを使用して、パルスを出力します |
テキストの代替 | テキスト テンプレート内のハッシュと中括弧でマークされた識別子(#{name} など)を、入力値の対応するエントリに置き換えます |
切り替え | オプションの遅延を使用して、セット信号とリセット信号に基づいて 2 つのパルス入力をブール出力に変換します |
定数値
apama.analyticsbuilder.blocks.ConstantValue
「トリガー」入力ポートが信号を受信したとき、または起動時に値を出力します。
「トリガー」入力ポートを使用すると、トリガー入力が受信されるまで出力を遅らせることができます。「トリガー」入力ポートが接続されていない場合、モデルがアクティブ化されたときにブロックは値を出力し、これによりさらなる処理がトリガーされる可能性があります。
「値」パラメーターは、文字列、ブール値、浮動小数点数、JSON 値として扱うことができます。JSON 文字列、数値、ブール値の場合、それが出力のタイプになります。JSON オブジェクトの場合、出力はオブジェクトのプロパティを含むパルスになります。JSON 配列はオブジェクト内でのみ許可されます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
値 | 出力する値 | string | |
タイプ | 「値」パラメーターの解釈方法と出力タイプの設定方法。タイプとして JSON を選択した場合、「値」パラメーターは有効な JSON 値である必要があります。
「タイプ」パラメーターが選択されていない場合、出力値のタイプは入力パラメーター値のタイプに基づいて設定されます。値が true または false の場合、出力はブール値になります。値が数値の場合、出力は浮動小数点値になります。値が有効な JSON の場合、出力はオブジェクトのプロパティを持つパルスになります。それ以外の場合、出力は文字列値になります |
任意:次のいずれか
|
任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
トリガー | 接続されている場合は、このトリガーで出力を送信します | boolean |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
出力 | 「値」パラメーターからの出力値 | any |
Cron Timer
apama.analyticskit.blocks.core.CronTimer
cron のような定期タイマー構文に基づいて信号出力を送信します。
「タイマー刻み」出力は、時間がパターンと一致するたびに送信されます。「タイムゾーン」パラメーターは、サポートされている任意のタイムゾーンに設定できる、大文字と小文字が区別される文字列です。他のパラメーターは、常に一致するようにアスタリスク(*)、特定の時刻に起動するカンマ区切りの数値のリスト、数値の倍数ごとに起動するように「 * / 数値」に設定することができます。
例: 毎週水曜日の 20:30 にシグナルを送信する:- 曜日: 4
- 時: 20
- 分: 30
- 秒: * / 5
- タイムゾーン: Europe/Berlin
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
秒 | シグナルをトリガーする秒数 範囲:0 ~ 59 |
string | デフォルト:0 |
分 | シグナルをトリガーする分 範囲:0 ~ 59 |
string | デフォルト: * |
時間 | シグナルをトリガーする時間 範囲:0 ~ 23 |
string | デフォルト: * |
日付 | シグナルをトリガーする日付 範囲:1 ~ 31 |
string | デフォルト: * |
月 | シグナルをトリガーする月 範囲:1 ~ 12 |
string | デフォルト: * |
曜日 | シグナルをトリガーする曜日 範囲:0(日曜日)~ 6(土曜日) |
string | デフォルト: * |
タイムゾーン | 使用するタイムゾーン
例:Europe/Berlin。完全なリストについては、サポートされているタイムゾーン を参照してください。 デフォルト値は空で、プラットフォームのタイムゾーンが使用されます。 |
string | デフォルト:(空) |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
タイマー刻み | cron パラメーターに基づいて、各トリガー時間に送信されます | pulse |
持続時間
apama.analyticskit.blocks.core.Duration
設定した開始時刻からの経過時間を計測します。
開始時刻は、ブロックをアクティブにする開始信号によって設定されます。ブロックがすでにアクティブである場合、開始信号は無視され、既存の測定は影響を受けません。ブロックはリセット信号によって非アクティブ化され、定期的な出力も無効になります。
このブロックは、開始信号からの経過時間を秒単位で計測した浮動小数点出力を生成します。測定信号を受信したときにブロックが非アクティブである場合、出力として 0.0 が生成されます。
複数の信号を同時に受信した場合は、測定、リセット、スタートの順に処理されます。したがって、例えば、測定信号とリセット信号が一緒に受信された場合、ブロックはまず現在の期間で出力を生成し、次にその状態をリセットします。この順序で入力を処理すると、ブロックの現在の状態が出力され、必要に応じて単一時間単位内でブロックを再起動できるようになります。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
定期的出力(秒) | アクティブなブロックによって、自動的に生成される出力間の時間(秒単位)。設定されていない場合、出力は測定信号を受信したときにのみ生成されます。
これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
測定 | ブロックがアクティブになってからの継続時間(秒単位)の出力をトリガーします。ブロックが非アクティブな場合は、0.0 が出力されます | pulse |
リセット | ブロックの状態を非アクティブ化し、リセットします | pulse |
開始 | ブロックをアクティブにします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
持続時間 | 開始信号を受信してからの時間(秒) | float |
プロパティの抽出
apama.analyticskit.blocks.core.ExtractProperty
入力値から指定されたプロパティを抽出し、指定されたタイプに変換します。
「プロパティパス」パラメーターによって指定される「値」入力ポートの値は、文字列、数値、ブール値である必要があります。
「プロパティパス」パラメーターの一部として角括弧を指定して、シーケンスから特定の要素を抽出できます。
「プロパティパス」パラメーターの一部としてピリオド(.)を指定して、辞書からネストされた値を抽出できます。
「プロパティパス」パラメーター内のピリオド(.)と角括弧を無視し、他の文字として扱う場合、「プロパティパスの区切り線を無視する」チェックボックスをオンにする必要があります。
例:
- 入力が { "users" : [ { "age" : 40.375 } ] }(JSON 形式)の場合、「プロパティパス」パラメーターとして users[0].age を指定すると、age の値を抽出できます。
- 入力が { "location" : { "city" : "Cambridge" } }(JSON 形式)の場合、「プロパティパス」パラメーターとして location.city を指定すると city の値を抽出できます。
- 入力が { "location.city" : "Cambridge" }(JSON 形式)の場合、「プロパティパス」パラメーターとして location.city を指定し、「プロパティパスの区切り線を無視する」チェックボックスを選択することで、location.city の値を抽出できます。
- 入力が { "a.b" : { "c.d" : "foo" } }(JSON 形式)で、c.d の値を抽出する場合、2つの「プロパティの抽出」ブロックをチェーンで使用し、両方のブロックで「プロパティパスの区切り線を無視する」チェックボックスをオンにする必要があります。最初のブロックで a.b の値を抽出し、2番目のブロックで c.d の値を抽出します。
文字列を float に変換する際、このブロックは空の文字列を解析できないものとしてではなく、値 0.0 として扱います。
注:「測定入力」ブロックからカスタムプロパティを抽出するには、「プロパティの抽出」ブロックの「プロパティパス」パラメーターで、プロパティ名にプレフィックス measurement_ を追加する必要があります。例えば、抽出するカスタムプロパティの名前が city の場合、「プロパティパス」パラメーターとして measurement_city を指定する必要があります。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
プロパティパス | 入力値から抽出されるプロパティの名前またはパス。設定されていない場合、すべてのプロパティが出力されます | string | 任意 |
プロパティタイプ | プロパティ値の変換先のタイプ。「プロパティ」に設定すると、抽出された値のプロパティを使用してパルスが出力されます | 任意:次のいずれか
|
デフォルト:文字列 |
ない場合はクリア | これを選択すると、「プロパティパス」パラメーターが指定されなかった場合、または値を指定されたタイプに変換できない場合、指定されたタイプのデフォルト値が出力されます | boolean | デフォルト:False |
プロパティパスの区切り線を無視する | 選択すると、「プロパティパス」パラメーターの値がプロパティ名として扱われます。例えば、「プロパティパスの区切り線を無視する」が選択され、「プロパティパス」パラメーターが location.city と指定されている場合、入力値からプロパティ名 location.city が抽出されます。 | boolean | デフォルト:False |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | プロパティの抽出元となる入力値 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
抽出された値 | 入力値から抽出された値 | any |
ジオフェンス
apama.analyticsbuilder.blocks.Geofence
入力値を定義されたジオフェンス値と比較して、デバイスがジオフェンス内にあるかどうか、およびデバイスがジオフェンスに出入りしたかどうかを検出します。
境界線自体は、ジオフェンスエリアの外側にあるとみなされます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
ジオフェンス | 地球の表面上の領域を表すポリゴン(多角形)。
国際日付変更線を越えることは(経度 +/- 180 度)、サポートされていないことに注意してください |
sequence<apama.analyticsbuilder.LngLat> |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
位置 | 経度(lng)と緯度(lat)のプロパティが抽出される入力値 | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
ジオフェンス内 | デバイスが定義されたジオフェンス内にある場合、true に設定されます | boolean |
進入したジオフェンス | デバイスが定義されたジオフェンスに入ったときに信号を送信します | pulse |
退出したジオフェンス | デバイスが定義されたジオフェンスから出るときに信号を送信します | pulse |
不足データ
apama.analyticskit.blocks.core.MissingData
設定された時間の間、入力が発生しなかった場合に出力を生成します。
このブロックは、繰り返される同じ値の入力がカウントされない場合、任意で値の変化がないことを検出することができます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
繰り返し入力を無視する | 選択すると、同じ値の入力は無視されます | boolean | デフォルト:False |
持続時間(秒) | ブロックが入力を待機する時間(秒単位)。
これは有限の正の数でなければなりません |
float |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 有無を検出するデータ | any |
リセット | ブロックの状態をリセットします。 - タイマーと以前の値をリセットします | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
不足データ | データなし。指定された期間内に入力が受信されなかった場合 true、それ以外の場合 false | boolean |
プロパティの設定
apama.analyticsbuilder.blocks.SetProperties
入力ポートの値から設定されたプロパティを使用して、パルスを出力します。
プロパティ名はパラメーターから取得され、入力ポートからの値が取得されます。新しいプロパティは、受信した場合にのみ出力されます。少なくとも 1 つの入力が提供されると、すぐに出力が送信されます。
プロパティは、次の優先順位で出力に設定されます。
- パラメーターを使用して明示的に指定されたプロパティ。入力がパルスの場合、その入力のプロパティを使用して、オブジェクトとして扱われます。入力にプライマリ値(パルスではない)がある場合、そのプライマリ値が使用されます。代わりにプロパティを使用するには、「プロパティパス」パラメーターを設定せず、「プロパティタイプ」パラメーターをプロパティに設定して「プロパティの抽出」ブロックを使用します。これにより、主な値がパルス(無視されます)に置き換えられ、プロパティが使用されます。
- 入力ポート上の、対応するパラメーターが設定されていない Value オブジェクトのプロパティ。これは、properties ディクショナリを直接マージしたものです。2 つのディクショナリに同じプロパティ キーがある場合、最小の識別子を持つ入力ポートが優先されます。したがって、「入力 1」の共有プロパティは、「入力 2」以降のプロパティを上書きします。
- 「マージ」入力ポートに提供される Value オブジェクトのプロパティは、いずれかによって上書きされない限り保持されます。任意の「マージ」入力ポートを使用すると、別のブロックから一連のプロパティを連鎖したり、補足したりできます。
したがって、入力に設定されたプロパティは、より優先順位の高い入力上の同じ名前を持つプロパティによって上書きされるか、指定されたプロパティに対して入力が設定されている場合に上書きされます。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
プロパティ 1 | 入力ポート 1 からの値を使用して、出力に設定するプロパティ | string | 任意 |
プロパティ 2 | 入力ポート 2 からの値を使用して、出力に設定するプロパティ | string | 任意 |
プロパティ 3 | 入力ポート 3 からの値を使用して、出力に設定するプロパティ | string | 任意 |
プロパティ 4 | 入力ポート 4 からの値を使用して、出力に設定するプロパティ | string | 任意 |
プロパティ 5 | 入力ポート 5 からの値を使用して、出力に設定するプロパティ | string | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
入力 1 | 「プロパティ 1」パラメーターのプロパティ名を使用して追加される値 | any |
入力 2 | 「プロパティ 2」パラメーターのプロパティ名を使用して追加される値 | any |
入力 3 | 「プロパティ 3」パラメーターのプロパティ名を使用して追加される値 | any |
入力 4 | 「プロパティ 4」パラメーターのプロパティ名を使用して追加される値 | any |
入力 5 | 「プロパティ 5」パラメーターのプロパティ名を使用して追加される値 | any |
マージ | 指定されたプロパティとマージするソース。ここからのプロパティは、入力値で置き換えられずに出力に渡されます | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
出力 | 追加のプロパティが指定された出力値 | pulse |
テキストの代替
apama.analyticsbuilder.blocks.TextSubstitution
「テキスト テンプレート」内のハッシュと中括弧でマークされた識別子(#{name} など)を、入力値の対応するエントリに置き換えます。
「オブジェクト」または「ソース」入力ポートの少なくとも 1 つが接続されている必要があります。解決できない識別子は置換されません。
source. のプレフィックスが付いた識別子(#{source.name} など)は、「ソース」入力ポートで受け取られた値で検索されます。例えば、「ソース」入力ポートで受け取られた値が { "name": "sample_name" } である場合、識別子 #{source.name} は sample_name に解決されます。
source. というプレフィックスが付いていない識別子は、「オブジェクト」入力ポートで受信した値内で検索されます。
ネストされた識別子はドット(.)で区切って指定できます。例えば、「オブジェクト」入力ポートが値 { "address": { "street": { "name": "example_street" }}} を受け取った場合、識別子 #{address.street.name} は example_street に解決されます。
ドット( . )のあるキーはサポートされていません。「オブジェクト」入力ポート値が { "address.street": { "name": "example_street" }} 形式である場合、識別子 #{address.street.name} は address エントリ内に street を入れ子にすることを予期するため、example_street の値は解決できません。
integer、float、boolean、string などのプリミティブ値は、直接代替されますが、複合値は代替の前に JSON 表現に変換されます。
テキスト time(大文字と小文字を区別しない)と値タイプ float を持つ識別子は、タイムスタンプ値として解釈され、代替前に yyyy-MM-ddTHH:mm:ss.SSSZ 形式に変換されます。これは、次の構文を使用してオプションのパラメーターで変更できます。:{time:param1="value1",param2="value2"}
パラメーター TZ="time_zone" を使用して別のタイムゾーンを指定したり、パラメーター FORMAT="format_string" を使用して別の形式を指定したりできます。例えば、#{time:TZ="America/New_York",FORMAT="HH:mm:ssZ"} は、ニューヨークのタイムゾーンを指定し、形式は HH:mm:ssZ になります。タイムゾーンが認識されない場合や形式が無効な場合、モデルをアクティブ化できません。
注:時刻の形式文字列には引用符( " )と中括弧({ })を含めることはできません。
ハッシュ( # )は、#{#} のようにエスケープすることで「テキスト テンプレート」に指定できます。
詳細については、タイムゾーンのリスト および 有効な時刻形式文字列のリスト を参照してください。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
テキスト テンプレート | #{name} などの識別子を、入力ポートからの値に置き換えて出力を生成するために使用されるテキスト | string |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
オブジェクト | source. というプレフィックスが付いていない識別子の置換に使用されます。例:#{name} または #{timestamp} | any |
ソース | source. というプレフィックスが付いた識別子の置換に使用されます。例:#{source.name} | any |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
出力 | 「テキスト テンプレート」からの置換を含む文字列 | string |
切り替え
apama.analyticskit.blocks.core.Toggle
2 つのパルス入力を、任意で遅延を伴うセット信号とリセット信号に基づいたブール出力に変換します。
遅延がなければ、設定信号時に出力状態は true に変化し、リセット信号時には false に変化します。両方の信号が同時に受け取られた場合、出力状態が切り替わります(信号が初めて受け取られた場合、true に切り替わります)。
遅延時間が指定されている場合、出力状態は遅延が適用された後にのみ true または false に変更されます。
信号が同時に受け取られた場合、次の例外が適用されます。:出力状態は、両方の遅延時間が同じであるか、全く指定されていない場合にのみ切り替わります。
パラメーター
名前 | 説明 | タイプ | 注釈 |
---|---|---|---|
遅延設定(秒) | 設定された信号が処理されるまでの時間(秒)
パラメーターが指定されていない場合、信号はすぐに処理されます。 これは有限の正の数でなければなりません |
float | 任意 |
遅延のリセット(秒) | リセット信号が処理されるまでの時間(秒)。
パラメーターが指定されていない場合、信号はすぐに処理されます。 これは有限の正の数でなければなりません |
float | 任意 |
入力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
設定 | 出力を true に設定します。保留中の遅延セットまたはリセット信号は、新しい入力でキャンセルされます | pulse |
リセット | 出力を false に設定します。保留中の遅延セットまたはリセット信号は、新しい入力でキャンセルされます | pulse |
出力ポートの詳細
名前 | 説明 | タイプ |
---|---|---|
値 | 入力信号から生成された出力値 | boolean |