Разработка аналитики в реальном времени

На этом уроке вы изучите аналитику в реальном времени для потоковых данных в ArcGIS Velocity. Этот урок основан на уроке Создать канал, в котором вы создали новый канал для загрузки данных корабля AIS. На этом уроке вы настроите аналитику в реальном времени для обогащения потоковых данных AIS данными из U.S. Coast Guard District, где находятся сведения о местоположении каждого корабля.

В этом уроке вы узнаете о процессе создания аналитики в реальном времени, добавлении и настройке инструментов в реальном времени, добавлении выходных данных для передачи данных и сохранении объектов в векторном слое.

Это упражнение подходит для начинающих. У вас должна быть учетная запись ArcGIS Online с доступом к ArcGIS Velocity. Примерное время выполнения этого простого урока - 30 минут.

Создание новой аналитики в реальном времени

Для начала вы создадите аналитику в реальном времени для канала AIS, созданного вами на уроке Создать канал.

  1. В веб-браузере откройте ArcGIS Velocity и войдите с учетными данными ArcGIS Online.

    Для лучшей производительности используйте Google Chrome или Mozilla Firefox.

    Примечание:

    Если вы столкнулись с проблемами при входе, свяжитесь с вашим администратором ArcGIS Online. Может потребоваться назначить вам роль ArcGIS Online с правом использования ArcGIS Velocity. Дополнительные сведения см. в разделе Создание ролей и назначение пользователей.

  2. В главном меню слева щелкните В реальном времени под ANALYTICS для доступа к странице Аналитика в реальном времени.

    На странице Аналитика в реальном времени вы можете создавать новые аналитики в реальном времени, а также просматривать существующие аналитики в реальном времени и управлять ими.

  3. Щелкните Создать аналитику в реальном времени для запуска мастера настройки аналитики.
  4. На странице Создать новую аналитику в реальном времени выберите Существующий канал.

    Создать аналитику в реальном времени, используя существующий канал.

  5. В окне Выбрать существующий канал выберите канал ship_positions_simulation и щелкните Подтвердить.

    Выберите существующий канал для выполнения аналитики в реальном времени.

    Примечание:

    Канал ship_positions_simulation должен быть доступен, если вы завершили урок Создать канал. Если он не доступен, выполните предыдущий урок, прежде чем продолжить.

    Откроется редактор аналитики в реальном времени, где вы можете настроить дополнительные инструменты и выходные данные. По умолчанию редактор отображает выбранный канал и все элементы обработки в линейной последовательной компоновке.

    Редактор Аналитики в реальном времени

Создать аналитику

Хотя в данный момент аналитика содержит только входной канал, вы создадите его, чтобы можно было вернуться к ней позже, если это необходимо.

  1. На странице Новая аналитика в реальном времени щелкните Создать аналитику, чтобы создать новую аналитику в реальном времени.
  2. В окне Создать аналитику настройте Заголовок и Краткую информацию следующим образом.
    1. Для Заголовка введите Обработка в реальном времени AIS.
    2. Для Итоговой информации введите Фильтр и изменение входящих данные AIS с потоковым выходом и хранилищем объектов.
    3. Для Папки выберите папку, в которую хотите сохранить новую аналитику.
  3. Щелкните Создать аналитику, чтобы создать новую аналитику.

    Создать аналитику

    После создания аналитики открывается аналитический редактор, предоставляющий возможность добавлять новые элементы, включая каналы, источники, аналитические инструменты и выходные данные.

    Редактор аналитики после создания аналитики в реальном времени

Добавление и настройка инструмента аналитики

Далее вы добавите инструмент в аналитику Обработка в реальном времени AIS, которые будут выполнять аналитику в реальном времени для канала данных AIS. При помощи Velocity, можно построить последовательность успешных аналитических узлов, которая определяет поток данных из входных данных и выходных.

