microworks - Fotolia
IBM habille Db2 aux couleurs de l’IA… et pour les data scientists
Cette version 11.5 de la base historique d’IBM devient une « AI Database » plus adaptée aux data scientists et mâtinée de Machine Learning pour faciliter l’accès aux données et à son administration.
IBM a finalement décidé de porter Db2 sur les terres très prometteuses de l’Intelligence Artificielle. Dans le vocabulaire de Big Blue, la base historique du groupe née en 1983 devient une « AI database » dans sa version 11.5, jonchée de Machine Learning pour faciliter l’accès aux données, son administration, mais aussi pour la rapprocher au plus près des développeurs et des data scientists. IBM souhaite que désormais Db2 soit aussi une base pour fabriquer les précieux modèles d’intelligence artificielle.
Cela se concrétise d’abord par le support des principaux outils de ces data scientists. Db2 peut se connecter aux frameworks ainsi qu’aux langages les plus courus chez cette cible via une série de pilotes open source, disponibles depuis GitHub. Go, Ruby, Python, PHP, Java, Node.js et Sequelize y sont par exemple présents. Logiquement Watson Studio peut servir d’environnement de développement, mais la nouveauté porte surtout sur le support de Visual Studio Code et des notebooks Jupyter, très utilisés dans cette communauté d’utilisateurs. « Db2 fonctionne ainsi comme le veulent les data scientists », écrit d’ailleurs Jon Lind, Principal Offering Manager, Db2, chez IBM, dans un billet de blog.
Un autre outil vise cette cible d’utilisateurs, mais cette fois-ci davantage métier : Db2 Augmented Data Explorer. Ce module s’apparente en fait à un moteur de recherche classique (comprendre de type Google) qui permet d’interroger en langage naturel les jeux de données. Il crée automatiquement des visualisations à la volée ou encore cible les jeux de données adéquats. IBM positionne cela comme un outil d’analytique en self-service - cette approche fait d’ailleurs penser à celle mise en place par Alation dans sa technologie de catalogue de données, elle-aussi teintée de Machine Learning.
Mais au-delà des fonctions purement d’AI, IBM a aussi souhaité aborder les phases amont de ces traitements algorithmiques, à savoir la gestion, l’accès et l’intégration des données. Pour motoriser les capacités de fédérations de données, Big Blue a revu l’architecture de sa base en lui posant un moteur de requêtes dynamiques centralisé, le Common SQL Engine (CSE). Celui-ci est en effet partagé à la gamme Db2, IBM Db2 Warehouse, IBM Db2 Big SQL, IBM Integrated Analytics System ainsi qu’aux systèmes PureData for Analytics (qui reprennent la technologie de Netezza).
Cela permet d’interroger les données localisées dans plusieurs sources de données, in situ, sans avoir à les déplacer, ni en ayant recours à un ETL (Extract, Load, Transform). Pour cela, CSE s’appuie sur une technologie de virtualisation de données – à vrai dire la même qui motorise IBM Cloud Pak for Data (le nouveau nom de Cloud Private for Data). Mais CSE peut également être étendu à des sources de données hors IBM sur site ou dans le cloud, comme les bases Oracle, Microsoft et Teradata et d’autres comme AWS RedShift ou Hive. Les données sont ainsi exposées par vue à la bonne cible, quelles que soient leurs sources.
L’AI pour accompagner les DBA
Mais ce n’est pas tout. Car IBM a aussi souhaité distiller le Machine Learning pour automatiser et simplifier les opérations d’ajustement généralement effectuées par les administrateurs de bases de données. Db2 11.5 se dote ainsi d’un outil d’optimisation de requêtes afin de contrôler leurs performances. Un DBA est souvent appelé à se débattre avec des requêtes complexes qui nécessitent d’interroger des pétaoctets de données. Il passe d’ailleurs une grande partie de son temps à optimiser les bonnes requêtes. Avec cet optimiseur, désormais compris dans Db2, la base interprète elle-même le bon chemin et a la capacité de l’améliorer automatiquement à chaque itération via le ML.
« Les requêtes s'exécutent plus rapidement qu'auparavant avec Db2 11.5 car la base monitore les performances SQL dans le temps et les met en corrélation avec les requêtes en utilisant des algorithmes de Machine Learning. Cela permet de créer et d'optimiser des modèles pour des commandes SQL spécifiques », explique ce même Jon Lind.
Automatiser la maintenance d’une base de données via le ML n’est pas une nouveauté. Oracle a par exemple développé une série de services cloud au-dessus d’Oracle 18c, Autonomous Database, dont la vocation est justement de doter la base de capacité d’auto-suffisance en matière d’administration, de gestion des patches de sécurité, d’optimisation des requêtes et de gestion des erreurs notamment.