Cap sur les plates-formes IoT (partie 3)

Introduction

Les deux premières parties de cet article se sont focalisées sur les besoins de l’IoT et sur l’émergence du concept de plates-formes d’Internet des objets (Cap sur les plates-formes IoT partie 1) . Un cadre d’analyse des plates-formes IoT a été proposé (Cap sur les plates-formes IoT partie 2) et il convient maintenant d’en montrer sa réelle applicabilité.

Rappel du Cadre d’architecture des plates-formes IoT

La figure suivante montre les services offerts par les plates-formes. Étant donné que les offres du marché mutent à grande vitesse, nous avons décidé de sélectionner quelques plates-formes très différentes afin d’illustrer la flexibilité du modèle proposé.

IoT-CartoFonc

Les offres

La figure suivante rappelle quelques offres parmi la petite centaine disponible au niveau mondial (estimation de notre part).

offrePFIoT

Les offres analysées

  • La première proposée est ThingWorx pour sa grande couverture fonctionnelle et sa réputation.
  • La deuxième est AWS IoT pour sa capacité d’intégration et d’exploitation de l’ensemble du catalogue Amazon, permettant de construire à peu près tout ce que l’on peut imaginer et de manière élastique !
  • La troisième est OVH PaaS Time series qui illustre parfaitement les plates-formes IoT centrées sur des fonctions spécialisées mais ouvertes.
  • La quatrième est ThingSpeak qui est une offre à l’origine open source et qui a été reprise par le groupe MathWorks. ThingSpeak est principalement une offre de stockage, d’analyse et d’affichage de données.

La grille d’analyse

Pour chaque offre, nous retrouvons sa fiche signalétique comprenant :

  • Les identifiants de l’offre (nom, éditeur, operateur…)
  • Une vue générale sur positionnement de l’offre.
  • L’offre analysée suivant le cadre d’architecture IoT OCTO et des commentaires.
  • Les points forts et ceux à améliorer selon nous.

ThingWorx

Identifiants de l’offre

Intitulé de l’offreThingWorx IoT platform
Site webhttp://www.thingworx.com
Année de fondation (de l’offre)2009
OrientationPlate-forme généraliste acceptant des extensions
Type(s) de déploiementCloud / On-premises / Embedded

Vue générale du positionnement de l’offre

Fonctions principales

ThingWorx est une plate-forme d’IoT très complète qui couvre pratiquement tous les domaines d’applications de l’IoT. Elle offre également des environnements de développement d’applications intégrés afin d’accélérer le cycle de vie des offres métiers IoT (Composer et MashupBuilder). Un “App store” appelé “ThingWorx Marketplace” permet d’enrichir les fonctions de la plate-forme. Des dizaines d’applications sont déjà disponibles et permettent souvent le raccord de nouveaux objets connectés. Cette plate-forme se distingue également par la richesse de ses modes de déploiement (aussi bien dans le cloud qu’en entreprise et intégrée à des produits éditeur).

Architecture

La figure suivante (publiée sur le site web de ThingWorx) présente les grands blocs du système.

Architecture ThingWorx

On remarque le bloc de communications multi-protocoles, un bloc API et interface externe, un moteur de stockage et des fonctions frontales permettant aux utilisateurs d’accéder aux fonctions et données de la plate-forme. ThingWorx se présente donc comme un atelier, une plate-forme d’exécution et un store permettant de bénéficier d’applications existantes. La connexion aux offres SaaS du marché est offerte afin de faciliter l’intégration au SI d’entreprise (par exemple avec SalesForce). Ce modèle très intégré a séduit de nombreux utilisateurs. De plus, la possibilité de déployer en mode PaaS ou On premises est un atout majeur de l’offre pour qui souhaite garder son SI un périmètre isolé.

Analyse suivant le cadre d’architecture IoT OCTO

ThingWorx couvre pratiquement toutes les fonctions identifiées sur notre cartographie fonctionnelle.

CartosFonctionnelles ThingWorx

Points forts et à améliorer

La complétude de l’offre et sa capacité à déployer en mode PaaS ou O__n premises sont les deux atouts majeurs et distinctifs de l’offre par rapport à la concurrence. Nous ne disposons par de retour d’expérience sur la scalabilité de l’offre. Ce point est à surveiller, surtout dans le cas d’une plate-forme très sollicitée où Amazon peut se placer comme un très sérieux challenger.

AWS IoT

Identifiants de l’offre

Intitulé de l’offreAmazon Web Services IoT
Site webhttp://aws.amazon.com/iot
Année de fondation (de l’offre)2015
OrientationPlate-forme généraliste intégrée à l’offre AWS
Type(s) de déploiementCloud uniquement