Вы будете использовать инструмент Присоединить объекты, чтобы обогатить входные данные AIS под названием U.S. Coast Guard District, где находится каждый корабль. В частности, инструмент выполняет пространственное соединение между объектами кораблей и полигональным слоем U.S. Coast Guard District.

  1. Сначала вы добавите инструмент Присоединить объекты к аналитике Обработка в реальном времени AIS и подключиться к каналу ship_positions_simulation.
    1. В меню Добавить узел слева щелкните папку Суммировать данные и выберите инструмент Присоединить объекты, чтобы добавить его в редактор.
    2. Перетащите инструмент Присоединить объекты справа от канала ship_positions_simulation.
    3. Подключите канал ship_positions_simulation к инструменту Присоединить объекты.

      Инструмент Присоединить объекты подключен к каналу

    Далее вы добавите источник для обогащения данных, векторный слой U.S. Coast Guard District, и подключите его к инструменту Присоединить объекты.

  2. Щелкните папку Источники, выберите Векторный слой и настройте источник векторного слоя следующим образом:
    1. Щелкните ниспадающий список Мои ресурсы и выберите По URL-адресу.
    2. В текстовом окне URL слоя введите https://services2.arcgis.com/FiaPA4ga0iQKduv3/arcgis/rest/services/US_Coast_Guard_Districts_new/FeatureServer.
    3. Выберите подслой USCG_Districts (0) и щелкните Далее.

      Настройте источник данных для векторного слоя, используемого для обогащения.

    4. В шаге Фильтр данных настройте параметр Выходная пространственная привязка (дополнительно) как GCS WGS 1984 и щелкните Далее.
    5. В шаге Подтвердить схему согласитесь с представленной схемой и щелкните Далее.

      Velocity отберет данные и создаст начальную схему.

    6. В шаге Определить ключевые поля в Отслеживании выберите Данные не имеют идентификатора трека.

      Этот шаг мастера настройки используется для определения того, как создавать геометрию, дату и время и информацию об отслеживании. Поскольку источником данных является векторный слой ArcGIS, информация о геометрии, дате и времени настраивается автоматически.

    7. Щелкните Завершить, чтобы создать и добавить новый источник данных в редактор.

    Теперь, когда в редактор добавлен новый источник векторного слоя, вы подключите его к другим узлам.

  3. Перетащите источник USCG_Districts под канал ship_positions_simulation и соедините его с инструментом Присоединить объекты.

    Канал и источник данных настроены для аналитики в реальном времени

    К инструменту Присоединить объекты теперь подключены два входа: канал позиций кораблей и векторный слой U.S. Coast Guard District. Далее вы настроите инструмент Присоединить объекты для совершения пространственного присоединения и добавления имени U.S. Coast Guard Districts к данным входящего события.

  4. Дважды щелкните инструмент Присоединить объекты, чтобы открыть его свойства и настроить инструмент следующим образом:
    1. Для Операции соединения выберите Один-к-одному.
    2. Для Сохранить все объекты выберите Сохранить только присоединенные объекты.
    3. В Отношениях отметьте Пространственное и выберите из ниспадающего списка типов пространственных отношений Пересекает.

      Инструмент Присоединить объекты с настроенными опциями пространственных отношений

      На этом уроке вы узнаете, когда какой-либо из кораблей пересекает U.S. Coast Guard District и добавите или присоедините эту контекстную информацию к данным судна, которые затем могут использоваться для повышения ситуационной осведомленности или для дальнейшего анализа. Далее вы настроите параметры Поля суммирования.

    4. Для Атрибута выберите DistrictName.
    5. Для Статистики выберите Любая.
    6. В Выходных именах полей удалите DistrictName_Any и введите DistrictName.
    7. Чтобы добавить поле к операции присоединения, нажмите кнопку Добавить.
    8. Оставьте для параметра Изменение геометрии целевого объекта на геометрию присоединяемого объекта значение Нет.
    9. Щелкните Применить, чтобы сохранить свойства.

      Инструмент Присоединить объекты с настроенными полями суммирования

  5. В редакторе аналитики щелкните Сохранить, чтобы сохранить аналитику AIS Real Time Processing.

Настройка выходного векторного слоя

