Portal for ArcGIS の便利な機能として、CSV ファイルまたはテーブルから住所をマッピングすることができます。この機能を有効にするには、ポータルが (住所を検索するための) 有効なジオコード ユーティリティ サービスと、(住所を読み取り、ジオコード ユーティリティ サービスに送信するための) ホスティング サーバーを備えていることを確認する必要があります。
ジオコード ユーティリティ サービスの設定
住所を含む CSV ファイルをマップ ビューアーに追加するときなど、一度に大量の住所をジオコーディングするには、ポータルにジオコード ユーティリティ サービスを設定する必要があります。ArcGIS Online 組織からジオコード サービスを使用するか、フェデレーション GIS Server またはスタンドアロン GIS Server 上で動作する独自のジオコード サービスを構成することができます。
ジオコード ユーティリティ サービスの設定については、「ユーティリティ サービスの構成」をご参照ください。 独自のジオコード サービスの構成については、次のセクションをご参照ください。
独自のジオコード サービスの構成
Portal for ArcGIS はデフォルトで、ArcGIS Online でホストされる ワールド ジオコード サービスを使用します。組織が、住所や場所名の検索に使用する独自のロケーター データを持っているか、またはポータルが ArcGIS Online にアクセスできない場合、ジオコード サービスを公開し、ポータルのジオコード ユーティリティ サービスとして設定します。
ユーザーがマップ ビューアーで検索を行う際に、住所または地名が自動入力されるようにする場合は、カスタム ジオコード ユーティリティ サービスの [自動入力] 機能を有効にします。
- ArcGIS Desktop ヘルプの 「住所ロケーターの作成」にある手順に従って、データからロケーターを作成します。ポータルのマップ ビューアーで自動入力を使用する場合は、ロケーターを作成するときに、[住所ロケーターの作成 (Create Address Locator)] ツールで [自動入力] オプションをオンにします。
- ロケーターをサービスとして公開するには、ArcGIS Desktop のカタログ ツリーのロケーターを右クリックして、[サービスとして共有] をクリックします。
サービスの公開の詳細については、ArcGIS Server ヘルプの「サービスの公開方法」をご参照ください。
- ロケーターの作成時に自動入力を有効にしていない場合は、ジオコード サービスの公開後に自動入力を有効にできます。ArcGIS Desktop または ArcGIS Server Manager でサービスの [サービス エディター] を開き、[ケーパビリティ] タブをクリックして [自動入力] チェックボックスをオンにします。
- 「ユーティリティ サービスの構成」にある手順に従って、このサービスをポータルのジオコード ユーティリティ サービスとして構成します。
GIS Server でのリレーショナル データ ストアの構成
ポータルのホスティング サーバーとして設定する GIS Server サイトでは、リレーショナル データ ストアが構成されている必要があります。
- ArcGIS Data Store をインストールします。
- リレーショナル データ ストアを作成します。
リレーショナル データ ストアを作成する場合は、ポータルのホスティング サーバーとして使用する GIS Server サイトの URL を指定します。
GIS Server のポータルとのフェデレート
GIS Server サイトをホスティング サーバーとして指定するには、ポータルと ArcGIS Server サイトをフェデレートする必要があります。ポータルとフェデレートする GIS Server サイトは、HTTP と HTTPS、または HTTPS のみで通信するように構成する必要があります。
詳細については、「ArcGIS Server サイトのポータルとのフェデレート」をご参照ください。
ホスティング サーバーの指定
ポータルとフェデレートした GIS Server サイトをホスティング サーバーとして指定します。
- [サーバー] ウィンドウの [ホスティング サーバー] セクションにあるドロップダウン リストから、GIS Server サイトを選択します。
- [保存] をクリックします。
Esri World Batch Geocoder を使用するように [テーブルから場所をジオコーディング (Geocode Locations from Table)] ツールを構成
デフォルトで、[Esri World Batch Geocoder] サービスは、ユーティリティ サービスとして構成されている場合に組織で共有されます。組織内のユーザーと公開者が [テーブルから場所をジオコーディング (Geocode Locations from Table)] ツールを使用して [Esri World Batch Geocoder] に対するバッチ ジオコーディング リクエストを送信できるようにするには、[Esri World Batch Geocoder] を [すべてのユーザー] と共有する必要があります。
- [マイ コンテンツ] を参照します。
- [AGO World Geocoder] ロケーター アイテムをクリックして、その詳細ページを開きます。
- [概要] タブにある [共有] をクリックして [すべてのユーザー] をオンにします。
- [OK] をクリックします。
[テーブルから場所をジオコーディング (Geocode Locations from Table)] ツールで [Esri World Batch Geocoder] を使用すると、ジオコード ユーティリティ サービスの構成時に使用した ArcGIS Online 組織でクレジットが消費されます。[Esri World Batch Geocoder] に対する同時バッチ ジオコーディング リクエストの数は構成できないため、常に 1 に設定されます。他のロケーター サービスを [テーブルから場所をジオコーディング (Geocode Locations from Table)] ツールで使用すると、クレジットが消費されません。複数の同時バッチ ジオコーディング リクエストを送信できるように他のロケーターを構成することができます。
ジオコード ユーティリティ サービスの同時バッチ ジオコーディング リクエストの推奨数の構成
ジオコード ユーティリティ サービスは、フェデレーション GIS Server サイトで実行される GeocodingTools ジオプロセシング サービスでも使用できます。このジオプロセシング サービスは複数の同時リクエストをジオコード ユーティリティ サービスに送信して、バッチ ジオコーディングの全体的な実行速度を高めることができます。ポータル管理者は、ジオプロセシング サービスが送信する同時リクエストの数を構成できます。ジオプロセシング サービスがジオコード ユーティリティ サービスに過剰な同時リクエストを送信していると、ジオコード サービスのパフォーマンスが低下し、ジオプロセシング サービスの実行時に障害が増加する可能性があります。このため、管理者は、ジオコード ユーティリティ サービスで利用できるインスタンスの数に基づいて、ジオプロセシング サービスが使用するインスタンスの数を設定する必要があります。また、GeocodingTools ジオプロセシング サービスのインスタンスから送信できる同時バッチ ジオコーディング リクエストの数も構成する必要があります。
ベスト プラクティスとして、ジオコード ユーティリティ サービスのインスタンスの数が、必ず GeocodingTools ジオプロセシング サービスで利用できるインスタンスの数以上になるようにする必要があります。同時バッチ ジオコーディング リクエストの数は、ジオコード ユーティリティ サービスおよびジオプロセシング サービスで利用できるインスタンスの数に比例させて設定する必要があります。たとえば、ジオコード ユーティリティ サービスで利用できるインスタンスが 8 個あり、ジオプロセシング サービスで利用できるインスタンスが 2 個ある場合、同時バッチ ジオコーディング リクエストの推奨数は 4 に設定する必要があります。ジオプロセシング サービスは、実行時に 4 つの同時バッチ ジオコーディング リクエストをジオコード ユーティリティ サービスに送信します。ジオコード ユーティリティ サービスでこれより多くのインスタンスを利用できる場合は、同時バッチ ジオコーディング リクエストの推奨数を適宜調整して、ジオコード ユーティリティサービスのインスタンスを最大限に活用する必要があります。
さらに多くの同時リクエストを使用するように [Esri World Batch Geocoder] を構成することはできません。次の構成は、ユーティリティ サービスとして構成されている他のすべての公開済みロケーター サービスに適用されます。
ジオコード ユーティリティ サービスの同時バッチ ジオコーディング リクエストの推奨数を設定するには、次の手順を使用します。
- 位置を共有している Portal for ArcGIS Directory に移動して、管理権限を持つメンバーとしてログインします。URL の形式は https://webadaptorhost.domain.com/<webadaptorname>/sharing/rest です。
- [Home] > [Portals] > [Self] の順に移動します。
- ページの下部にある [Update] をクリックします。
- [Geocode Service] テキスト ボックスに、現在ポータルで構成されているジオコード ユーティリティ サービスが表示されます。バッチ ジオコーディングが可能なジオコード ユーティリティ サービス (batch プロパティが true に設定) で、同時バッチ ジオコーディング リクエストの推奨数を構成できます。このプロパティで構成するジオコーダーを選択します。[Geocode Service] テキスト ボックスの JSON は、次のような形式です。
[{ "url" : "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer", "northLat" : "Ymax", "southLat" : "Ymin", "eastLon" : "Xmax", "westLon" : "Xmin", "name" : "Esri World Geocoder", "batch": false, "suggest" : true }, { "url" : "https://machine.domain.com/server/rest/services/Locators/USA/GeocodeServer", "name" : "Streetmap Premium USA Geocoder", "placeholder" : "Find address or place", "singleLineFieldName" : "SingleLine", "batch" : true, "placefinding" : true, "suggest" : true, "zoomScale" : 10000 }]
- GeocodingTools ジオプロセシング サービスで使用するすべてのジオコード ユーティリティ サービスにプロパティ numBatchThreads を追加します。numBatchThreads の値を設定するには、まず所定のジオコード ユーティリティ サービスで有効にする同時バッチ ジオコーディング リクエストの数を決定し、その数と等しくなるようにプロパティを設定します。ジオコード ユーティリティ サービスで numBatchThreads を構成するには、batch を true に設定する必要があります。
この例では、Streetmap Premium USA Geocoder ユーティリティ サービスで許容される同時バッチ ジオコーディング リクエストの数は 4 に設定されています。
[{ "url" : "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer", "northLat" : "Ymax", "southLat" : "Ymin", "eastLon" : "Xmax", "westLon" : "Xmin", "name" : "Esri World Geocoder", "batch": false, "suggest" : true }, { "url" : "https://machine.domain.com/server/rest/services/Locators/USA/GeocodeServer", "name" : "Streetmap Premium USA Geocoder", "placeholder" : "Find address or place", "singleLineFieldName" : "SingleLine", "batch" : true, "placefinding" : true, "suggest" : true, "zoomScale" : 10000, "numBatchThreads" : 4 }]
- [Geocode Service] テキスト ボックスで JSON を更新した後、ページの下部にある [Update Organization] をクリックします。
url プロパティが追加されたジオコード ユーティリティ サービスの numBatchThreads は、AnalyzeGeocodeInput および BatchGeocode タスクで geocodeServiceURL として使用する必要があります。ArcGIS REST API タスクから GeocodingTools サービスのツールを実行する方法については、ArcGIS REST API ドキュメントをご参照ください。