Полезная функция порталов ArcGIS Enterprise – это возможность добавлять на карту адреса из файлов с разделителями (CSV), Microsoft Excel м таблиц. Чтобы разрешить это, вы должны убедиться, что портал имеет действительный сервис локатора (поиска адресов) и хост-сервер (для чтения адресов и отправки их в сервис локатора).
Прежние версии:
Сервисы локаторов раньше называли сервисами геокодирования. В некоторых частях пользовательского интерфейса и API термин «сервис геокодирования» до сих пор используется для целей обратной совместимости.
Установка сервиса локатора
Необходимо установить сервис локатора для портала для геокодирования большого числа адресов, например, в случае добавлении в Map Viewer CSV-файла с адресами. Вы можете воспользоваться сервисом локатора организации ArcGIS Online или опубликовать собственный сервис локатора (геокодирования на одном из интегрированных серверов портала или отдельном GIS Server.
Сервис локатора ArcGIS Online со включённым пакетным геокодированием должен быть настроен, чтобы пользователи могли создавать виды локаторов. Если удалить прокси сервис геокодирования ArcGIS Online, виды локаторов перестанут работать. Если вы настроили сервис локатора ArcGIS Online до того, как обновили ArcGIS Enterprise 10.6.1, тогда надо сначала отключить и снова включить служебный сервис геокодирования ArcGIS Online, чтобы он поддерживал виды локаторов.
См. Конфигурация служебных сервисов для получения более подробной информации о настройке локатора на портале, чтобы включить геокодирование. Информацию о настройке вашего собственного сервиса см. в следующем подразделе.
Настройка вашего собственного сервиса локатора
Порталы ArcGIS Enterprise используют ArcGIS World Geocoding Service, размещённый в ArcGIS Online по умолчанию. Если ваша организация имеет собственные данные локатора, которые используются при нахождении адресов и названий мест, или у вашего портала нет доступа к ArcGIS Online ArcGIS Online, опубликуйте локатор (геокодер) и настройте его, чтобы он использовался в качестве локатора портала.
Включите функцию Предложить сервиса локатора, если вы хотите, чтобы при поиске в Map Viewer предлагались возможные варианты адресов или названий мест.
- Следуйте инструкциям в разделе Создание локатора адресов в справке ArcMap, чтобы создать локатор из ваших данных. Если вы желаете видеть предложения в Map Viewer, при создании локатора отметьте опцию Предложить в инструменте Создать локатор адресов.
- Опубликуйте локатор как сервис, щёлкнув правой кнопкой мыши по локатору в дереве Каталога в ArcMap или ArcCatalog и выбрав Опубликовать как сервис
Более подробно о публикации сервисов смотри в разделе Как опубликовать сервис справочной системы ArcGIS Server.
- Если при создании локатора вы не включили функцию Предложить, вы можете включить ее на сервисе локатора после его публикации. Откройте Редактор сервисов для данного сервиса в ArcMap или в ArcGIS Server Manager, щёлкните вкладку Возможности и отметьте опцию Предложить.
- Настройте получившийся сервис как локатор на вашем портале. Перейдите в Организация > Редактировать настройки > Служебные сервисы.
Настройте реляционное хранилище данных с помощью GIS Server
Перед тем, как назначить интегрированный GIS Server хост-сервером портала, следует сначала настроить для него ArcGIS Data Store в качестве реляционного хранилища данных.
- Установите ArcGIS Data Store.
- Создайте реляционное хранилище данных.
При создании реляционного хранилища данных, укажите адрес URL того сайта GIS Server, который вы хотите использовать в качестве хост-сервера портала.
Интегрируйте GIS Server с вашим порталом
Перед тем, как назначить сайт GIS Server хост-сервером, вам следует сначала интегрировать его с порталом. Сайт GIS Server, который вы интегрируете с порталом, должен иметь необходимые настройки для обмена данными по протоколам HTTP и HTTPS или только HTTPS.
Подробные инструкции см. в разделе Интеграция сайта ArcGIS Server с вашим порталом.
Назначение хост-сервера
Укажите сайт GIS Server, который вы только что интегрировали со своим порталом, как хост-сервер.
- Выберите сайт GIS Server, из ниспадающего списка в разделе Хост-сервер на панели Сервер.
- Щелкните Сохранить.
Настройка инструмента Геокодировать местоположения из таблицы для использования геокодера Esri World Batch Geocoder и видов локаторов
По умолчанию, сервис Esri World Batch Geocoder публикуется в пределах организации. Виды локаторов для Esri World Batch Geocoder не находятся в общем доступе по умолчанию. Чтобы удовлетворять запросы на пакетное геокодирование через Esri World Batch Geocoder и для видов локаторов, используя инструмент Геокодировать адреса из таблицы или используя Геокодировать таблицу, вам необходимо предоставить общий доступ к сервису для всех.
- Перейдите на вкладку Мои ресурсы на странице содержания.
- Щёлкните локатор AGO World Geocoder или соответствующий вид локатора, который надо опубликовать, и откройте страницу описания элемента.
- Щёлкните Опубликовать на вкладке Обзор и поставьте отметку Все.
- Щелкните OK.
Используя Esri World Batch Geocoder или вид локатора в инструменте Геокодировать местоположения из таблицы, вы расходуете кредиты организации ArcGIS Online, которая использовалась при настройке локатора (служебного сервиса геокодирования) портала. Число конкурирующих запросов пакетного геокодирования Esri World Batch Geocoder нельзя настроить и всегда равно единице. С помощью любого другого сервиса локатора инструмент Геокодировать местоположения из таблицы не будет тратить кредиты, а дополнительные локаторы можно настроить для отправления нескольких конкурирующих запросов пакетного геокодирования.
Добавьте ведение журнала для получения дополнительный сведений во время пакетного геокодирования
По умолчанию уровень сообщений для сервиса геообработки Инструментов геокодирования установлен на Предупреждение. Для более детальных сообщений об ошибках и улучшенного обновления статуса задания вашего пакетного геокодирования, вы можете установить уровень ведения журнала сервиса геообработки Инструментов геокодирования на Информация.
- Перейдите к Server Manager для вашего размещенного сервера.
- Щелкните папку Utilities в директории Server Manager.
- Щелкните сервис геообработки GeocodingTools.
- Щелкните баннер Параметры слева и измените Уровень сообщений на Информация. Затем щелкните кнопку Сохранить и перезапустить сверху в правом углу.
Изменение уровня ведения журнала на Информация может вызвать небольшое снижение производительности, но предоставит лучшую возможность отслеживания процесса выполнения задания и больший объем информации о возможных ошибках, если они случатся. Эти преимущества можно увидеть как для инструмента Геокодировать адреса из таблицы, так и для инструмента Геокодировать таблицу.
Настройте предложенное число параллельных пакетных запросов геокодирования для вашего локатора
Локатор портала также может быть использован сервисом геообработки GeocodingTools, запущенным на интегрированном сайте GIS Server. Сервис геообработки может посылать множество параллельных запросов к служебному сервису геокодирования, чтобы ускорить общее выполнение пакетного геокодирования. Число параллельных пакетных запросов, выполняемых сервисом геообработки, может быть настроено администратором портала. Если сервис геообработки выполняет обширные параллельные пакетные запросы к локатору, то сервис геокодирования может работать медленно, что приведёт к увеличению ошибок при запуске сервиса геообработки. По этой причине администратор должен задать число экземпляров, используемых сервисом геообработки, на основе числа экземпляров, доступных для служебного сервиса локатора, а также должен настроить число параллельных пакетных запросов геокодирования, которые могут быть выполнены из любого экземпляра сервиса геообработки GeocodingTools.
Настоятельно рекомендуется, чтобы число экземпляров сервиса локатора всегда было больше или равно числу экземпляров, доступных сервису геообработки GeocodingTools. Число параллельных пакетных запросов геообработки должно быть задано пропорционально числу экземпляров, доступных как для сервиса локатора, так и для сервиса геообработки. Например, если доступно восемь экземпляров для сервиса локатора и два экземпляра для сервиса геообработки, рекомендуется установить четыре параллельных пакетных запроса геообработки. При выполнении сервиса геообработки, он будет посылать четыре параллельных запроса геокодирования к сервису локатора. В том случае, если доступно больше экземпляров для сервиса локатора, рекомендуемое число параллельных пакетных запросов геообработки должно быть увеличено соответственно использованию экземпляров сервиса локатора.
Обратите внимание, что Esri World Batch Geocoder нельзя настроить на использование большего количества конкурирующих запросов. Следующая конфигурация применима ко всем опубликованным сервисам локаторов, настроенным, как служебные сервисы.
Чтобы настроить предложенное число параллельных пакетных запросов геокодирования для вашего сервиса локатора, используйте следующие шаги:
- Перейдите к общему местоположению Portal for ArcGIS Directory и войдите с учётной записью участника портала, имеющего административные права доступа. URL-адрес имеет вид https://webadaptorhost.domain.com/<webadaptorname>/sharing/rest.
- Перейдите к Домой > Порталы > Авто.
- Щёлкните Обновить в нижней части страницы.
- В текстовом поле Сервис геокодирования вы увидите служебные сервисы геокодирования, настроенные в текущий момент времени для портала. Для сервисов, которые позволяют выполнять пакетное геокодирование (это можно определить по значению свойства batch, установленного на true), вы можете настроить рекомендуемое число параллельных пакетных запросов геообработки. Выберите сервис, который вы хотите настроить с помощью этого свойства. 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 }]
- Добавьте свойство numBatchThreads ко всем сервисам локатора, которые вы хотите использовать с сервисом геообработки GeocodingTools. Для того, чтобы установить значение numBatchThreads, сначала определите число параллельных пакетных запросов геообработки, которые вы хотите включить для данного сервиса локатора, и задайте свойство равным этому числу. Обратите внимание, что для настройки numBatchThreads сервиса локатора значение batch должно быть true.
В данном примере число разрешённых параллельных пакетных запросов геокодирования для служебного сервиса Streetmap Premium USA Geocoder задано равным четырём.
[{ "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 }]
- После того как вы обновили JSON в текстовом поле Сервис геокодирования, щёлкните Обновить организацию в нижней части страницы.
Используйте url сервиса локатора вместе с добавленным свойством numBatchThreads как geocodeServiceURL в задачах AnalyzeGeocodeInput и BatchGeocode. Дополнительную информацию о выполнении инструментов внутри сервиса GeocodingTools через задачи ArcGIS REST API см. в документации ArcGIS REST API.