Internet des objets : comment relever le délicat défi des "time series"

Les données émises par les objets connectés portent en elles une composante essentielle : le temps. Une notion qui change la façon d'aborder leur stockage et leur traitement.

Du bracelet d'automesure au capteur de chaleur posé sur une installation industrielle en passant par un enregistreur de vol dans un avion, les objets connectés envahissent le quotidien. Ils produisent un flux continu de données qui peuvent être utilisées pour améliorer nos activités personnelles (quantified self) ou professionnelles.

Les données collectées 24/7 ont pour particularité d'être horodatées. Ce qui permet de suivre l'évolution de l'état d'un objet dans le temps : un élément riche d'enseignements. Dans une optique de monitoring, ces séries temporelles - ou time series - permettent de connaître en temps réel l'état de santé d'un équipement, de calculer son niveau de performance (disponibilité, temps de latence…), de prévenir une panne.

A partir de l'historique de ces time series, on peut en déduire l'usage réel d'un matériel puis en optimiser l'utilisation voire décider d'un changement de modèle. Il est également possible de connaître la fréquentation d'un lieu, heure par heure, via des capteurs de présence. En fait, les cas d'usage sont sans limite.

Une volumétrie et une indexation particulières

Ex-Googler, Mathias Herberts est le CTO et cofondateur de la start-up Citizen Data qui se spécialise dans le Big Data et l'IoT.

Mais stocker, consulter et analyser ces séries chronologiques ne peut se faire par le biais de bases de données relationnelles classiques. Elles ne sont pas designées pour cela. Pour une question de volumétrie tout d'abord. Un capteur qui établit une mesure toutes les secondes, c'est plus de 31,5 millions de valeurs à la fin de l'année ! Des données qu'il faut historiser sur un laps de temps suffisamment long. Si la période est inférieure à un an, les mesures d'un capteur de chaleur ne permettront pas de tenir compte, par exemple, des effets de saisonnalité.

Le nombre des senseurs croît, par ailleurs, de façon exponentielle compte tenu de leur très faible coût. Ce qui participe à l'explosion du volume d'informations. Les 300 000 capteurs embarqués d'un Airbus A380 génèrent, en moyenne, 16 To de données par vol.

Ensuite, il est difficile de recourir à une base relationnelle pour une question d'ingénierie. Les bases de données orientées séries chronologiques (time series database) répondent en revanche à une logique d'indexation plus adaptée, en associant la valeur temps (timestamp) à une classe particulière de métrique (par exemple, la mesure de la température).

Ces données n'ont pas vocation à être modifiées. Alors que les SGBDR sont conçus pour supporter toutes sortes de requêtes, ces bases sont optimisées pour le stockage et le tri de séries chronologiques et d'événements.

Parmi les bases de données distribuées NoSQL répondant à ce type de besoins, on peut citer, dans le monde open source, OpenTSDB (reposant sur HBase), KairosDB (reposant sur Cassandra), InfluxDB ou Promotheus développé par SoundClound. Du côté des solutions propriétaires, on trouve Informix TimeSeries d'IBM ou le récent Riak TS de Basho Technologies.

Transports, aéronautique, ville intelligente, smart grid

La deuxième brique, c'est l'environnement d'analyse qui doit s'exécuter au plus près des données. Fondée en 2013, la société française Cityzen Data a créé une plateforme qui combine stockage et traitement des données de time series et un langage dédié appelé Einstein.

Cityzen Data a ajouté une dimension en plus : la géolocalisation. Dans ces séries spatiotemporelles, la position du capteur (latitude, longitude, élévation) est enregistrée. "Ce qui évite de devoir conserver le contexte de mesures", précise Mathias Herberts, CTO et cofondateur de la start-up.

Des fabricants d'objets connectés qui sous-estiment l'enjeu des time series

Cet ex-Google (comme beaucoup de spécialistes des times series), pionnier du Big Data en France, estime que les fabricants d'objets connectés sous-estiment l'enjeu. "Quand il y a peu de capteurs ça va mais si la réussite est au-rendez-vous, le nombre de données explose et les mauvais paris technologiques se font sentir. Ils devraient se focaliser sur les deux extrémités de la chaîne de valeur : le design et l'expérience utilisateur", conseille l'expert. Côté entreprises utilisatrices, Cityzen Data compte des clients dans la ville intelligente, les transports, l'aéronautique, avec notamment Airbus et Alstom, mais aussi dans le trading haute fréquence (Mckay Brothers).

Google, AWS, Azure et OVH sur le créneau

Les acteurs du cloud se sont aussi positionnés sur le créneau. Avec Cloud Bigtable, Google propose un plateforme NoSQL, adaptée aux time series. Elle repose sur les technologies que le groupe utilise depuis près de dix ans pour ses propres services - dont Maps ou Gmail. Au sein d'Azure IoT Suite, Microsoft propose Stream Analytics, un service de traitement des flux de données en temps réel dans le cloud.

De son côté, Amazon Web Services ouvrira, en 2016, Kinesis Analytics, une plateforme orientée time series mais requêtable en SQL. En 2016 toujours, OVH commercialisera un PaaS dédié à l'internet des objets, baptisé tout simplement "PasS TimeSeries", vers lequel les entreprises pousseront leurs données machines. "Cette infrastructure repose sur des technologies scalables, capables d'encaisser plus de 100 millions de requêtes par seconde par cluster", affirme l'opérateur français. OVH et Sigfox ont profité du dernier CES pour officialiser un partenariat. PasS TimeSeries sera étroitement intégré à l'offre de connectivité de Sigfox.

Stockage / Big Data