Une approche ramper/marcher/courir – la nouvelle pile

Jason Myers

Jason est rédacteur en marketing technique chez InfluxData.

Il a obtenu un doctorat. en histoire irlandaise moderne de l’Université Loyola de Chicago. Depuis lors, il a utilisé ses compétences en écriture pour créer du contenu pour une gamme de startups et de sociétés technologiques.

La question de savoir comment obtenir des données dans une base de données est l’un des aspects les plus fondamentaux du traitement des données auxquels les développeurs sont confrontés. La collecte de données peut être assez difficile lorsque vous avez affaire à des appareils locaux. L’ajout de données à partir d’appareils périphériques présente un tout nouvel ensemble de défis. Pourtant, l’augmentation exponentielle des appareils de périphérie IoT signifie que les entreprises ont besoin de moyens éprouvés et fiables pour collecter des données à partir d’eux.

Voici trois approches différentes pour collecter des données à partir d’appareils périphériques. Les appareils Edge ont différentes capacités – puissance de traitement, capacité de mémoire, connectivité, etc. – donc trouver la bonne solution pour votre cas d’utilisation peut nécessiter un peu d’essais et d’erreurs. Cependant, vous pouvez utiliser ces approches comme point de départ pour créer votre solution.

Pour le contexte, nous utilisons InfluxDB comme solution de traitement et de stockage, et la version cloud d’InfluxDB est la destination cible ici. Chaque périphérique de périphérie dans ces exemples exécute également la version open source d’InfluxDB. Nous utilisons le langage Flux pour créer des tâches qui effectuent des transformations de données et des annotations.

Explorer : Stocker et transférer de base

Il s’agit de la configuration la plus basique pour obtenir des données d’appareils périphériques vers une base de données cloud InfluxDB. Ici, les données brutes sont écrites directement d’une instance périphérique d’InfluxDB vers une instance cloud.

Le processus de l’approche de stockage et retransmission de base ressemble à ceci :

  1. Créez un compartiment dans les instances d’InfluxDB s’exécutant en périphérie. Nous appellerons le compartiment « appareils » et définirons une politique de conservation pour ces données à une heure.
  2. Créez un compartiment dans votre instance cloud d’InfluxDB. Nous appellerons ce compartiment “edge_devices” et le configurerons avec une politique de rétention de 30 jours.
  3. Créez une tâche dans InfluxDB qui pousse les données brutes du compartiment “devices” à la périphérie vers le compartiment “edge_devices” dans le cloud toutes les minutes.
  4. Injectez une balise “edge_host” dans les données entrantes.

Avantages

  • Rapide et facile à installer.
  • Nécessite peu de puissance de calcul de pointe.

Désavantages

  • Augmente la quantité de données non nettoyées dans l’instance cloud.
  • Nécessite plus de débit pour la connexion de données Edge.

Marche : sous-échantillonner et avancer

Dans cette approche, les données brutes de la périphérie sont sous-échantillonnées en mémoire à la périphérie, et ces données sous-échantillonnées sont poussées vers le cloud où elles sont écrites dans InfluxDB.

Le processus de l’approche de stockage et retransmission de base ressemble à ceci :

  1. Créez un compartiment dans les instances d’InfluxDB s’exécutant en périphérie. Encore une fois, nous appellerons le compartiment “appareils” et définirons une politique de conservation d’une heure pour ces données.
  2. Créez un compartiment dans votre instance cloud d’InfluxDB. Nous appellerons ce compartiment “edge_aggregate” et le configurerons avec une politique de rétention de 30 jours.
  3. Créez une tâche dans votre instance périphérique d’InfluxDB qui sous-échantillonne les données brutes du compartiment “appareils” à la périphérie et envoie ces données sous-échantillonnées au compartiment “edge_aggregate” dans le cloud toutes les minutes.
  4. Injectez une balise “edge_host” dans les données entrantes.

Avantages

  • Rapide et facile à installer.
  • Réduit la quantité de données brutes impures envoyées à l’instance cloud.
  • Réduit les besoins en débit de connexion de données Edge.

Désavantages

  • Nécessite plus de puissance de calcul de pointe.
  • Nécessite plus de mémoire Edge.
  • Nécessite un stockage périphérique.

Exécuter : Historien Edge robuste

Dans ce troisième exemple, nous travaillons encore plus sur la périphérie. Ici, le rôle d’historien des données est effectivement déplacé vers la périphérie, car l’instance de périphérie d’InfluxDB collecte, traite et écrit ces données.

En suivant les étapes de l’approche précédente, les données brutes sont sous-échantillonnées à la périphérie, mais maintenant nous écrivons également ces données sous-échantillonnées dans une instance d’InfluxDB à la périphérie. Enfin, ces données enregistrées et sous-échantillonnées sont transmises à l’instance cloud d’InfluxDB.

  1. Créez un compartiment dans les instances d’InfluxDB s’exécutant en périphérie. Appelez le compartiment « appareils » et définissez une politique de conservation d’une heure pour ces données.
  2. Créez un autre compartiment dans InfluxDB en périphérie et appelez-le “northbound” avec une politique de rétention d’un jour.
  3. Créez un compartiment dans votre instance cloud d’InfluxDB. Nous appellerons ce compartiment “edge_aggregate” et le configurerons avec une politique de rétention de 30 jours.
  4. Créez une tâche dans votre instance périphérique d’InfluxDB qui sous-échantillonne les données brutes du compartiment “appareils” à la périphérie et écrit ces données sous-échantillonnées dans le compartiment “northbound” à la périphérie toutes les minutes.
  5. Créez une autre tâche en périphérie qui pousse les données de « northbound » vers « edge_aggregate » dans le cloud toutes les cinq minutes.
  6. Injectez une balise “edge_host” dans les données entrantes.

Avantages

  • Rapide et facile à installer.
  • Réduit considérablement la quantité de données brutes impures envoyées à l’instance cloud.
  • Réduit les besoins en débit de connexion de données en périphérie.
  • Résilient aux aspects de connectivité entre le cloud et la périphérie.

Désavantages

  • Nécessite plus de puissance de calcul de pointe.
  • Nécessite beaucoup plus de mémoire Edge.
  • Nécessite une capacité de stockage périphérique.

Comme nous l’avons noté, chacune de ces approches présente des avantages et des inconvénients. Choisissez donc celle qui convient le mieux à votre pile technologique et à votre cas d’utilisation.

Vous pouvez répliquer ou ajuster ces tâches sur vos périphériques de périphérie distribués pour maximiser vos ressources disponibles.

Quelle que soit l’approche que vous choisissez, ce type de solution peut vous offrir une meilleure observabilité des appareils en périphérie. Il permet également de rationaliser le traitement des données dans l’ensemble de votre écosystème en réduisant la taille de l’ensemble de données dans l’instance de stockage central.

Image caractéristique via Pixabay

Leave a Comment