Сервисы геообработки – это способ предоставления мощных аналитических функций ArcGIS в Интернете. Сервисы геообработки содержат задачи геообработки, а каждая задача принимает простые данные из веб-приложения, обрабатывает их и возвращает значимые и полезные выходные данные в форме объектов, карт, отчетов и файлов. С помощью задачи можно вычислить возможную зону эвакуации при аварии на химическом предприятии, прогнозировать направление, силу и скорость урагана, создать отчет по землепользованию и составу почвы в определенной пользователем водосборной области, составить карту участков с историческими сведениями о владении или разработать контроль системы стоков. Возможности использования этих сервисов безграничны.
Сервис геообработки содержит одну или несколько задач геообработки. Задача геообработки -- это инструмент геообработки, выполняющийся на сервере, и его выполнение и выходные данные контролируются сервером. При предоставлении результата геообработки для совместного пользования в виде сервиса геообработки, создается соответствующая задача геообработки из инструмента, которым был создан этот результат. Задача -- это термин, который используется в программных веб-интерфейсах приложений (таких как JavaScript, SilverLight и Flex) для процедур, которые работают на сервере и возвращают результаты.
Работа с сервисами представляет собой комплекс четырех самостоятельных видов деятельности: проектирование, создание, публикация (или совместное пользование) и использование (или потребление). Разделы настоящего руководства по сервисам геообоработки посвящены изучению механизмов создания, публикации и использования. То есть, способам использования ArcGIS for Desktop и веб-программирования для создания и доступа к сервисам геообработки и их задачам. Проектирование сервисов, работа, которую они выполняют, преимущества их использования, взаимодействие с комплексом ваших приложений и соответствие организационным задачам -- все это выходит за рамки настоящего документа, но на протяжении этого руководства вам будут предлагаться практические советы и идеи по проектированию сервисов.
Сервис и задачи, наборы инструментов и инструменты
Если у вас уже есть опыт геообработки в ArcGIS for Desktop, можно задуматься о разработке сервиса геообработки в виде набора инструментов, и о разработке задач в виде инструментов этого набора. Основной отличительной чертой такой организации работы является то, что задача в сервисе геообработки выполняется на сервере и использует ресурсы сервера. В действительности, использование сервиса и его задач в ArcGIS for Desktop настолько похоже на использование набора инструментов и входящих в него инструментов, что вы даже не заметите разницы.
Сервис геообработки, такой как набор инструментов, является всего-навсего контейнером; сам он не выполняет никакой обработки. Однако существуют свойства сервиса, такие как необходимость отображения результатов с помощью соответствующего картографического сервиса, с использованием определенного режима выполнения, количества процессов, местоположений для записи данных и т. д., которые наследуются всеми задачами в рамках сервиса.
При рассмотрении сервисов геообработки и задач легко стирается грань между сервисом и входящими в него задачами, в особенности, если в сервисе содержится всего одна задача. В обыденной речи мы часто употребляем термины 'сервис' и 'задача' как синонимы, и (как правило) это не приводит к путанице. Но на всем протяжении настоящего документа будет постоянно прослеживаться различие между сервисом и задачей.
Создание, публикация и пользование
Создание
Для создания задачи геообработки как правило необходимо создать инструмент геообработки с помощью ModelBuilder или скрипта Python. Вам не надо создавать собственный инструмент, вы можете воспользоваться одним из множества системных инструментов, установленных вместе с ArcGIS.
Публикация
Чтобы опубликовать инструменты, которые вы создали, выполните инструмент в приложении, входящем в пакет ArcGIS for Desktop, таком как ArcMap или ArcGlobe. При выполнении инструмента генерируется результат, который отображается в окне Результаты. Щелкните правой кнопкой мыши результат и выберите пункт Опубликовать как > Сервис геообработки, чтобы открыть пошаговый мастер, с помощью которого можно создать сервис и начальную задачу внутри него. Эта первоначальная задача аналогична инструменту, который генерировал результат. К сервису можно добавить дополнительные результаты. Каждый результат становится задачей, входящей в сервис.
Для публикации сервиса необходимо иметь права на публикацию или доступ с правами администратора к ArcGIS for Server.
Примечание:
Начиная с версии 10.4, только администратор может публиковать сервисы геообработки. Чтобы разрешить издателям публиковать сервисы геообработки, добавьте свойство allowGPAndExtensionPublishingToPublishers к свойствам сайта в ArcGIS Server Administrator Directory и установите это свойство на true. См. Изменение прав доступа на публикацию сервисов геообработки и расширений сервисов.
Используя
Сервисы геообработки и входящие в них задачи используются веб-клиентами. ArcGIS for Desktop и ArcGIS Explorer Desktop – два схожих веб-клиента. Оба клиента позволяют получить доступ и пользоваться сервисом геообработки. При этом не требуется выполнять программирования. Но основными клиентами являются веб-приложения, разработанные с помощью JavaScript, SilverLight и Flex. Эти последние клиенты используют стандартные Интернет-браузеры или специально созданные приложения для отображения географических объектов и отправки запросов. Клиентами, которые могут получать доступ к сервисам ГИС, могут, например, быть веб-браузеры, мобильные приложения и приложения ArcGIS Engine. И, самое главное, сервисы ГИС находятся в открытом доступе, как любые другие ресурсы Интернет. Для поиска ГИС-ресурсов и их непосредственного использования можно воспользоваться перечисленными выше клиентами или поисковиком.