EsriJSON

EsriJSON は、さまざまな地理データ構造をエンコードするための形式です。 EsriJSON について言及するとき、ほとんどの場合は featureSet オブジェクトを意味します。これには、フィーチャ オブジェクトの組が含まれています。 ArcGIS Velocity は、EsriJSON を featureSet オブジェクト (フィーチャのコレクション)、または個々のフィーチャを各行として取り込むことができます。

EsriJSON は次のタイプのフィードとデータ ソースのデータ形式としてサポートされています。

  • フィード - Azure Event Hub、Azure Service Bus、AWS IoT、HTTP ポーラー、HTTP 受信機、Kafka、WebSocket、RabbitMQ、MQTT
  • データ ソース - Azure Blob ストレージ、Amazon S3、HTTP ポーラー

サポートされている EsriJSON

Velocity では、ジオメトリ タイプ、フィールドのセット、空間参照が一貫して管理される EsriJSON がサポートされています。

EsriJSON の生成

ArcGIS Pro[フィーチャ → JSON (Features To JSON)] ツールを使用して、さまざまな形式のデータを EsriJSON に変換できます。

EsriJSON 構成の指定

フィードまたはデータ ソースの構成時に、取り込むデータのタイプを判定するためにサンプリングが行われます。 サンプリングによってデータが EsriJSON 形式であることが特定された場合、EsriJSON 構成の追加のプロパティを指定できます。

位置プロパティ

特定の場合、特に個々のフィーチャ オブジェクトをサンプリングしている場合は、サンプル データに存在しない追加の位置情報を構成する必要があることがあります。 たとえば、フィーチャの配列内にあるジオメトリ オブジェクトには、各フィーチャの空間参照が含まれていないことがあります。 featureSet オブジェクトをサンプリングするとき、Velocity は完全な位置情報を取得できるので、位置プロパティの追加構成は必要ありません。

検討事項および制限事項

VelocityEsriJSON 形式のデータを使って作業する場合、検討事項と制限事項がいくつかあるので、以下で説明します。

EsriJSON フィーチャ プロパティが一貫していなければならない

EsriJSON データ形式を使用する場合、属性データは属性オブジェクト内で名前と値のペアによって表されます。 プロパティの値は NULL または有効な値でなければなりません。 フィーチャのプロパティに値がない場合、その属性名を省略するのではなく、その値を NULL として表す必要があります。

フィールド タイプの変更

EsriJSON のフィールド タイプは変更しないことをお勧めします。 VelocityfeatureSet オブジェクトをサンプリングして取り込むとき、フィールド タイプの正確な表現が抽出され、これらはソースやフィードを構成するときに変更されません。 例外的にフィールド タイプを変更するのはフィーチャ オブジェクトの場合です。 フィーチャ オブジェクトは日付フィールドの時間をエポックのミリ秒単位として表しているため、フィールド タイプを明示的に含む完全な featureSet がなければ、常に整数フィールド タイプとして抽出されます。 このため、適切に変更する必要があります。 さらに、フィーチャ オブジェクトの場合は Velocity が取得されたサンプルのみに基づいて他のフィールド タイプの抽出を試みるため、それに応じてフィールド タイプをレビューする必要があります。

EsriJSON ファイルのサイズ

ベスト プラクティスとして、Velocity に取り込む EsriJSON ファイルのサイズは、1 ファイルあたり 100 MB 未満に制限する必要があります。 データ量が多い場合、ファイルを小さなファイル (1 ファイルあたり 100 MB 未満) に分割します。