Vue générale du positionnement de l’offre

Fonctions principales

La plate-forme AWS IoT est en elle-même une plate-forme assez réduite mais elle permet d’accéder à une très grande partie de l’offre Cloud d’Amazon. L’offre IoT d’Amazon est au final extrêmement riche et offre un potentiel de développement inégalé sur le marché. Il est donc possible de constituer des plates-formes IoT custom à haute performance de manière aisée et rapide. Par ce positionnement original, Amazon couvre quasiment tous les besoins IoT. Le pré-requis est toutefois de bien maîtriser l’offre globale d’Amazon.

Architecture

La figure suivante (présente sur le site web d’Amazon) présente les grands blocs de son offre :

Architecture AWS IoT

La plate-forme accueille les messages en MQTT ou HTTP et assure la sécurité d’accès. Un “Device registry” recense les objets physiques qui sont connectés (connus) de la plate-forme. Un “device shadow” garde en mémoire l’état logique de l’objet physique (par exemple si une lampe est allumée ou éteinte). L’état est mis à jour par les messages. Un moteur de règles permet de transmettre les messages sur conditions à des services autres, présents sur AWS. C’est là, toute la puissance de AWS IoT qui offre finalement un hub d’accès et de traitement minimal et association avec toute la machinerie d’AWS (Lambda, stockage, bases de données…). Amazon offre le SDK client qui permet de créer des objets qui sont, de facto compatibles avec la plate-forme.

Analyse suivant le cadre d’architecture IoT OCTO

AWS IoT implémente directement la vision cible de l’IoT : chaque objet est supposé communiquer directement avec la plate-forme (pas de passerelle applicative locale). Le device shadow apparaît comme intéressant dans le cas d’applications simples ou devant offrir de la visibilité sur l’état des objets. La cartographie ci-dessous fait apparaître les items traités par AWS IoT (en bleu clair transparent) et ceux traités par le reste de la plate-forme AWS (en orange transparent). A noter que tous les compléments sont faisables sur AWS mais nécessitent généralement du développement spécifique.

CartosFonctionnelles AWS IoT

Points forts et à améliorer

Élasticité et haute disponibilité sur l’ensemble de la chaîne de traitement IoT est assurément le point majeur d’AWS IoT. L’inconvénient est la nécessité de maîtriser l’offre AWS dans son ensemble, mais le jeu en vaut la chandelle.

Les fonctions de gestion des objets restent assez embryonnaires et nécessitent souvent des compléments.

En conclusion une offre IoT réservée à ceux qui maîtrisent leur SI et qui ont besoin d’une plate-forme hautement scalable et résiliente.

OVH Time series

Identifiants de l’offre

Intitulé de l’offreOVH PaaS Time
Site webhttp://www.ovh.com
Année de fondation (de l’offre)2015
OrientationPlate-forme spécialisée dans les series temporelles
Type(s) de déploiementCloud uniquement

Vue générale du positionnement de l’offre

Fonctions principales

Le traitement des séries temporelles est de première importance dans l’IoT. Les événements sont, en général, horodatés et les calculs/statistiques sur les dates sont des traitements récurrents. OVH a parfaitement compris ce besoin et a monté cette offre qui est un exemple emblématique de la plate-forme IoT très spécialisée. La fonction première est le stockage des données dans une base de données spécialisée sur les séries temporelles.

Architecture

Il s’agit d’une offre SaaS basée sur le produit open source http://opentsdb.net/. L’offre se concentre sur le stockage et il est nécessaire de créer des applications externes qui vont exploiter les données en faisant des requêtes sur la base.

Analyse suivant le cadre d’architecture IoT OCTO

Il s’agit donc d’une base de données temporelle en mode SaaS. Les fonctions offertes sont minimales par rapport à une plate-forme IoT comme présenté ci-dessus.

CartosFonctionnelles OVH

Points forts et à améliorer

L’offre est donc réduite à sa plus simple expression. Les capacités de plugin de opentsdb pourront être exploitées en mode multi-tenant pour passer d’une plate-forme d’acquisition  à une plate-forme, d’acquisition et de traitement.

ThingSpeak

Identifiants de l’offre

Intitulé de l’offreThingSpeak
Site webhttps://thingspeak.com
Année de fondation (de l’offre)2011
OrientationPlate-forme de collecte et de stockage de données avec traitements mathématiques
Type(s) de déploiementCloud (avec matlab) / On-premises (sans matlab)

Vue générale du positionnement de l’offre

Fonctions principales

