Tutoriel : obtenir des aperçus à partir de vos données traitées
Dans ce tutoriel, vous remplissez un Tableau de bord en temps réel pour capturer des aperçus à partir des données OPC UA que vous avez envoyées à Event Hubs dans le tutoriel précédent. Avec Intelligence en temps réel de Microsoft Fabric, vous apportez vos données provenant d’Event Hubs dans Microsoft Fabric et vous les mappez dans une base de données KQL qui peut être une source pour les tableaux de bord en temps réel. Ensuite, vous créez un tableau de bord pour afficher ces données dans des vignettes visuelles qui capturent des insights et montrent les valeurs au fil du temps.
Ces opérations sont les dernières étapes de l’exemple d’expérience du tutoriel de bout en bout, qui va du déploiement d’Opérations Azure IoT en périphérie à l’obtention d’insights à partir de ces données d’appareil dans le cloud.
Prérequis
Avant de commencer ce tutoriel, vous devez effectuer Tutoriel : envoyer une télémétrie de ressources au cloud en utilisant un flux de données
Vous avez également besoin d’un abonnement Microsoft Fabric. Dans votre abonnement, vous devez accéder à un espace de travail avec des autorisations de Contributeur ou supérieures.
En outre, votre locataire Fabric doit autoriser la création de tableaux de bord en temps réel. Il s’agit d’un paramètre qui peut être activé par l’administrateur de votre locataire. Pour plus d’informations, consultez Activer les paramètres de locataire dans le portail d’administration.
Quel problème résoudrons-nous ?
Une fois que vos données OPC UA sont arrivées dans le cloud, vous aurez beaucoup d’informations à analyser. Vous pouvez organiser ces données et créer des rapports contenant des graphiques et des visualisations pour dériver des insights de ces données. Les étapes décrites dans ce tutoriel vous montrent comment connecter ces données à Real-Time Intelligence et comment créer un tableau de bord en temps réel.
Ingérer des données dans Intelligence en temps réel
Dans cette section, vous configurez un Eventstream Microsoft Fabric pour connecter votre hub d’événements à une base de données KQL dans Intelligence en temps réel. Ce processus inclut la configuration d’un mappage de données pour transformer les données de la charge utile de son format JSON en colonnes dans KQL.
Créer un flux d’événements
Dans cette section, vous créez un Eventstream qui sera utilisé pour importer vos données depuis Event Hubs dans Intelligence en temps réel de Microsoft Fabric, puis dans une base de données KQL.
Commencez par accéder à l’expérience Intelligence en temps réel dans Microsoft Fabric, puis ouvrez votre espace de travail Fabric.
Suivez les étapes de Créer un flux d’événements dans Microsoft Fabric pour créer une ressource de flux d’événements dans votre espace de travail.
Une fois le flux d’événements créé, vous voyez l’éditeur principal où vous pouvez commencer à construire le flux d’événements.
Ajouter un hub d’événements comme source
Ajoutez ensuite votre hub d’événements du tutoriel précédent comme source de données pour l’élément Eventstream.
Suivez les étapes de Ajouter une source Azure Event Hubs à un Eventstream pour ajouter la source d’événements. Gardez à l’esprit les points suivants :
- Vous allez créer une connexion cloud avec une authentification par clé d’accès partagé.
- Vérifiez que l’authentification locale est activée sur votre hub d’événements. Vous pouvez définir cela sur sa page Vue d’ensemble dans le portail Azure.
- Pour Groupe de consommateurs, utilisez la sélection par défaut ($Default).
- Pour Format des données, choisissez Json (il peut déjà être sélectionné par défaut).
Une fois ce flux terminé, le hub d’événements Azure est visible dans l’affichage en direct de l’Eventstream en tant que source.
Vérifier le flux de données
Suivez ces étapes pour vérifier le travail effectué jusqu’à présent et que les données circulent dans l’Eventstream.
Démarrez votre cluster là où vous avez déployé Opérations Azure IoT dans des tutoriels antérieurs. Le simulateur OPC PLC que vous avez déployé avec votre instance Opérations Azure IoT doit commencer à s’exécuter et à envoyer des données à MQTT broker. Vous pouvez vérifier cette partie du flux en utilisant mqttui, comme décrit dans Vérifier que les données circulent.
Attendez quelques minutes que les données se propagent. Ensuite, dans l’affichage en direct d’Eventstream, sélectionnez la source AzureEventHub et actualisez l’aperçu des données. Vous devez voir des données JSON provenant du simulateur commencer à apparaître dans la table.
Conseil
Si les données ne sont pas arrivées dans votre Eventstream, vous pouvez examiner l’activité de votre Event Hub pour vérifier qu’il reçoit des messages. Ceci vous aidera à isoler la section du flux à déboguer.
Préparer des ressources KQL
Dans cette section, vous créez une base de données KQL dans votre espace de travail Microsoft Fabric pour l’utiliser comme destination de vos données.
Suivez les étapes décrites dans Créer un Eventhouse pour créer un Eventhouse Real-Time Intelligence avec une base de données KQL enfant. Vous devez effectuer seulement ce qui est décrit dans la section intitulée Créer un Eventhouse.
Ensuite, créez une table dans votre base de données. Appelez-la OPCUA et utilisez les colonnes suivantes.
Nom de la colonne Type de données AssetId string Température decimal Humidité decimal Timestamp DATETIME Une fois la table OPCUA créée, sélectionnez votre base de données, puis utilisez le bouton Explorer vos données afin d’ouvrir une fenêtre de requête.
Exécutez la requête KQL suivante pour créer un mappage de données pour votre table. Le mappage de données sera appelé opcua_mapping.
.create table ['OPCUA'] ingestion json mapping 'opcua_mapping' '[{"column":"AssetId", "Properties":{"Path":"$[\'AssetId\']"}},{"column":"Temperature", "Properties":{"Path":"$[\'ThermostatTemperature\']"}},{"column":"Humidity", "Properties":{"Path":"$[\'ThermostatHumidity\']"}},{"column":"Timestamp", "Properties":{"Path":"$[\'EventProcessedUtcTime\']"}}]'
Ajouter une table de données en tant que destination
Ensuite, revenez à votre vue Eventstream, où vous pouvez ajouter votre nouvelle table KQL en tant que destination Eventstream.
Suivez les étapes décrites dans Ajouter une destination de base de données KQL à un Eventstream pour ajouter la destination. Gardez à l’esprit les points suivants :
Utilisez le mode d’ingestion directe.
À l’étape Configurer, sélectionnez la table OPCUA que vous avez créée précédemment.
À l’étape Inspecter, ouvrez les options Avancées. Sous Mappage, sélectionnez Mappage existant, puis choisissez opcua_mapping.
Conseil
Si aucun mappage existant n’est trouvé, essayez en actualisant l’éditeur d’Eventstream et en effectuant à nouveau les étapes pour ajouter la destination. Vous pouvez également lancer ce même processus de configuration depuis la table KQL au lieu de le faire depuis l’Eventstream, comme décrit dans Obtenir des données auprès d’un Eventstream.
Une fois ce flux terminé, le table KQL est visible dans l’affichage en direct de l’Eventstream en tant que destination.
Attendez quelques minutes que les données se propagent. Sélectionnez ensuite la destination KQL, puis actualisez l’aperçu des données pour voir apparaître dans la table les données JSON traitées provenant de l’Eventstream.
Si vous le souhaitez, vous pouvez également voir et interroger ces données directement dans votre base de données KQL.
Créer un tableau de bord en temps réel
Dans cette section, vous allez créer un Tableau de bord en temps réel pour visualiser les données de votre tutoriel. Le tableau de bord va permettre le filtrage par ID de ressource et par horodatage, et va afficher des synthèses visuelles des données de température et d’humidité.
Remarque
Vous pouvez créer des tableaux de bord en temps réel seulement si l’administrateur de votre locataire a activé la création de tableaux de bord en temps réel dans votre locataire Fabric. Pour plus d’informations, consultez Activer les paramètres de locataire dans le portail d’administration.
Créer un tableau de bord et connecter une source de données
Suivez les étapes de la section Créer un tableau de bord pour créer un tableau de bord en temps réel à partir des fonctionnalités d’Intelligence en temps réel.
Ensuite, suivez les étapes décrites dans la section Ajouter une source de données pour ajouter votre base de données en tant que source de données. Gardez à l’esprit la remarque suivante :
- Dans le volet Sources de données, votre base de données se trouve sous Hub de données OneLake.
Configurer les paramètres
Ensuite, configurez quelques paramètres pour votre tableau de bord afin que les visuels puissent être filtrés par ID de ressource et par horodatage. Le tableau de bord est fourni avec un paramètre par défaut pour filtrer par intervalle de temps : vous devez donc seulement en créer un qui peut filtrer par ID de ressource.
Passez à l’onglet Gérer, puis sélectionnez Paramètres. Sélectionnez + Ajouter pour ajouter un nouveau paramètre.
Créez un paramètre avec les caractéristiques suivantes :
- Libellé : Ressource
- Type de paramètre : Sélection unique (déjà sélectionné par défaut)
- Nom de la variable : _asset
- Type de données : chaîne (déjà sélectionné par défaut)
- Source : Requête
Source de données : votre base de données (déjà sélectionnée par défaut)
Sélectionnez Modifier la requête, puis ajoutez la requête KQL suivante.
OPCUA | summarize by AssetId
- Colonne de valeur : AssetId
- Valeur par défaut : Sélectionner la première valeur de la requête
Sélectionnez Terminé pour enregistrer votre paramètre.
Créer une vignette de graphique en courbes
Ensuite, ajoutez une vignette à votre tableau de bord pour montrer un graphique en courbes de la température et de l’humidité au fil du temps pour la ressource et l’intervalle de temps sélectionnés.
Sélectionnez + Ajouter une vignette ou Nouvelle vignette pour ajouter une nouvelle vignette.
Entrez la requête KQL suivante pour la vignette. Cette requête applique les paramètres de filtre des sélecteurs du tableau de bord pour un intervalle de temps et une ressource, et extrait les enregistrements résultants avec leur horodatage, leur température et leur humidité.
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | project Timestamp, Temperature, Humidity
Exécutez la requête pour vérifier que les données sont disponibles.
Sélectionnez + Ajouter des visuels en regard des résultats de la requête afin d’ajouter un visuel pour ces données. Créez un visuel avec les caractéristiques suivantes :
- Nom de la vignette : Température et humidité au fil du temps
- Type de visuel : Graphique en courbes
- Données :
- Colonnes Y : Température (décimale) et Humidité (décimale) (déjà inférées par défaut)
- Colonnes X : Horodatage (datetime) (déjà inféré par défaut)
- Axe Y :
- Étiquette : Unités
- Axe X :
- Étiquette : Horodatage
Sélectionnez Appliquer les modifications pour créer la vignette.
Regardez la vignette terminée sur votre tableau de bord.
Créer des vignettes de valeur maximale
Ensuite, créez des vignettes pour afficher les valeurs maximales de température et d’humidité.
Sélectionnez Nouvelle vignette pour créer une vignette.
Entrez la requête KQL suivante pour la vignette. Cette requête applique les paramètres de filtre des sélecteurs du tableau de bord pour un intervalle de temps et une ressource, et prend la valeur de température la plus élevée dans les enregistrements résultants.
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | top 1 by Temperature desc | summarize by Temperature
Exécutez la requête pour vérifier qu’une température maximale est trouvée.
Sélectionnez + Ajouter un visuel afin d’ajouter un visuel pour ces données. Créez un visuel avec les caractéristiques suivantes :
- Nom de la vignette : Température maximale
- Type de visuel : Statistique
- Données :
- Colonne Valeur : Température (décimale) (déjà inférée par défaut)
Sélectionnez Appliquer les modifications pour créer la vignette.
Regardez la vignette terminée sur votre tableau de bord (vous pouvez redimensionner la vignette pour que tout le texte soit visible).
Ouvrez les options pour la vignette, puis sélectionnez Dupliquer la vignette.
Ceci crée une vignette dupliquée sur le tableau de bord.
Sur la nouvelle vignette, sélectionnez l’icône de crayon pour la modifier.
Remplacez Temperature dans la requête KQL par Humidity pour la faire correspondre à la requête ci-dessous.
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | top 1 by Humidity desc | summarize by Humidity
Exécutez la requête pour vérifier qu’une humidité maximale peut être trouvée.
Dans le volet Mise en forme visuelle, mettez à jour les caractéristiques suivantes :
- Nom de la vignette : Humidité maximale
- Données :
- Colonne de valeur : Humidité (décimale) (déjà inférée par défaut)
Sélectionnez Appliquer les modifications.
Regardez la vignette terminée sur votre tableau de bord.
Enregistrez votre tableau de bord terminé.
Vous disposez maintenant d’un tableau de bord qui affiche différents types de visuels pour les données des ressources de ces tutoriels. À partir de là, vous pouvez expérimenter les filtres et ajouter d’autres types de vignettes pour voir comment un tableau de bord peut vous permettre d’en faire plus avec vos données.
Comment avons-nous résolu le problème ?
Dans ce tutoriel, vous avez utilisé un élément Eventstream pour ingérer vos données Event Hubs dans une base de données KQL dans Real-Time Intelligence de Microsoft Fabric. Ensuite, vous avez créé un tableau de bord en temps réel alimenté par ces données, qui fait le suivi visuel des valeurs modifiées au fil du temps. En associant des données de périphérie provenant de différentes sources dans Microsoft Fabric, vous pouvez créer des rapports avec des visualisations et des fonctionnalités interactives qui offrent des insights plus approfondis sur l’intégrité, l’utilisation et les tendances opérationnelles des ressources. Cela peut vous permettre d’améliorer la productivité, d’améliorer les performances des ressources et de prendre des décisions éclairées pour de meilleurs résultats métier.
Cette opérations termine la dernière étape du flux du tutoriel pour l’utilisation d’Opérations Azure IoT afin de gérer des données d’appareils du déploiement via l’analyse dans le cloud.
Nettoyer les ressources
Si vous passez au tutoriel suivant, conservez toutes vos ressources.
Si vous voulez supprimer le déploiement d’Opérations Azure IoT mais conserver votre cluster, utilisez la commande az iot ops delete :
az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Si vous voulez supprimer toutes les ressources que vous avez créées pour ce démarrage rapide, supprimez le cluster Kubernetes où vous avez déployé Opérations Azure IoT, puis supprimez le groupe de ressources Azure qui contenait le cluster.
Si vous avez utilisé Codespaces pour ces démarrages rapides, supprimez votre codespace de GitHub.
Remarque
Le groupe de ressources contient l’espace de noms Event Hubs que vous avez créé dans ce tutoriel.
Vous pouvez également supprimer votre espace de travail Microsoft Fabric et/ou toutes les ressources qu’il contient, et qui sont associées à ce tutoriel, notamment l’Eventstream, l’Eventhouse et le tableau de bord en temps réel.