Процессор Обогащение поля (Сервис объектов) может быть использован для обогащения (или соединения) записей событий с атрибутивными данными из слоя пространственных объектов или непространственной таблицы опубликованного сервиса объектов. Атрибуты добавляются в виде новых полей в обработанные записи событий.
Примеры
В примере ниже используется Процессор Обогащение поля (Сервис объектов):
- Процессор Обогащение поля (сервис объектов) может использоваться для придания непространственным данным пространственного компонента. Например, атрибутивные данные датчика могут быть обогащены геометрией (местоположением), поступающей из связанного векторного слоя. Это позволяет визуализировать датчик на карте, когда он получает обновления атрибутов в реальном времени. Затем датчик может быть обозначен на основе изменяющихся атрибутов.
- Используя процессор Обогащение поля (сервис объектов), данные транспортного средства в реальном времени из канала автоматического местоположения транспорта (AVL) могут быть обогащены ежедневной информацией о его водителях, хранящейся в связанном векторном слое. Поскольку водителям назначаются транспортные средства на день, местоположение и статус транспортного средства в реальном времени могут быть дополнены соответствующей информацией о водителе из векторного слоя. Это полезно для мониторинга инцидентов в режиме реального времени.
Примечания по использованию
При работе с Процессором Обогащение объектов (Сервис объектов) имейте в виду следующее:
- Для процессора Обогащение поля (сервис объектов) необходимо указать зарегистрированное подключение к ArcGIS Server; включая папку сервиса, имя сервиса объектов и целевой слой в сервисе объектов. Типы данных для каждого добавленного поля будут перенесены из источника обогащения – они не задаются в ходе конфигурации процессора.
- Обогащение записи события происходит на основе соединения таблиц. Вы можете указать имя поля из таблицы сервиса объектов и имя поля, по которому присоединение может быть выполнено. Хотя фактическое имя поля из таблицы сервиса объектов должно быть предоставлено, поле, по которому будет выполняться объединение, может быть указано либо с использованием имени поля GeoEvent, либо с использованием тега, применённого к полю в определении, связанном с обрабатываемым событием.
- Разделенный запятыми список полей, которые будут включены в обогащение, можно построить, если выбрать поля или ввести их вручную. Вы можете дополнительно указать теги, которые GeoEvent Server должен применять к каждому создаваемому им полю в качестве второго списка значений, разделенных запятыми.
- Процессор работает путем кэширования записей опрошенных объектов. Это повышает производительность и уменьшает общее число запросов, выполняемых к сервису объектов при каждой обработке записи события. При получении записи события процессор опрашивает сервис объектов для соответствующей записи объектов. После опроса запись объекта кэшируется и используется повторно в зависимости от продолжительности времени, заданного параметром Интервал обновления кэша (минуты). Общее число записей объектов, которые можно кэшировать, определяется параметром Максимальное число записей объектов.
- Обогащение данными GeoEvent изменяет схему записей событий, что требует от GeoEvent Server создания нового определения GeoEvent. Новое определение GeoEvent будет управляться GeoEvent Server и будет удалено, если изменения вносятся в процессор или в сервис GeoEvent, в котором используется процессор.
- Картографические сервисы или сервисы объектов ArcGIS Enterprise, ArcGIS Online и ArcGIS Server (автономный) могут использоваться с процессором Обогащение поля (сервис объектов).
- При определении существующего поля для использования в параметре Поле соединения GeoEvent не требуется сначала указывать определение GeoEvent. Выбор определения GeoEvent из меню Определение служит только для сужения списка доступных полей для выбора в меню Поле.
Параметры
Ниже приведены параметры Процессора Обогащение поля (Сервис объектов):
Параметр | Описание |
---|---|
Имя |
Описательное имя процессора, используемое для справочной информации в GeoEvent Manager. |
Процессор |
Указывает выбранный процессор. |
Зарегистрированное подключение к серверу: | Подключение ArcGIS Server, ArcGIS Enterprise или ArcGIS Online зарегистрированное на GeoEvent Server как хранилище данных. Зарегистрированные подключения к серверу кэшируют информацию о сервисах объектов, векторных слоях и свойствах слоев. Укажите зарегистрированное соединение хранилища данных, содержащее сервис объектов, используемый для обогащения данных событий. Примечание:Процессор позволяет вам зарегистрировать новое подключение к хранилищу данных ArcGIS Server, ArcGIS Enterprise или ArcGIS Online при щелчке на Зарегистрировать ArcGIS Server. Кроме того, новое подключение к хранилищу данных можно зарегистрировать в GeoEvent Manager, перейдя на Сайт > Хранилища данных. |
Ссылка на Тип слоя | Определяет тип слоя, на который будет идти ссылка.
|
Папка | Папка сервисов ArcGIS Server или папка портала ArcGIS Enterprise/элемента ресурсов ArcGIS Online, в которой находится картографический сервис или сервис объектов для обогащения записей событий. |
Сервис | Имя сервиса объектов, из которого будут опрашиваться записи объектов. |
Слой | Имя векторного слоя, из которого будут опрашиваться записи объектов. |
URL слоя сервиса (Условия) | URL на слой сервиса объектов, который нужно использовать для обогащения. Параметр показывается, когда для параметра Ссылка на Тип слоя установлено URL слоя сервиса, и скрыт, когда установлено Перейти к слою. |
Поле соединения векторного слоя | Имя поля из векторного слоя, используемого для выполнения атрибутивного соединения с обработанными записями событий. Соединения выполняются по соответствию значений данных в этом поле и в поле, указанном в параметре Поле соединения события GeoEvent. |
Целевые поля | Целевые поля, используемые для обогащенных данных, полученных из векторного слоя. По умолчанию – Новые поля.
|
Поля обогащения | Задает поля из векторного слоя, используемые для обогащения (соединения) обрабатываемых записей событий. Используйте разделенный запятыми список без пробелов, чтобы выбрать несколько полей для обогащения записей событий (например, DriverName,Driver_ID,Route). Примечание:Выбрать поля – это альтернативный метод выбора полей из векторного слоя. |
Поле соединения события GeoEvent | Имя поля из записи события, используемое для выполнения атрибутивного соединения с данными из векторного слоя. Соединения выполняются по соответствию значений данных в этом поле и в поле, выбранном в параметре Поле соединения векторного слоя. Примечание:Используйте меню Определение, чтобы задать определение GeoEvent записи входящего события. Выбор определения GeoEvent сузит число доступных полей для выбора. Используйте меню Поле, чтобы определить имя существующего поля, которое будет использоваться для соединения. |
Теги поля (Условия) | Тег или список тегов, разделенных запятыми, для применения к новым полям, добавленным к обрабатываемой записи события. Порядок тегов должен соответствовать порядку указанных полей обогащения (например, GEOMETRY,TRACK_ID,TIME_START). Примечание:Тег(и) должны уже существовать в GeoEvent Manager, процессор не будет создавать новые теги. Этот параметр отображается, когда Целевое поле установлено как Новые поля, и скрыто, когда выбрано Существующие поля. |
Имя нового определения GeoEvent (Условия) | Имя, которое присваивается для нового Определения GeoEvent. Новое определение GeoEvent объединит схему записи входящего события с новыми полями, используемыми для хранения обогащенных значений из векторного слоя. Этот параметр отображается, когда Целевое поле установлено как Новые поля, и скрыто, когда выбрано Существующие поля. |
Интервал времени обновления кэша | Задает время, в течение которого отдельные записи объектов будут храниться в памяти (кэшироваться) после использования для обогащения записи события. Кэшированные записи объектов используются для обогащения дополнительных записей соответствующих событий. Как только интервал времени обновления кэша для записи объекта будет превышен, процессор очистит запись объекта из своего кэша, чтобы освободить место для дополнительных записей объекта. При получении другой записи события, требующей соединения, в сервис объектов будет отправлен новый запрос на запись объекта. Значение по умолчанию равно 1. Примечание:Кэшированные записи объектов хранятся в памяти. |
Единицы времени обновления кэша | Определяет единицу измерения времени для параметра Интервал времени обновления кэша. По умолчанию это минуты. |
Максимальное число записей объектов | Задает максимальное количество записей объектов, которые должны храниться в памяти (кэшироваться). Когда количество записей объектов превышает значение, указанное в этом параметре, самые старые записи объектов в кэше очищаются, чтобы освободить место для новых записей объектов. Этот процесс происходит независимо от значения, указанного в параметре Интервал времени обновления кэша (минуты). Значение по умолчанию равно 1000. |
Советы и ограничения
При использовании Процессора обогащения поля (Сервис объектов) нужно иметь в виду следующее:
- Рассмотрите возможность нахождения баланса при настройке параметров кэша для этого процессора. Увеличение временного интервала кэширования записей объектов приведет к уменьшению числа запросов, выполняемых к сервису объектов. Это позволит повысить общую пропускную способность процессора, так как записи функций будут объединяться из памяти, а не из повторяющихся сетевых запросов. Компромисс заключается в том, что записи объектов, используемые для соединений, будут более старыми. Рекомендуется увеличить значение параметра Интервал времени обновления кэша (минуты), если записи объектов обновляются не часто. Например, если записи объектов обновляются каждые 72 часа, рекомендуется настроить время обновления кэша таким образом, чтобы оно было почти одинаковым, а не ежеминутным (по умолчанию). Это позволит сократить количество запросов сервиса для данных объектов, которые в противном случае не изменяются и могут храниться в памяти.
- Увеличение значения параметра Максимальное число записей объектов приведет к увеличению количества записей объектов, хранящихся в памяти (кэшированных). Рассмотрите возможность внесения этого изменения, когда значение параметра Интервал времени обновления кэша (минуты) также было увеличено. Записи объектов, которые кэшируются дольше, могут накапливаться в большем количестве в зависимости от скорости поступления данных о событиях. При увеличении значения параметра Максимальное количество записей объектов используется больше системной памяти.
- Уменьшение значения параметра Максимального количества записей объектов часто не рекомендуется. Это может отрицательно сказаться на производительности процессора. Например, установка значения параметра Максимальное количество записей объектов на значение 0 означает, что никакие записи объектов не будут кэшироваться. Если число уникальных записей событий, проходящих через систему, равно 2000 в секунду, то процессору фактически придется выдавать 2000 запросов к сервису объектов в секунду, каждую секунду, чтобы получить записи объектов для обогащения. Это не только снижает общую производительность GeoEvent Server, но и негативно влияет на внешний сервер, который должен обрабатывать большое количество запросов.
- При превышении Максимального количества записей объектов GeoEvent Server удаляет самую старую кэшированную запись объекта, чтобы разместить новую запись объекта. Например, если значение Максимальное число записей объектов равно 100 и обрабатывается 101 уникальная запись события, первая кэшированная запись объекта будет удалена, чтобы освободить место для 101-й записи объекта. Это происходит независимо от превышения Интервала времени обновления кэша.
- Когда этот процессор используется в первый раз в сервисе GeoEvent с большим объемом и высокой скоростью передачи данных, нередко накапливается отставание записей входящих событий. Причина заключается в том, что GeoEvent Server должен выполнить серию запросов к сервису объектов, чтобы создать свой кэш записей объектов для первого соединения. Как только записи объектов начинают накапливаться в кэше, процессор может присоединять последующие записи событий из памяти, тем самым повышая производительность обработки.
- Задержка в сети может оказать существенное влияние на производительность этого процессора. Например, если время, необходимое для извлечения записи объекта, увеличивается со 100 до 200 миллисекунд из-за колебаний задержки в сети, то количество записей событий, которые могут быть обработаны за тот же промежуток времени, будет уменьшено вдвое. Причина в том, что для получения записи объекта требуется в два раза больше времени, чтобы произошло действительное соединение.