Questions fréquentes AWS IoT Analytics
Q : Qu'est-ce qu'AWS IoT Analytics ?
AWS IoT Analytics est un service d'analyse IoT entièrement géré qui collecte, prétraite, enrichit, stocke et analyse les données des périphériques IoT à grande échelle. IoT Analytics peut réaliser des requêtes ad hoc comme des analyses complexes. Il s'agit d'un moyen simplifié d'exécuter des analyses IoT pour comprendre les performances des périphériques, prévoir leurs défaillances et utiliser l'apprentissage automatique. Ce service est conçu spécialement pour l'IoT. Il capture et stocke automatiquement l'horodatage des messages et facilite ainsi l'analyse des séries chronologiques. IoT Analytics peut également enrichir les données avec des métadonnées spécifiques au périphérique, telles que le type de périphérique et son emplacement, en utilisant le registre AWS IoT. AWS IoT Analytics stocke les données dans un magasin de données optimisé pour l'IoT, afin que vous puissiez exécuter des requêtes sur des ensembles de données de grande taille. Avec AWS IoT Analytics, vous pouvez également exécuter des conteneurs de code personnalisé. AWS IoT Analytics automatise l'exécution de vos analyses personnalisées créées dans un bloc-notes Jupyter ou dans vos propres outils (tels que Matlab, Octave, etc.) pour une exécution planifiée.
Q : Comment fonctionne AWS IoT Analytics ?
AWS IoT Analytics est entièrement intégré à AWS IoT Core. Il est donc facile de démarrer avec ce service. Premièrement, vous définissez un canal et sélectionnez les données que vous voulez récolter. Ainsi, vous stockez et analysez uniquement les données qui vous intéressent, telles que la température des capteurs. Une fois que le canal est paramétré, vous configurez des pipelines pour traiter vos données. Les pipelines prennent en charge les transformations comme la conversion des degrés Celsius en degrés Fahrenheit, les déclarations conditionnelles, le filtrage des messages et l'enrichissement des messages en utilisant des sources de données externes et des fonctions AWS Lambda.
Après le traitement des données dans le pipeline, IoT Analytics les stocke dans un magasin de données optimisé pour IoT afin de les analyser. Vous pouvez interroger les données en utilisant un moteur de requête SQL intégré pour répondre à des questions métier spécifiques. Par exemple, vous pouvez vous demander combien il y a d'utilisateurs actifs par mois pour chaque périphérique de votre parc. Grâce à l'intégration avec Amazon SageMaker, IoT Analytics prend en charge des analyses plus sophistiquées, comme l'inférence bayésienne et l'apprentissage automatique. De plus, il est facile de générer des visualisations et des tableaux de bord, ainsi que d'obtenir rapidement des informations métier à partir de vos données IoT Analytics grâce à l'intégration avec Amazon QuickSight.
Q : Puis-je exécuter mon code d'analyse personnalisée dans AWS IoT Analytics ?
Oui, vous pouvez apporter votre propre analyse personnalisée, empaquetée dans un conteneur à exécuter dans AWS IoT Analytics. Vous pouvez importer votre conteneur de code personnalisé dans un ensemble de données de conteneur et planifier l'exécution de votre conteneur.
Q : En quoi un ensemble de données SQL est-il différent d'un ensemble de données de conteneur ?
Un ensemble de données SQL est similaire à une vue matérialisée d'une base de données SQL. En fait, vous créez un ensemble de données SQL en appliquant une action SQL. Les ensembles de données SQL peuvent être générés automatiquement selon un calendrier récurrent en spécifiant un déclencheur.
Un ensemble de données de conteneur vous permet d'exécuter automatiquement vos outils d'analyse et de générer des résultats. Il rassemble un ensemble de données SQL en entrée, un conteneur Docker avec vos outils d'analyse et les fichiers de bibliothèque requis, les variables d'entrée et de sortie, et un déclencheur de planification facultatif. Les variables d'entrée et de sortie indiquent à l'image exécutable où obtenir les données et stocker les résultats. Le déclencheur peut exécuter votre analyse lorsqu'un ensemble de données SQL finit de créer son contenu ou selon une expression de planification temporelle. Un ensemble de données de conteneur s'exécute, génère, puis enregistre automatiquement les résultats des outils d'analyse.
Q : Que sont les fenêtres DeltaTime ?
Les fenêtres delta sont une série d'intervalles temporels contigus, non superposés, définis par l'utilisateur. Les fenêtres delta vous permettent de créer des contenus d'ensemble de données avec de nouvelles données arrivées dans le magasin de données depuis la dernière analyse, et d'effectuer une analyse sur ces données. Vous créez une fenêtre delta en définissant l'élément DeltaTime dans la partie des filtres de l'élément queryAction d'un ensemble de données. À la base, cela vous permet de filtrer les messages qui sont arrivés au cours d'une fenêtre temporelle spécifique, afin que les données contenues dans les messages issus des fenêtres temporelles précédentes ne soient pas comptabilisées deux fois.
Q : Comment exécuter mon conteneur de code personnalisé dans AWS IoT Analytics au moment de mon choix ?
Vous pouvez apporter votre propre code d'analyse personnalisée, empaqueté dans un conteneur à exécuter dans AWS IoT Analytics. Vous pouvez créer un ensemble de données de conteneur via l'API ou la console AWS IoT Analytics en spécifiant votre ensemble de données SQL, une image de conteneur de code personnalisé, les variables d'entrée et de sortie, et un déclencheur de planification facultatif comme paramètre, ce déclencheur pouvant être un événement de création de contenu d'ensemble de données SQL ou une planification. L'ensemble de données de conteneur alimente le code d'analyse disponible dans l'image de conteneur avec le contenu de l'ensemble de données SQL, et il exécute automatiquement l'image basée sur votre déclencheur pour générer des données d'analyse au moment de votre choix.
Q : De quelles politiques de rétention puis-je disposer sur mes magasins de données et canaux ?
Vous pouvez choisir de définir vos propres politiques de rétention de données sur les magasins de données et les canaux. Vous pouvez sélectionner une période de rétention d'un nombre de jours quelconque. Si vous ne sélectionnez aucune période de rétention, le service conservera indéfiniment vos données.
Q : Quels types de formats de messages sont-ils pris en charge avec AWS IoT Analytics ?
Le service AWS IoT Analytics prend en charge les formats JSON et Binary (Binary JSON, tampons de protocoles, etc.). Si les messages sont binaires, la première activité de vos pipelines doit être l'activité Lambda avec du code JSON valide en sortie.
Q : Puis-je traiter à nouveau mes données de canal vers un pipeline ?
Oui, vous pouvez traiter à nouveau vos données du canal connecté au pipeline en utilisant StartPipelineReprocessing. Si vous souhaitez traiter à nouveau vos données de canal à l'aide d'un autre pipeline, vous devez connecter le pipeline à votre canal approprié.
Q : Comment obtenir les données dans AWS IoT Analytics avec l'API Ingestion ?
Vous pouvez utiliser l'API BatchPutMessage pour envoyer vos données à AWS IoT Analytics à partir de sources telles qu'Amazon S3, Amazon Kinesis ou toute autre source de données. Vous pouvez utiliser ces API dans votre fonction Lambda ou dans tout autre script pour envoyer vos données vers AWS IoT Analytics. Pour plus d'informations, consultez Envoyer des données de S3 vers IoT Analytics et envoyer des données de Kinesis vers IoT analytics.
Q : Puis-je prévisualiser mes messages dans le canal ?
Oui, vous pouvez prévisualiser vos messages en utilisant l'API SampleChannelData. Cette API échantillonne un maximum de dix messages de votre canal sur toutes les données.
Q : Puis-je simuler l'activité de mon pipeline ?
Oui, vous pouvez utiliser l'API RunPipelineActivity ou la console pour simuler l'activité de votre pipeline. Cette API prend la liste des exemples de données (obtenue à partir de SampleChannelData ou fournie manuellement) pour simuler l'activité et prévoit les résultats.
Q : Quelles sont les différences entre AWS IoT Analytics et Amazon Kinesis Analytics ?
AWS IoT Analytics est conçu spécialement pour l'IoT. Il capture et stocke automatiquement l'horodatage des messages afin de faciliter l'analyse des séries chronologiques. IoT Analytics peut également enrichir les données avec des métadonnées spécifiques au périphérique, telles que le type de périphérique et son emplacement, en utilisant le registre AWS IoT et d'autres sources de données publiques. IoT Analytics stocke les données de périphérique dans un magasin de données optimisé pour l'IoT, afin que vous puissiez exécuter des requêtes sur des ensembles de données de grande taille.
Amazon Kinesis Analytics est un outil à usage général conçu pour traiter facilement les données diffusées en streaming depuis des périphériques IoT ainsi que d'autres sources de données en temps réel.
Tableau 1 : Comparaison entre les fonctions d'AWS IoT Analytics et celles de Kinesis Analytics
Fonctionnalités | AWS IoT Analytics |
Amazon Kinesis Analytics |
Stockage de données de série chronologique | X | |
Partitionnement automatique des données selon l'horodatage du message et l'ID du périphérique | X | |
Enrichissement des données spécifique au périphérique | X | |
Requêtes sur de grands ensembles de données | X | |
Analyses de flux continu | X | |
Traitement en temps réel | Latences en minutes ou en secondes | Latence en secondes ou en millisecondes |
Opérations dans une fenêtre temporelle | X | |
Analyse de données non structurées et création automatique de schéma | JSON et CSV | JSON et CSV |
Q : Quand utiliser AWS IoT Analytics et quand utiliser Amazon Kinesis Analytics ?
Vous pouvez utiliser AWS IoT Analytics pour des analysées IoT. Certains cas d'utilisation intègrent la compréhension des performances du périphérique à long terme, des analyses ad hoc et des rapports commerciaux, ainsi que la maintenance prédictive du parc. IoT Analytics est le service qui convient le mieux pour ces cas d'utilisation, car il collecte, prépare et stocke les données depuis les périphériques dans un magasin de données optimisé pour l'IoT, sur de longues durées. IoT Analytics enrichit également les données avec des métadonnées spécifiques au périphérique, telles que le type de périphérique et son emplacement, en utilisant le registre AWS IoT et d'autres sources de données publiques.
Toutefois, si vous avez besoin d'analyser des données IoT en temps réel pour des cas d'utilisation tels que la surveillance de périphérique, vous pouvez utiliser Amazon Kinesis Analytics.
Tableau 2 : Comparaison entre les cas d'utilisation d'AWS IoT Analytics et ceux de Kinesis Analytics
Cas d'utilisation |
AWS IoT Analytics | Amazon Kinesis Analytics |
Compréhension des caractéristiques des performances du périphérique à long terme | Oui. Il est possible d'enrichir les données IoT avec des métadonnées spécifiques à l'IoT, telles que le type et l'emplacement du périphérique, en utilisant le registre AWS IoT et d'autres sources de données publiques. Par exemple, les viticulteurs ont besoin d'enrichir les données des capteurs d'humidité avec les prévisions de pluies dans leurs vignes, afin de déterminer quand irriguer les cultures. | Non. Convient le mieux pour des analyses en flux continu et temps réel. |
Analyses ad hoc et de rapports commerciaux grâce aux données IoT | Oui. Collecte, traite et stocke les données IoT. S'intègre à AWS QuickSight pour concevoir des tableaux de bord et des rapports, et utilise un moteur de requête SQL intégré pour les requêtes ad hoc. Par exemple,agrège les défaillances des capteurs dans un parc pour générer un rapport hebdomadaire des performances du parc. | Non. Convient le mieux pour réaliser des requêtes de diffusion en continu sur les données IoT, telles que la génération d'alertes lors de la défaillance d'un capteur. |
Maintenance prédictive du parc | Oui. Collecte, traite et stocke les données IoT et utilise des modèles préconçus pour concevoir et déployer des modèles prédictifs. Par exemple, prédit lorsque des systèmes CVC vont tomber en panne sur des véhicules connectés, afin de modifier l'itinéraire du véhicule pour éviter la détérioration de la cargaison. | Non. La maintenance prédictive nécessite une analyse d'historique sur des données à long terme pour générer des modèles. |
Surveillance des périphériques en temps réel | Non. | Oui. Kinesis Analytics peut agréger des données dans des fenêtres temporelles en continu, détecter des anomalies et agir, en déclenchant par exemple des alertes. Par exemple, Kinesis Analytics peut calculer toutes les 5 minutes des moyennes sur 10 secondes des températures des vannes dans des équipements industriels et détecter le dépassement éventuel de seuils prédéfinis. Le service peut ensuite alerter les systèmes de commande pour qu'ils mettent automatiquement hors tension les machines afin d'éviter des accidents. |
Q : Quand utiliser AWS IoT Analytics et Amazon Kinesis ensemble ?
Utilisez AWS IoT Analytics et Amazon Kinesis ensemble lorsque vous avez besoin à la fois d'une analyse historique et d'une analyse en temps réel. Par exemple, utilisez Kinesis Analytics pour calculer des moyennes sur 10 secondes des températures des vannes d'équipements industriels, afin de détecter le dépassement de certains seuils. Kinesis Analytics peut ensuite alerter les systèmes de commande pour qu'ils mettent automatiquement hors tension les machines afin d'éviter des accidents. Ensuite, utilisez Kinesis Streams pour envoyer les données à IoT Analytics. Vous utilisez IoT Analytics pour comprendre les tendances et prédire quand les vannes devront être remplacées ou révisées.
Q : Lors de l'utilisation de données IoT, quand faut-il utiliser AWS IoT Analytics ou Amazon Kinesis Streams, Amazon Kinesis Analytics et Amazon Kinesis Firehose ?
Les clients peuvent utiliser AWS Lambda pour envoyer des données à partir d'Amazon Kinesis Streams vers un canal de données AWS IoT, puis vers AWS IoT Analytics.
Amazon Kinesis Analytics est conçu pour les analyses de diffusion en continu, alors qu'IoT Analytics est conçu pour les analyses de données au repos. Les clients qui ont besoin d'analyses en temps réel et IoT peuvent utiliser une combinaison de Kinesis Analytics et d'IoT Analytics.
Amazon Kinesis Firehose est le moyen le plus simple de charger des données de diffusion en continu dans des magasins de données AWS Amazon S3, Amazon RedShift et Amazon Elasticsearch Service, ce qui rend possible des analyses presque en temps réel avec les outils d'aide à la décision existants. IoT Analytics ne prend pas en charge Kinesis Firehose comme source de données.
Q : Quand utiliser AWS IoT Analytics et quand utiliser Amazon Kinesis Video Streams ?
Amazon Kinesis Video Streams facilite la diffusion sécurisée vers AWS de flux vidéo et audio et d'autres données à codage temporel issus de sources comme les caméras, les capteurs de profondeur et les radars, pour un traitement en temps réel et par lots, pour l'apprentissage automatique, les analyses et d'autres applications. Kinesis Video Streams est conçu spécifiquement pour importer des données vidéo depuis des périphériques, alors qu'AWS IoT Analytics est conçu pour analyser les données IoT non vidéo. Au moment de la disponibilité générale (GA), il n'y a pas d'intégration directe entre Kinesis Video Streams et AWS IoT Core ou IoT Analytics. Cependant, les clients peuvent interroger Kinesis Video Streams et IoT Analytics depuis leurs applications en utilisant les API.
En savoir plus sur les fonctions d'AWS IoT Analytics