Выходной коннектор Добавить объект может использоваться для сохранения данных событий, как записей объектов, через векторный слой сервиса объектов. Этот выходной коннектор создает новую запись объекта для каждой обработанной записи события, перенаправленной на выход. Если целью проектирования является минимизация дублирования записей объектов, рассмотрите возможность использования выходного коннектора Обновить объект. Этот коннектор использует запросы к векторным слоям для добавления новых записей объектов к сервису объектов. Таким сервисом объектов может быть сервис, опубликованный на сайте ArcGIS Server, размещенный на портале ArcGIS Enterprise или в организации ArcGIS Online.
Примечания по использованию
При использовании выходного коннектора Добавить объект имейте в виду следующее:
- Используйте этот выходной коннектор для добавления записей объектов к сервису объектов. В сервисе должна быть включена операция создание.
- Этот выход связывает исходящий адаптер JSON с исходящим транспортом Сервиса объектов.
- Записи событий, отправленные на выходной коннектор, переформатируются адаптером в объект JSON.
- Транспорт включает JSON, отформатированный в запрос REST, который отправляется в сервис объектов.
- Методы устранения проблем с этим выходным коннектором описаны в блоге Esri Community Debug Techniques - Add/Update Feature Outputs.
- Функция Зарегистрировать ArcGIS Server, доступная при настройке нового выходного продукта, позволяет регистрировать подключение к автономному ArcGIS Server, хост-серверу ArcGIS Enterprise или хост-серверу, используемому организацией ArcGIS Online. Подключение к серверу должно быть зарегистрировано в ArcGIS GeoEvent Server, чтобы выбрать папку сервисов, сервис объектов и векторный слой, которые будет использовать выходной коннектор.
- На слои сервисов можно ссылаться, используя опцию Перейти к слою или указывая URL c помощью опции URL слоя сервиса в параметре Ссылка на тип слоя. Обе опции требуют, чтобы сначала было установлено зарегистрированное подключение к хранилищу данных.
- Функция Опубликовать сервис объектов, доступная при настройке нового выходного продукта, позволяет опубликовать сервис объектов непосредственно из GeoEvent Manager. Для этой возможности требуется существующее Определение GeoEvent, схема которого отражает поля, которые должен иметь векторный слой сервиса объектов. Обратите внимание, что ограничения, налагаемые многопользовательской базой геоданных (например, зарезервированные слова и перевод атрибутивных полей в верхний регистр), должны быть отражены в Определении GeoEvent, которое вы используете при публикации нового сервиса объектов. Сервис объектов, который вы публикуете, не будет содержать записей объектов – это пустой сервис объектов, который может использовать GeoEvent Server для добавления или обновления записей объектов, используя данные из обрабатываемых записей событий в реальном времени. Сервер, на котором вы опубликуете новый сервис объектов, должен быть хост-сервером ArcGIS Enterprise или автономным ArcGIS Server с управляемой базой геоданных. GeoEvent Manager нельзя использовать для публикации нового размещенного сервиса объектов в организации ArcGIS Online.
- Значение по умолчанию параметра Создать одномерный JSON не должно изменяться, когда выходные данные настроены для добавления или обновления записей объектов в базе геоданных. При отключении этого параметра, на выходе сохраняется иерархическая структура атрибутивных значений, отправляемая в сервис объектов, которые не принимаются сервисом объектов, и новые записи создаваться не будут.
- Для параметра Удалить устаревшие объекты можно установить Да, если требуется, чтобы выход периодически запрашивал векторный слой сервиса объектов на наличие объектов старше заданного количества минут и удалял идентифицируемые записи объектов. Вместо добавления новых записей и удаления старых, рассмотрите возможность использования выходного коннектора Обновление объектов, который позволяет определять объекты с помощью идентификатора трека, такого как серийный номер или уникальный идентификатор оборудования. Также можно использовать фильтры на стороне клиента, чтобы удалять или скрывать старые записи объектов вместо удаления данных из вашей базы геоданных.
- Если для параметра Удалить устаревшие объекты задано Да, укажите поле даты/времени, которое будет регулярно обновляться, например Last Updated или Last Edited. Если используется поле исторического или фиксированного времени, например, Date Created, можно случайно идентифицировать и удалить записи объектов, которые еще не устарели.
Параметры
Ниже приведены параметры выходного коннектора Добавить объект:
Параметр | Описание |
---|---|
Имя | Описательное имя выходного коннектора, используемое для ссылки в GeoEvent Manager. |
Зарегистрированное подключение к серверу | Подключение ArcGIS Server, ArcGIS Enterprise или ArcGIS Online, зарегистрированное на ArcGIS GeoEvent Server как хранилище данных. Зарегистрированные подключения к серверу кэшируют информацию о сервисах карт/объектов, их слоях и свойствах слоев. |
Ссылка на Тип слоя | Определяет опции для ссылки на слой.
|
Папка (Условия) | Папка сервисов ArcGIS Server, портал ArcGIS Enterprise или папка с элементами ресурсов ArcGIS Online. Параметр показывается, когда для параметра Ссылка на Тип слоя установлено Перейти к слою, и скрыт, когда установлено URL-адрес слоя сервиса. |
Имя сервиса (Условия) | Имя сервиса объектов, в который будут добавлены обработанные данные событий в виде новых записей объектов. Параметр показывается, когда для параметра Ссылка на Тип слоя установлено Перейти к слою, и скрыт, когда установлено URL-адрес слоя сервиса. |
Слой (Условия) |
Имя векторного слоя в сервисе объектов, в который будут добавлены обработанные данные событий в виде новых записей объектов. Параметр показывается, когда для параметра Ссылка на Тип слоя установлено Перейти к слою, и скрыт, когда установлено URL-адрес слоя сервиса. |
URL слоя сервиса (Условия) | URL к слою сервиса. Примечание:Должно быть установлено подключение к хранилищу данных при ссылке к слою сервиса через URL. Слой сервиса должен быть либо доступен для всех, либо опубликован для пользователя, у которого есть учетные данные для подключения к хранилищу данных.Параметр показывается, когда для параметра Ссылка на Тип слоя установлено URL слоя сервиса, и скрыт, когда установлено Перейти к слою. |
Интервал обновления (секунд) | Задает интервал (в секундах), через который будет очищаться кэш обработанных записей событий и запрашиваться создание новых записей объектов в указанном сервисе объектов. Значение по умолчанию для этого параметра – 1 секунда, что означает, что данные из обработанных записей событий будут кэшироваться, и кэш сбрасывается каждую секунду для сохранения данных событий путем создания новых записей объектов. Можно ограничить число транзакционных запросов, выполняемых на сервере базы данных, увеличив интервал обновления, чтобы данные событий хранились в кэше выходных данных в течение более длительного периода времени. |
Генерировать одномерный JSON | Указывает, как иерархия в обработанной записи события преобразовываться выходным адаптером. Сервисы объектов ArcGIS Server не поддерживают значения данных, организованные в массивы, группы или вложенные значения. Значение по умолчанию – приведение таких структур данных к одному строковому значению, имя атрибута которого берется из имени элемента группы или массива, эффективно генерирует одномерное строковое значение JSON.
Примечание:В то время как свойство Добавить выходной коннектор объектов позволяет приводить иерархические значения к простым строкам, рекомендуется использовать Процессор Сопоставление полей для явного сглаживания структуры записи события перед маршрутизацией записи события на выход. Явное отображение значений для разделения полей дискретных атрибутов, тип которых – string, double, date, geometry и т.д помогает обеспечить целостность данных и соответствие ограничениям на значения полей атрибутов, применяемым сервисом объектов. |
Форматированный JSON | Указывает, будет ли строка объекта JSON иметь отступ с пробелом и форматированием новой строки. Этот JSON, иногда называемый PJSON, обычно подходит только при записи в системный файл, содержимое которого может быть просмотрено в текстовом редакторе. По умолчанию Нет.
|
Удалить устаревшие объекты | Определяет, будет ли выходной коннектор периодически запрашивать векторный слой сервиса объектов для объектов старше заданного количества минут и удалять идентифицируемые записи объектов. По умолчанию Нет.
|
Максимальный возраст объекта (минут) (Условия) | Указывает максимальный возраст (в минутах), в течение которого записи объектов могут сохраняться, прежде чем считаться старыми. Значение по умолчанию – 1440 минут, что означает, что записи объектов старше 24 часов будут удалены из сервиса объектов, если для выходных данных настроено удалять старые объекты. Примечание:Выходные данные не должны получать обработанные записи объектов для запуска удаления старых записей объектов. Периодически выполняется запрос для идентификации и удаления старых записей параллельно с добавлением или созданием новых записей объектов.Параметр показывается, когда для свойства Удалить устаревшие объекты задано значение Да, и скрыто, если задано значение Нет. |
Частота удаления устаревших объектов (секунд) (Условия) | Задает интервал (в секундах), через который будут выполняться запросы для идентификации старых записей объектов. Значение по умолчанию – 20 секунд, что означает, что запросы будут выполняться три раза в минуту для проверки записей объектов, значение даты/времени которых указывает, что запись объекта устарела. Параметр показывается, когда для свойства Удалить устаревшие объекты задано значение Да, и скрыто, если задано значение Нет. |
Поле времени в классе объектов (Условия) | Поле атрибута векторного слоя, значение даты/времени которого используется для определения возраста каждой записи объекта. Следует выбрать поле атрибута, значение которого часто обновляется, чтобы избежать случайного удаления записей объектов, которые на самом деле не устарели. Параметр показывается, когда для свойства Удалить устаревшие объекты задано значение Да, и скрыто, если задано значение Нет. |
Максимальное число объектов на транзакцию | Максимальное число записей, включаемое в любой запрос сервиса объектов для создания записей объектов. Если кэш выходов содержит больше заданного максимального количества записей, будет сделано несколько запросов, пока кэш выходов не будет опустошен. Значение по умолчанию равно 500. Рекомендуется сбалансировать размер и сложность каждой записи события с количеством записей событий, обрабатываемых в секунду. Когда записи событий особенно велики, со многими полями атрибутов или большими объектами сложной геометрии, уменьшите значение, чтобы избежать отправки запросов, которые больше, чем может обработать сервис объектов. Однако в зависимости от скорости и объема записей событий, обрабатываемых каждую секунду, установка слишком низкого значения может привести к слишком большому числу запросов транзакций. |