ジオイベント定義とは
GeoEvent Extension 内のイベント データには、そのイベントのデータに関する属性フィールドとデータ タイプ (Date、String、Integer など) を識別するスキーマが関連付けられています。このスキーマを「ジオイベント定義」と呼びます。ジオイベント定義を表示するには、GeoEvent Manager の [サイト] > [ジオイベント] > [ジオイベント定義] を選択します。
注意:
GeoEvent Extension には、[インシデント] と [トラック ギャップ] という 2 つのジオイベント定義が付属しています。これらのジオイベント定義は表示またはコピーのみが可能で、削除や編集はできません。インシデント ディテクターおよびトラック ギャップ ディテクター プロセッサがこれらのジオイベント定義を使用します。
入力コネクタが受信したイベントからジオイベントを構築するために、イベント ストリーム内のデータと整合性のあるジオイベント定義が必要となります。同様に、出力コネクタがジオイベントを構築してイベント データを送信するために、指定された出力のスキーマと整合性のあるジオイベント定義が必要となります。
ジオイベント定義の作成と編集は、ユーザーが実行できます。一部の入力コネクタでは、受信したイベントから検索したデータに基づいてイベント定義を作成することができます。管理者はイベント定義をインポートして、公開済みフィーチャ サービスの更新などの処理に対応できます。これは、すでに登録されたジオイベント定義は頻繁に変更されることを意味しています。
「GeoEvent Extension の概要」チュートリアルは、ジオイベント定義を作成する方法、入力コネクタが受信したデータからジオイベント定義を構築する方法、公開済みフィーチャ サービスからジオイベント定義をインポートする方法に関する演習を実行できるようになっています。チュートリアルには、「GeoEvent Extension チュートリアル」からアクセスします。
ジオイベント定義フィールドのデータ型
ジオイベント定義に含まれる各フィールドには、データ型が関連付けられています。このデータ型を使用するのは、入力コネクタがストリーミング データからジオイベントを構築する場合、または出力コネクタからジオイベントが送信される前にジオイベントを分解する場合です。
使用できるフィールドのデータ型は次のとおりです。
- Boolean
- Date
- Double
- Float
- Geometry
- Group *
- Integer
- Long
- Short
- String
* 詳細は、下記の「フィールド グループ」のセクションをご参照ください。
フィールド基数
一部のイベント ベースのデータ ストリームでは、単一のフィールドに複数のエントリが含まれるスキーマ (配列など) を定義できます。このようなフィールドは、1 より大きい基数を持つフィールドとしてジオイベント定義で表現されます。フィールド基数は、この条件が検出されたデータ ストリームに対応することを意図している高度なフィーチャです。
管理者は、フィールド基数を [One] から [Many] に変更することで、GeoEvent Manager でジオイベント定義の基数を設定できます。
フィールド グループ
一部のデータ ストリームでは、単一のフィールドの内容が離散型データ (Date、String、Integer など) ではなく、複数のデータ型のデータ値を含む 1 つのグループであるスキーマを定義できます。このようなフィールドは、ジオイベント定義で「Group」として表現されます。グループ内の各フィールドの離散型データには、フィールド グループの名前の下でインデントが設定されます。
フィールド グループは、この条件が検出されたデータ ストリームに対応することを意図しているもう 1 つの高度なフィーチャです。グループ型のフィールドにはネストされたグループを入力できるため、複雑な構造体を作成することができます。
ジオイベント定義のフィールドを GeoEvent Manager でグループ フィールドとして設定するには、フィールドのタイプを [グループ] に変更します。
注意:
すべてのジオイベント エクステンションの出力コネクタが、フィールドに複数の基数またはグループの構造が含まれるデータをサポートしているわけではありません。たとえば、[フィーチャの追加] または [フィーチャの更新] 出力コネクタのいずれかを使用する場合は、フィールド マッパー プロセッサを使用して、フィーチャ サービスのレイヤーが期待するスキーマと一致するように、イベントのデータ構造をフラットにする必要があります。もう 1 つの例として、[フィーチャをストリーム サービスに送信] 出力コネクタを使用する場合は、ストリーム レイヤーから生成されるフィーチャのポップアップに階層図 JSON ではなくシンプル テキストの値が表示されるように、イベントのデータ構造をフラットにする必要があります。