Поделиться через


Источники событий службы "Аналитика временных рядов Azure" 2-го поколения

Примечание.

Служба "Аналитика временных рядов" будет прекращена 7 июля 2024 года. Рассмотрите возможность переноса существующих сред в альтернативные решения как можно скорее. Дополнительные сведения об устаревании и миграции см. в нашей документации.

Среда Аналитики временных рядов 2-го поколения может иметь до двух источников событий потоковой передачи. В качестве входных данных поддерживаются два типа ресурсов Azure:

События должны отправляться в формате JSON в кодировке UTF-8.

Создание или изменение источников событий

Источник событий — это связующее звено между центром и средой Аналитики временных рядов 2-го поколения, а также отдельный ресурс типа Time Series Insights event source, создаваемый в группе ресурсов. Ресурсы Центра Интернета вещей или Центра событий могут находиться в той же подписке Azure, что и среда Аналитики временных рядов 2-го поколения, или в другой. Однако рекомендуется размещать среду Аналитики временных рядов и Центр Интернета вещей или Центр событий в одном регионе Azure.

Для создания, изменения и удаления источников событий среды можно использовать портал Azure, Azure CLI, шаблоны ARM и REST API.

Предупреждение

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

Параметры запуска

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

Имя Описание Пример шаблона ARM
EarliestAvailable Прием всех существующих данных, хранящихся в Центре Интернета вещей или в Центре событий. "ingressStartAt": {"type": "EarliestAvailable"}
EventSourceCreationTime Начало приема данных после создания источника событий. Все ранее существовавшие данные, которые были переданы до создания источника событий, будут проигнорированы. Это значение по умолчанию на портале Azure. "ingressStartAt": {"type": "EventSourceCreationTime"}
CustomEnqueuedTime Ваша среда будет получать данные начиная с настраиваемого времени постановки в очередь (в формате UTC). Все события, которые были помещены в очередь в Центре Интернета вещей или Центре событий в указанное вами время постановки в очередь или позже, будут приняты и сохранены. Все события, поступившие до этого времени, будут проигнорированы. Обратите внимание, что время постановки в очередь — это время (в формате UTC), когда событие поступило в Центр Интернета вещей или в Центр событий. Оно отличается от пользовательского свойства метки времени, которое находится в тексте события. "ingressStartAt": {"type": "CustomEnqueuedTime", "time": "2021-03-01T17:00:00.20Z"}

Внимание

  • Если вы выберете EarliestAvailable при наличии большого количества существующих данных, может возникнуть большая первоначальная задержка, пока среда Аналитики временных рядов 2-го поколения будет их обрабатывать.
  • В конечном итоге задержка должна уменьшиться по мере индексации данных. Если уровень задержки не снижается, отправьте запрос в службу поддержки на портале Azure.
  • EarliestAvailable

Схема EarliestAvailable

  • EventSourceCreationTime

Схема EventSourceCreationTime

  • CustomEnqueuedTime

Схема CustomEnqueuedTime

Рекомендации по приему потоковой передачи

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

  • Настройте среду Аналитики временных рядов 2-го поколения, а также Центр Интернета вещей и (или) Центры событий в одном регионе Azure. Хотя источник событий можно настроить в отдельном регионе, этот сценарий не поддерживается, и мы не можем гарантировать в нем высокий уровень доступности.

  • Не превышайте пределы пропускной способности вашей среды и ограничения на количество секций.

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

  • Используйте потоковый прием только для последних данных и данных практически в реальном времени. Потоковая передача исторических данных не поддерживается.

  • Ознакомьтесь со сведениями о том, как свойства будут экранированы и каким образом данные JSON будут преобразованы в плоскую структуру и сохранены.

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

Внимание

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

Производственные рабочие нагрузки

В дополнение к приведенным выше рекомендациям мы рекомендуем реализовать описанные ниже решения для критически важных для бизнеса рабочих нагрузок.

  • Увеличьте срок хранения данных Центра Интернета вещей или Центра событий до семи дней.

  • Создайте оповещения среды на портале Azure. Оповещения, основанные на метриках платформы, позволяют проверять сквозное поведение конвейера. Инструкции по созданию оповещений и управлению ими приведены здесь. Предлагаемые условия оповещения:

    • IngressReceivedMessagesTimeLag больше 5 минут.
    • Значение IngressReceivedBytes равно 0.
  • Обеспечьте распределение нагрузки приема данных от секций Центра Интернета вещей и Центра событий.

Прием данных за прошедшие периоды

Сейчас использование конвейера потоковой передачи для импорта данных за прошедшие периоды не поддерживается в Аналитике временных рядов 2-го поколения. Чтобы импортировать в среду данные за прошедшие периоды, следуйте приведенным ниже рекомендациям.

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

Метка времени источника событий

При настройке источника событий вам будет предложено указать свойство timestamp. Свойство timestamp используется для отслеживания событий с течением времени. Это время, которое будет использоваться в качестве метки времени $ts в API запросов и для отображения рядов в обозревателе Аналитики временных рядов. Если свойство не предоставлено при создании или если в событии отсутствует свойство timestamp, в качестве значения по умолчанию будет использоваться время постановки в очередь Центра Интернета вещей или Центров событий. Значения свойства метки времени хранятся в формате UTC.

Как правило, пользователи настраивают свойство timestamp и используют время, когда датчик или тег генерировали показание, а не время постановки центра в очередь по умолчанию. Это особенно необходимо, если устройства постоянно теряют связь, а пакет задержанных сообщений перенаправляется в Аналитику временных рядов 2-го поколения.

Если пользовательская метка времени находится внутри вложенного объекта JSON или массива, необходимо правильно указать имя свойства, следуя соглашению о преобразовании и экранировании имен. Например, метку времени источника событий для полезных данных JSON, показанную здесь, нужно указывать следующим образом: "values.time".

Смещение часового пояса

Метки времени должны отправляться в формате ISO 8601 и храниться в формате UTC. Если указано смещение часового пояса, будет применено смещение, а затем время будет сохранено и возвращено в формате UTC. Если смещение неправильно отформатировано, оно будет пропущено. Если в решении нет контекста исходного смещения, можно отправить данные о смещении в дополнительное отдельное свойство события, чтобы убедиться, что оно будет сохранено и что приложение сможет ссылаться на него в ответе на запрос.

Смещение часового пояса должно иметь один из следующих форматов:

±ЧЧММZ
±ЧЧ:ММ
±ЧЧ:ММZ

Следующие шаги