Riak s’ajuste aux contraintes de l’IoT
Avec Riak TS, Basho a optimisé sa base NoSQL aux exigences des données chronologiques (Time Series) qui requièrent une organisation minutieuse sur les disques pour mieux supporter les requêtes de type Range Queries.
Riak s’habille un peu plus au couleur de l’Internet des objets. Basho, son éditeur, a décidé d’ajouter à son concept de plateforme intégrée de gestion des données, bâti sur un cœur NoSQL, un moteur de stockage taillé sur mesure pour les données chronologiques. Et de l’intégrer dans une nouvelle déclinaison de Riak. Nom de code : Riak TS (pour Time Series – séries temporelles).
Les données chronologiques servent généralement à définir les évolutions d’une tendance ou encore les variations d’une valeur à des intervalles donnés. Ces données, qui réclament des environnements de traitements spécifiques, sont créées et collectées en temps réel, avec, suivant les variations, un effet fluctuant, débouchant inévitablement sur une forte augmentation des charges sur les bases de données, ainsi que sur la nécessité d’avoir des performances élevées en écriture et lecture.
Ces données sont généralement générées par des réseaux de capteurs (au cœur de l’Internet des objets) ou encore auprès des services financiers et de la santé par exemple.
Seulement voilà. A spécificité donnée doit correspondre une infrastructure type de gestion des données. Une équation que Basho souhaite résoudre avec Riak TS. Cette déclinaison s’inscrit dans la logique de la Basho Data Platform, une plateforme intégrée de la société, dont la vocation est d’associer différentes technologies pour répondre à différents types de données et différents types de charges. Le tout autour d’un cœur NoSQL, le Riak Core, qui par défaut apporte les capacités de dimensionnement, la répartition en cluster et la haute-disponibilité. Cette plateforme associe ainsi Riak KV (base clé/valeur distribuée) et Riak S2 (stockage objet large) et une série de projets Open Source clé, comme SolR, Redis et enfin Spark. Il faudra donc désormais lui greffer des capacités de stockage et de traitements des donnés chronologiques.
Co-localiser les données pour accélérer les requêtes Range Queries
Logiquement, pour cibler cette problématique, Basho ont dû optimiser sa technologie et se caler sur les spécificités des séries temporelles, résume en substance Emmanuel Marchal, directeur EMEA de Basho Technologies. Par exemple, pour répondre aux contraintes très fortes de lecture ultra-rapide des données, le système a été ajusté pour que les données soient organisées sur les disques, pour au final en accélérer leur interrogation par le biais de requête de type Range Queries (des requêtes sur des plages de temps cibles). Ces requêtes ne sont pas efficaces si les données sont réparties sur différents serveurs d’un cluster, explique Emmanuel Marchal. Le positionnement des données sur les disques est ici capital. Ce que Riak KV ne fait pas. »
Riak TS va ainsi co-localiser les données par type sur un même serveur, que ce soit en fonction des notions de temps ou des informations remontées par les capteurs (comme la température par exemple) ou par géographie (segmentation cartographique sous la forme de grille). « Ces données doivent être stockées sur les mêmes serveurs », ajoute-t-il. Autre optimisation liée au Range Queries, Basho s’appuie sur un sous-ensemble de SQL pour gérer les requêtes, avec la volonté d’en faciliter l’accès par les développeurs SQL.
Autre ajustement mis en avant par Emmanuel Marchal, une optimisation du stockage à très bas niveau pour aussi accélérer le retour des données. Enfin des travaux d’optimisation ont été réalisés sur l’intégration avec Spark, explique-t-il, pour rapprocher les capacités analytiques du framework de TS. Outre l’intégration des modèles de données, Emmanuel Marchal évoque la possibilité de déployer et de gérer en direct des clusters Spark (sans avoir recours à Apache ZooKeeper).
Si avec Riak TS, Basho entend compléter les capacités de sa plateforme intégrée, l’éditeur, l’un des pionniers du NoSQL, compte bien se positionner sur des marchés très porteur, comme celui de l’Internet des objets. Un marché rappelons le évalué à 1 700 milliards de dollars en 2020, si l’on en croit les chiffres IDC.