ThingSpeak est à l’origine une plate-forme IoT open source dont l’objectif est de collecter, de stocker et de traiter des données générées par des objets connectés. En 2015, le projet a été repris par MathWorks et la partie open source a été mise de côté. Depuis le mode Saas a obtenu de nombreux services supplémentaires notamment une intégration avec Matlab.

Pour ceux qui souhaitent garder leurs données privées, l’offre open source correspond parfaitement puisqu’il est possible de la déployer sur ses propres serveurs. Pour les autres, le mode Saas est bien plus complet, il permet notamment de réagir lors de l’arrivée d’une donnée, ou encore de programmer des actions automatiques.

Architecture

La figure suivante présente les grands blocs de l’offre Saas :

Architecture ThingSpeak

Les objets/capteurs communiquent directement avec la plate-forme ThingSpeak par des requêtes HTTP.  Un système de clés est présent pour assurer la sécurité des données, qui sont ensuite stockées dans une base relationnelle. L'arrivée d’une donnée peut être l’élément déclencheur d’une action : le lancement d’un script Matlab qui fait des opérations mathématiques sur les données par exemple.

Analyse suivant le cadre d’architecture IoT OCTO

Comme AWS IoT, ThingSpeak permet aux objets de communiquer directement avec la plate-forme. Ce qui, d’après nous, est une notion fondamentale pour une plate-forme IoT.

L’offre On premises est minimale, il s’agit d’une base de données temporelle. L’offre SaaS est un peu plus développée. L'intégration avec les outils Matlab peut s’avérer intéressante, notamment pour réaliser des applications où de nombreuses opérations mathématiques sont nécessaires sur les données.

CartosFonctionnelles ThingSpeak

Points forts et à améliorer

ThingSpeak est une plate-forme très simple à mettre en oeuvre pour collecter et stocker des données. La plate-forme expose une API permettant de réaliser programmatiquement ce qui est disponible sur l’IHM.

La gestion des objets est inexistante dans l’offre et complique par conséquent la scalabilité de la plate-forme. L’ajout d’un autre protocole de communication (MQTT par exemple) serait un plus et permettrait d’avoir plus d’objets compatibles avec la plate-forme IoT.

En somme, ThingSpeak est idéale pour des petits projets de monitoring et de collecte de données.

Conclusion

Dans la première partie de cet article, nous avons présenté les besoins de l’IoT et décrit ce qu’est une plate-forme IoT. Dans la deuxième partie, nous avons abordé les plates-formes IoT d’une manière architecturale et applicative. Dans cette troisième partie, nous avons présenté la réelle applicabilité de notre model sur quatre plates-formes IoT. A travers ces exemples, nous avons pu apercevoir la grande diversité des offres présentes aujourd’hui ; de l’offre très spatialisée comme OVH Time series à celle très complète, couvrant la majorité de notre cartographie fonctionnelle (ThingWorx/Amazon IoT). Dans une prochaine partie, nous présenterons deux autres plates-formes positionnées encore différemment.

Annexe :

Fiche d'identification des offres

Intitulé de l’offreThingSpeakOVH PaaS TimeAmazon Web Services IoTThingWorx IoT platform
Site webhttps://thingspeak.comhttp://www.ovh.comhttp://aws.amazon.com/iothttp://www.thingworx.com
Année de fondation (de l’offre)2011201520152009
Clients notablesinconnuAucun (offre en Bêta)En cours d’acquisition car offre en “Bêta”http://www.thingworx.com/Case-Studies
Localisation et nationalitéUSAFRANCEUSA, plate-forme en Europe égalementUSA
Chiffre d’affaire (de l’offre)InconnuInconnuInconnuInconnu
Structure capitalistiqueioBridge puis MathWorks depuis 2015OVHAmazonFiliale de PTC http://www.ptc.com
OrientationPlate-forme de collecte et de stockage de données avec traitements mathématiquesPlate-forme spécialisée dans les series temporellesPlate-forme généraliste intégrée à l’offre AWSPlate-forme généraliste acceptant des extensions
Politique de PartenariatsInconnuPeu développéeTrès puissante (dizaines de partenaires)Très puissante (dizaines de partenaires)
Type(s) de déploiementCloud (avec matlab) / On-premises (sans matlab)Cloud uniquementCloud uniquementCloud / On-premises / Embedded
Offres complémentairesPlugin matlabL’offre OVH : Cloud privé, Cloud public, serveurs dédiés, offre télécomL’offre AWS : Machine Learning, Stockage, calcul...Machine Learning et Marketplace

logo-octo-academy

Si vous souhaitez aller plus loin sur ce sujet, OCTO Academy vous propose une formation de 2 jours intitulée : "Créer une plateforme Internet des objets ou IoT platform" les 2-3 mai ou les 7-8 novembre 2016.