С обязательным узлом обработки в реальном времени и источником данных для обогащения вы добавите два вывода для хранения и визуализации данных. Вы начнете с добавления и настройки выхода для сохранения данных в новом векторном слое. В следующем разделе вы добавите еще один выход для отправки данных в потоковый слой для визуализации на веб-карте.

  1. В меню Добавить узел слева щелкните папку Выходные данные и выберите Векторный слой (новый), затем настройте параметры следующим образом:
    1. Для Метода хранения данных выберите Сохранять последний объект для каждого значения Track ID.

      Это сохранит только самые последние наблюдения для каждого трека, в данном случае для каждого корабля. Последующие наблюдения перезапишут любые предыдущие наблюдения для каждого трека в выходном векторном слое.

      Примечание:

      Опция Добавить все новые объекты сохраняет все входящие данные, а не только самые последние полученные объекты.

    2. В Каждый раз, когда запускается аналитика выберите Заменять существующие объекты и схему.

      Новый выходной векторный слой с настроенными параметрами

      При такой конфигурации каждый раз, когда аналитика запускается (или перезапускается), любые записи в выходном векторном слое будут удаляться, а схема выходного векторного слоя будет регенерироваться. Это полезно в случае разработки и тестирования аналитики в реальном времени, когда вы добавляете, убираете или изменяете инструменты между запусками аналитики.

      Примечание:

      В производственной среде вы можете изменить выходные данные векторного слоя и выберите Сохранить существующие объекты и схему, чтобы существующие данные сохранялись при перезапуске аналитики.

    3. Щелкните Далее, чтобы перейти к следующему шагу.
    4. В шаге Сохранить для Имени векторного слоя введите Ships_Inside_USCG_Districts.
    5. Для Итоговая информация о векторном слое (дополнительно), введите Корабли US Coast Guard Districts.
    6. Для Папки выберите папку, в которую нужно сохранить векторный слой.
    7. Щелкните Завершить, чтобы сохранить новый выходной векторный слой.

    Шаг сохранения Векторного слоя

    В редактор аналитики добавится новый выходной векторный слой Ships_Inside_USCG_Districts.

  2. Соедините инструмент Присоединить объекты с новым выходным векторным слоем Ships_Inside_USCG_Districts.

    Инструмент Присоединить объекты, соединенный с выходным векторным слоем

  3. Щелкните Сохранить, чтобы сохранить аналитику в реальном времени.

Настройка выходного потокового слоя

После добавления выходных данных нового векторного слоя и сохраненной аналитики в реальном времени вы добавите второй выходной результат, чтобы отправить объекты в потоковый слой, который вы будете визуализировать на веб-карте.

  1. В меню Добавить узел слева щелкните папку Выходные данные и выберите Потоковый слой, затем настройте параметры следующим образом:
    1. В шаге Настройка потокового слоя щелкните Далее, чтобы принять параметры по умолчанию.

      Опции Опубликовать векторный слой, который сохраняет последние наблюдения для каждого Track ID и Выбрать связанный векторный слой для предоставления геометрии при отображении потокового слоя на карте не обязательны. При публикации векторного слоя вы можете опубликовать отдельный векторных слой, который содержит только самые последние наблюдения. Это полезно для явного обозначения текущего положения объекта на веб-карте, в данном случае корабля. Вы можете выбрать связанный векторный слой, чтобы его можно было использовать для обогащения выходного потокового слоя дополнительными полями.

    2. Для Имени потокового слоя введите Ships_Inside_USCG_Districts_stream.
    3. Для Итоговая информация о потоковом слое (дополнительно), введите Потоковые данные Корабли US Coast Guard Districts.
    4. Для Папки выберите папку, в которую нужно сохранить потоковый слой.

    Конфигурация выходного потокового слоя

  2. Щелкните Завершить, чтобы создать выходной потоковый слой.

    В редактор аналитики добавится новый выходной потоковый слой Ships_Inside_USCG_Districts_stream.

  3. Соедините инструмент Присоединить объекты с выходным потоковым слоем Ships_Inside_USCG_Districts_stream.

    Инструмент Присоединить объекты, соединенная с новым выходным потоковым слоем

  4. Щелкните Сохранить, чтобы сохранить аналитику в реальном времени.

