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