Azure Stream Analytics sur IoT Edge

Azure Stream Analytics sur IoT Edge est une version légère de Azure Stream Analytics qui s’exécute directement sur des appareils IoT Edge pour des analyses quasi-en temps réel sur des données générées par l’appareil. Azure Stream Analytics sur IoT Edge offre une faible latence, une résilience, une utilisation efficace de la bande passante et une conformité réglementaire. Vous pouvez déployer une logique d’analyse et de contrôle proche des opérations industrielles tout en utilisant des Azure Stream Analytics basées sur le cloud pour le traitement des données à grande échelle.

Azure Stream Analytics sur IoT Edge s’exécute dans l’infrastructure Azure IoT Edge . Après avoir créé un travail Stream Analytics dans le portail Azure, vous pouvez le déployer et le gérer à l’aide de IoT Hub.

Scénarios courants pour Stream Analytics sur IoT Edge

Le diagramme suivant montre le flux de données entre les appareils IoT et le cloud Azure.

Diagram qui montre le flux de données entre les appareils IoT et le Azure cloud.

Commande et contrôle à faible latence

Les systèmes de sécurité de fabrication doivent répondre aux données opérationnelles avec une latence ultra faible. En utilisant Stream Analytics sur IoT Edge, vous pouvez analyser les données de capteur en quasi temps réel et émettre des commandes lorsque vous détectez des anomalies pour arrêter une machine ou déclencher des alertes.

Connectivité limitée au cloud

Les systèmes stratégiques, tels que l’équipement minier distant, les navires connectés ou le forage offshore, doivent analyser et réagir aux données même si la connectivité cloud est intermittente. En utilisant Stream Analytics, votre logique de diffusion en continu s’exécute indépendamment de la connectivité réseau et vous pouvez choisir ce que vous envoyez au cloud pour un traitement ou un stockage ultérieurs.

Bande passante limitée

Le volume de données produites par les moteurs jet ou les voitures connectées peut être si volumineux que vous devez filtrer ou pré-traiter avant de l’envoyer au cloud. En utilisant Stream Analytics, vous pouvez filtrer ou agréger les données que vous devez envoyer au cloud.

Conformité réglementaire et traitement des données locales

La conformité réglementaire peut nécessiter l’anonymisation locale ou l’agrégation de certaines données avant de l’envoyer au cloud. En utilisant Stream Analytics sur IoT Edge, vous pouvez traiter des données sensibles localement et envoyer uniquement des résultats conformes et transformés vers le cloud.

Tâches de périphérie dans Azure Stream Analytics

Les tâches de périphérie Stream Analytics correspondent à des charges de travail Stream Analytics conteneurisées déployées sur des appareils Azure IoT Edge. Les tâches Edge comportent deux parties :

  • Composant cloud qui gère la définition du travail : vous définissez des entrées, des sorties, des requêtes et d’autres paramètres, tels que des événements hors ordre, dans le cloud.

  • Module s’exécutant sur vos appareils IoT. Le module contient le moteur Stream Analytics et reçoit la définition du travail à partir du cloud.

Stream Analytics utilise IoT Hub pour déployer des travaux edge sur des appareils. Pour plus d’informations, consultez le déploiement IoT Edge.

Diagramme montrant les composants d’un travail de périphérie Azure Stream Analytics.

Limitations des tâches Edge

Les travaux de périphérie Stream Analytics visent la parité entre les déploiements de périphérie et de cloud. Un travail cloud est un travail de Azure Stream Analytics standard qui s’exécute dans Azure, tandis qu’un travail edge s’exécute localement sur un appareil IoT Edge. Stream Analytics prend en charge la plupart des fonctionnalités de langage de requête SQL pour la périphérie et le cloud. Toutefois, les travaux edge ne prennent pas en charge les fonctionnalités suivantes :

  • Fonctions définies par l’utilisateur (UDF) en JavaScript. Des fonctions définies par l’utilisateur sont disponibles en C# pour les tâches IoT Edge (version préliminaire).
  • Agrégats définis par l’utilisateur (UDA).
  • fonctions d’Azure Machine Learning.
  • Format AVRO pour l’entrée/sortie. Les travaux Edge prennent uniquement en charge les formats CSV et JSON.
  • Les opérateurs SQL suivants :
    • PARTITION BY
    • GetMetadataPropertyValue
  • Stratégie d’arrivée tardive

Prérequis pour l'environnement d'exécution et le matériel

Pour exécuter Stream Analytics sur IoT Edge, vous avez besoin d’appareils qui exécutent Azure IoT Edge.

Stream Analytics et Azure IoT Edge utilisent des conteneurs Docker pour fournir une solution portable qui s’exécute sur plusieurs systèmes d’exploitation hôtes (Windows, Linux).

Stream Analytics sur IoT Edge fonctionne sous forme d’images Linux sur les architectures x86-64 et ARM.

Entrées et sorties pour les travaux Stream Analytics Edge

Les travaux Stream Analytics en périphérie reçoivent des entrées et des sorties d’autres modules exécutés sur des appareils IoT Edge. Pour vous connecter à partir et à des modules spécifiques, définissez la configuration du routage au moment du déploiement. Pour plus d’informations, consultez la documentation de composition du module IoT Edge.

Les entrées et sorties prennent en charge les formats CSV et JSON.

Pour chaque flux d’entrée et de sortie que vous créez dans votre travail Stream Analytics, Stream Analytics crée un point de terminaison correspondant sur votre module déployé. Utilisez ces points de terminaison dans les itinéraires de votre déploiement.

Les types d’entrée de flux pris en charge sont les suivants :

  • Edge Hub
  • Centre d’événements
  • IoT Hub

Les types de sortie de flux pris en charge sont les suivants :

  • Edge Hub
  • SQL Database
  • Centre d’événements
  • Stockage Blob/Azure Data Lake Storage Gen2

L’entrée de référence prend en charge le type de fichier de référence, qui fournit des données statiques ou à variation lente pour les recherches. Pour atteindre d’autres destinations de sortie, enchaînez en aval un travail Stream Analytics hébergé dans le cloud. Par exemple, un travail Stream Analytics hébergé sur IoT Edge envoie la sortie au hub Edge, qui peut ensuite envoyer la sortie à IoT Hub. Utilisez un deuxième travail Azure Stream Analytics hébergé dans le cloud avec une entrée de IoT Hub et une sortie vers Power BI ou un autre type de sortie.

Informations sur l’image du module Azure Stream Analytics

Le tableau suivant répertorie les images de module Stream Analytics disponibles sur IoT Edge. Ces informations de version ont été mises à jour le 2020-09-21. Consultez la Microsoft Container Registry pour connaître les dernières versions disponibles.

Image Image de base Architecture Système d’exploitation
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 arm 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

Les images de base répertoriées dans ce tableau utilisent .NET Core 2.1 et 3.0, qui ont atteint la fin de vie. Consultez le registre de conteneurs Microsoft pour connaître la mise à jour de Stream Analytics sur les images IoT Edge basées sur les versions de .NET prises en charge.