Запустите аналитику в реальном времени

Аналитика в реальном времени теперь включает необходимые каналы, источник данных, инструмент и выходные данные, и готова к запуску. Когда аналитика начнет работу или будет запущена, она получит данные смоделированного корабля и присоединит к нему название U.S. Coast Guard District, в котором в настоящее время находится каждый корабль, и запишет данные о событиях в выходной векторный слой и выходной потоковый слой.

  1. В правом верхнем углу редактора аналитики щелкните Начать.

    Как и каналы, аналитика в реальном времени является длительной задачей и будет продолжать выполняться пока не будет остановлена.

    Текст на кнопке Старт изменится на Остановить инициализацию, а затем на Остановить. Это свидетельствует о том, что аналитика в реальном времени исполняется сейчас.

  2. Посматривайте статус и отслеживайте аналитику AIS Real Time Processing на странице Аналитика в реальном времени.

Просмотр показателей аналитики в реальном времени

Метрики вашей запущенной аналитики можно посмотреть в Velocity. Показатели предоставляют среднюю оценку событий для каждого элемента и отображают среднюю оценку для каждого элемента за прошедшие 5 минут проведения аналитики. Кроме того, при работе аналитики в реальном времени, метрики показывают вычислительную нагрузку аналитики. Более подробно см. Показатели аналитики в реальном времени.

  1. В аналитике в реальном времени AIS Real Time Processing включите кнопку Метрики, чтобы посмотреть показатели для каждого узла аналитики.
  2. Просмотрите метрики для каждого узла в аналитике в реальном времени. Обратите внимание на количество обрабатываемых каждым узлом событий в секунду, общее количество входящих и исходящих наблюдений и использование вычислений.

    Метрики для аналитики в реальном времени

Изучение выходного слоя

Теперь, когда аналитика в реальном времени работает и отправляет данные о событиях в выходные данные векторного и потокового слоев, теперь вы можете добавлять эти выходные слои на веб-карту непосредственно в аналитике в реальном времени.

  1. В главном меню щелкните Каналы в разделе Входные, чтобы перейти к странице Каналы.
  2. Если канал ship_positions_simulation еще не запущен, щелкните Пуск.
  3. В главном меню щелкните В реальном времени под ANALYTICS для доступа к странице Аналитика в реальном времени.
  4. Если аналитика в реальном времени AIS Real Time Processing еще не запущена, щелкните Пуск.
  5. После запуска аналитики в реальном времени Обработка в реальном времени AIS щелкните значок карандаша, чтобы отредактировать аналитику.
  6. Щелкните правой кнопкой мыши выходной векторный слой Ships_Inside_USCG_Districts и выберите Открыть в Map Viewer.

    Открыть векторный слой в Map Viewer

    Откроется новая вкладка браузера Map Viewer в ArcGIS Online и векторный слой добавится на карту.

  7. Измените базовую карту на Темно-серое полотно.

    Векторный слой на веб-карте

  8. Щелкните Добавить и выберите Добавить слой из интернета.
  9. Добавьте векторный слой Coast Guard Districts, используя URL адрес https://services2.arcgis.com/FiaPA4ga0iQKduv3/arcgis/rest/services/US_Coast_Guard_Districts_new/FeatureServer.

    Векторный слой на веб-карте с границами U.S. Coast Guard Districts

  10. Щелкните один из объектов кораблей, чтобы открыть всплывающее окно и изучить его атрибуты. Каждое наблюдение было обогащено названием U.S. Coast Guard District (DistrictName) в котором корабль находится в данный момент.

    USCG District, внутри которого находится выбранный корабль

Что дальше

Вы создали аналитику в реальном времени при помощи ArcGIS Velocity и просмотрели выходные объекты на веб-карте. Затем вы добавили инструмент Присоединить объекты для пространственного обогащения и ассоциации контекстной информации с поступающими данными наблюдений.

Далее изучите урок Дизайн аналитики больших данных, где описывают основы работы с аналитикой больших данных в Velocity. Если вам интересно использование выражений Arcade, см. раздел Использование выражений Arcade.