Azure Stream Analytics в IoT Edge

Azure Stream Analytics на IoT Edge — это облегченная версия Azure Stream Analytics, которая работает непосредственно на устройствах IoT Edge и предназначена для анализа данных, генерируемых устройствами, почти в реальном времени. Azure Stream Analytics на IoT Edge обеспечивает низкую задержку, устойчивость, эффективное использование пропускной способности и соответствие нормативным требованиям. Вы можете развернуть аналитику и логику управления близко к промышленным операциям при использовании облачных Azure Stream Analytics для крупномасштабной обработки данных.

Azure Stream Analytics в IoT Edge выполняется в платформе Azure IoT Edge . После создания задания Stream Analytics на портале Azure его можно развернуть и управлять им с помощью Центр Интернета вещей.

Распространенные сценарии для Stream Analytics в IoT Edge

На следующей схеме показан поток данных между устройствами Интернета вещей и облаком Azure.

Diagram, показывающий поток данных между устройствами Интернета вещей и Azure cloud.

Команда и управление с низкой задержкой

Производственные системы безопасности должны реагировать на операционные данные с низкой задержкой. Используя Stream Analytics в IoT Edge, вы можете анализировать данные датчика практически в режиме реального времени и выдавать команды при обнаружении аномалий для остановки компьютера или активации оповещений.

Ограниченное подключение к облаку

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

Ограниченная пропускная способность

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

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

Для обеспечения соответствия нормативным требованиям может потребоваться локально анонимизировать или агрегировать некоторые данные перед отправкой в облако. С помощью Stream Analytics в IoT Edge вы можете обрабатывать конфиденциальные данные в локальной среде и отправлять только соответствующие результаты, преобразованные в облако.

Пограничные задания в Azure Stream Analytics

Пограничные задания Stream Analytics — это контейнерные рабочие нагрузки Stream Analytics, развернутые на устройствах Azure IoT Edge. Задания edge имеют две части:

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

  • Модуль, работающий на устройствах Интернета вещей. Модуль содержит подсистему Stream Analytics и получает определение задания из облака.

Stream Analytics использует Центр Интернета вещей для развертывания периферийных заданий на устройства. Дополнительные сведения см. в статье о развертывании IoT Edge.

Схема, на которой показаны компоненты пограничного задания Azure Stream Analytics.

Ограничения заданий Edge

Пограничные задания Stream Analytics предназначены для обеспечения паритета между развертываниями на периферии и в облаке. Облачное задание — это стандартное задание Azure Stream Analytics, которое выполняется в Azure, а периферийное задание выполняется локально на устройстве IoT Edge. Stream Analytics поддерживает большинство функций языка запросов SQL для пограничных и облачных компонентов. Однако периферийные задания не поддерживают следующие функции:

  • Определяемые пользователем функции (UDF) в JavaScript. Пользовательские функции доступны в C# для заданий IoT Edge (предварительная версия).
  • Определяемые пользователем агрегаты (UDA).
  • Функции Машинное обучение Azure
  • Формат AVRO для входных и выходных данных. Задания Edge поддерживают только форматы CSV и JSON.
  • Следующие операторы SQL:
    • PARTITION BY
    • GetMetadataPropertyValue
  • Политика позднего прибытия

Требования к среде выполнения и оборудованию

Чтобы запустить Stream Analytics на IoT Edge, требуются устройства, которые выполняют Azure IoT Edge.

Stream Analytics и Azure IoT Edge используют контейнеры Docker для предоставления переносимого решения, работающего в нескольких операционных системах узла (Windows, Linux).

Stream Analytics на IoT Edge запускается в виде образов Linux на архитектурах x86-64 и ARM.

Входные и выходные данные для пограничных заданий Stream Analytics

Задания Stream Analytics на устройствах IoT Edge получают входные и выходные данные от других модулей, работающих на этих устройствах. Чтобы подключиться к определенным модулям, задайте конфигурацию маршрутизации во время развертывания. Дополнительные сведения см. в документации по компоновке модуля IoT Edge.

Входные и выходные данные поддерживают форматы CSV и JSON.

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

Поддерживаемые типы входных данных потока:

  • Центр Edge
  • Центр событий
  • Центр Интернета вещей

Поддерживаемые форматы выходных данных потока:

  • Центр Edge
  • База данных SQL
  • Центр событий
  • Хранилище BLOB-объектов/Azure Data Lake Storage 2-го поколения

Ссылочный ввод поддерживает тип ссылочного файла, который предоставляет статические или медленно изменяющиеся данные для поиска. Чтобы направить данные в другие выходные назначения, подключите размещенное в облаке задание Stream Analytics ниже по потоку. Например, задание Stream Analytics, размещенное на IoT Edge, отправляет выходные данные в Edge Hub, которое затем может отправлять выходные данные в Центр Интернета вещей. Используйте второе облачное задание Azure Stream Analytics с входными данными из Центр Интернета вещей и выходными данными для Power BI или другого типа вывода.

Сведения об образе модуля Azure Stream Analytics

В следующей таблице перечислены доступные образы модулей Stream Analytics на IoT Edge. Информация об этой версии последний раз была обновлена 21.09.2020. Проверьте реестр контейнеров Microsoft для последних доступных версий.

Изображение Базовый образ Architecture OS
mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-amd64 mcr.microsoft.com/dotnet/core/runtime:2.1.13-alpine amd64 Linux
mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm32v7 mcr.microsoft.com/dotnet/core/runtime:2.1.13-bionic-arm32v7 рука Linux
mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm64 mcr.microsoft.com/dotnet/core/runtime:3.0-bionic-arm64v8 arm64 Linux

Important

Базовые образы, перечисленные в этой таблице, используют .NET Core 2.1 и 3.0, срок поддержки которых истёк. Проверьте реестр контейнеров Microsoft на наличие обновленных образов Stream Analytics в IoT Edge, созданных на основе поддерживаемых версий .NET.