ArcGIS Velocity は、フィードまたはデータ ソースを使用してリアルタイム解析とビッグ データ解析にデータを取り込みます。 フィードはリアルタイム データ ストリームです。データ ソースは、リアルタイム解析の開始時に静的データまたはニア リアルタイム データを 1 回読み込み、迅速な結合、情報付加、ジオフェンシングに使用できるようにします。
フィードは、リアルタイム データを活用するために使用する、あるいはリアルタイム解析で解析ツールの結合データとして使用する必要があります。
Velocity は、フィードまたはデータ ソースの入力データを構成する際のユーザーの操作性を最適化する、効率的でコンテキストに応じたワークフローを提供します。 この構成ワークフローはさまざまなタイプのフィードとソースで共通です。
接続パラメーターとコンフィグレーション パラメーターの設定
フィードまたはデータ ソースを構成するときの最初のステップでは、Velocity がデータに接続できるように、必要な接続プロパティと構成プロパティを定義します。 使用できるパラメーターは、フィードまたはデータ ソースのタイプによって異なります。
たとえば、Kafka フィードを構成する場合、データに接続するには [ブローカー] および [トピック] パラメーターを入力します。 Amazon S3 データ ソースを構成する場合、接続を正常に確立するためには、関連するすべての接続プロパティを設定する必要があります。
次に、Velocity は設定されたコンフィグレーション パラメーターを使用して接続を検証します。 次に、Velocity はデータのサンプリングとデータのスキーマの作成を試みます。 接続が正常に行われず、データが正常に得られなかった場合、コンフィグレーション パラメーターを適宜更新して再試行してください。
スキーマの確認
[スキーマの確認] ステップでは、返されたスキーマとデータのサンプルが表示されます。 データの形式に応じて、有効なスキーマへのデータ解析を調整する追加のプロパティを使用できます。
このステップでは、フィールド名、フィールド タイプ、データ形式を確認して調整できます。 さらに、データ形式やデータ形式のパラメーターを調整した後で、データを再び取得して新しいサンプルを取得したり、スキーマを作成したりすることができます。 これによって、Velocity はフィードまたはデータ ソースによって取り込まれるデータの形式を識別できます。
自動でのサンプリングとスキーマ作成
[スキーマの確認] ステップでは、Velocity は、前のステップで設定された接続パラメーターとコンフィグレーション パラメーターを使用して、指定されたフィードまたはデータ ソースに接続し、サンプル データを取得します。
サンプル データから、Velocity は、データ形式と、フィールド名とフィールド タイプから成るスキーマを自動的に作成します。 一部のデータ形式では、ジオメトリや日時のキー フィールドも識別されます。
フィールド タイプとフィールド名の変更
Velocity は、取得したデータ サンプルに基づいて、スキーマ作成によって識別されたフィールド タイプとフィールド名を表示します。
作成したスキーマを調整するには、次の手順を実行します。
- フィールド タイプとフィールド名を調整する前に、データ形式パラメーターを変更し、スキーマをリサンプリングします。
データ形式やデータ形式パラメーターが変更されてスキーマの作成が必要になった場合、行った変更はすべて上書きされます。
- フィールド タイプを変更するには、フィールド名の横にあるドロップダウン矢印をクリックして、別のフィールド タイプを選択します。
フィーチャ レイヤーのフィードやデータ ソースなど、特定のタイプのフィードやデータ ソースを使用している場合、フィールド タイプを変更することはできません。 フィールド タイプを変更する際には、次の点に注意してください。
- すべてのタイプのフィールドを文字列タイプ フィールドに変更できますが、文字が含まれている文字列タイプ フィールドを整数タイプ フィールドに変更することはできません。変更した場合、データの取り込み中にエラーが発生します。
- フィールドを浮動小数タイプ (Float32 または Float64) から整数タイプ (Int32 または Int64) に変更することはお勧めしません。 フィールド タイプの変更は数値をリアルタイムで変換するためのものではありません。 一部の形式では、浮動小数から整数にダウングレードすると値全体がスキップされることがあります。
- フィールド名を必要に応じて変更します。
- フィールドを無効にするには、フィールド タイプの横にあるチェックボックスをオフにします。
データがソースから取り込まれるときに、そのフィールドは無視されます。 速度と容量のパフォーマンスの観点から、不要なフィールドをすべて無効にすることをおすすめします。
データ形式とデータ形式パラメーターの変更
Velocity は、さまざまなデータ形式のさまざまなタイプのフィードやデータ ソースからのデータを使用できます。 HTTP ポーラーなどのタイプの一部のフィードおよびデータ ソースでは、さまざまな形式のデータが使用されている場合があります。 フィーチャ レイヤーなどのその他のタイプのフィードおよびデータ ソースではデータ形式は固定です。
サポートされているデータ形式は次のとおりです。
- 区切り
- JSON
- GeoJSON
- EsriJSON
- RSS
- GeoRSS
- シェープファイル (Amazon S3 および Azure Blob Store データ ソースでのみ使用可能)
- Parquet (Amazon S3 および Azure Blob Store データ ソースでのみ使用可能)
Velocity は自動的にデータ形式を決定します。 ただし、ユーザーは決定されたデータ形式を必要に応じて変更できます。
さらに、一部のデータ形式には、Velocity によるスキーマへのデータの解析方法を調整するための各種プロパティがあります。 たとえば、区切りデータ形式には field delimiter と header row の 2 つのパラメーターがあります。
データ形式パラメーターの変更とスキーマの作成
Velocity は、取得されたデータ サンプルを使用して、データの形式、スキーマ、パラメーターの定義を試みます。
データ形式パラメーターを変更するか、別のデータ形式を指定することができます。 このためには、データ形式プロパティを変更し、[スキーマの作成] をクリックして、行った変更に従ってデータを再び取得します。 取得されたデータに基づいてパラメーターが更新されます。
たとえば、複数レベルでネストされた JSON ソースに接続しているときに、特定の JSON ノードのデータのみを収集する場合や、複数レベルの JSON を平坦化してすべての属性値を取得する場合、root node および flatten パラメーターを使用して、直接 JSON データを操作するように Velocity を構成できます。
サンプリングされたデータが返らない
サンプリングされたデータが Velocity で返されなかった場合、次のいずれかの操作を実行します。
- 接続パラメーターとコンフィグレーション パラメーターが正しいことを確認します。
- データが流れているときやデータが提供されているときに [スキーマの作成] をクリックして、リサンプリングします。
- レコードをコピーすることで独自のサンプルを入力します。
サンプルのデータ形式を確認して、有効なスキーマを作成することができます。
- データの形式とスキーマを手動で定義します。
キー フィールドの識別
新しいフィードまたはデータ ソース用に入力データを構成する次のステップでは、キー フィールドを識別します。 キー フィールドは、各フィールドからフィーチャ ジオメトリを解析し、文字列から日付を構築し、開始時間フィールドと終了時間フィールドを指定し、フィールドをトラッキング ID として指定するときに使用されます。
位置
多くのタイプのフィードとデータ ソースでは、Velocity が観測値やレコードからフィーチャのジオメトリを特定する方法を定義する必要があります。 ジオメトリは単一のジオメトリ フィールドまたは X/Y フィールドを使用して定義できます。 ジオメトリ フィールドを指定せずに、位置情報が含まれていない表形式データを読み込むこともできます。
日時
フィードまたはデータ ソース内のフィーチャには、日時フィールドが含まれていることがあります。 データに日付フィールドがあるものとした場合、日付形式も指定する必要があります。 [エポック値] と [その他 (文字列)] のオプションがあります。 [その他 (文字列)] を選択した場合、Velocity が文字列を解析して日付に変換できるように [日付の書式設定] 文字列値を指定する必要があります。
さらに、[開始時間] オプションのキー フィールドも選択できます。 データを解析して処理するために開始時間や終了時間を設定する必要はありません。 ただし、リアルタイム解析とビッグ データ解析の一部のツールでは、時間解析を実行するために開始時間または開始時間と終了時間を指定する必要があります。
トラッキング
[Track ID] オプションに設定されたキー フィールドは、フィーチャを特定のエンティティに関連付けるデータ内の一意の識別子です。 たとえば、ナンバー プレートの番号でトラックを識別したり、割り当てられたフライト番号で航空機を識別したりできます。 これらの識別子を、現実世界の特定のエンティティやインシデントの集合に関連付けられたフィーチャを追跡するトラッキング ID として使用できます。
データを解析して処理するためにトラッキング ID フィールドを設定する必要はありません。 ただし、リアルタイム解析とビッグ データ解析の一部のツールでは、フィードまたはデータ ソースでトラッキング ID を識別する必要があります。
ポーリング間隔のスケジュール設定
多くのフィードはデータをストリーミングしますが、一部のタイプのフィードはデータを一定の間隔で取得する必要があります。 定義されている間隔によって、フィードがソースに接続してデータを取得する頻度が決まります。 次のタイプのフィードでポーリング間隔を設定できます。
保存
最後のステップでは、フィード名を指定し、必要に応じてフィードのサマリーを入力して、フィードを保存します。