La théorie informatique devient pratique grâce à Hana


Alors que SAP vend sa propre base de données Hana sur le plan marketing comme une machine à remonter le temps - Realtime Enterprise -, certains scientifiques de SAP s'essaient à la recherche fondamentale sérieuse.
Il en est résulté entre autres un moteur graphique qui fournit sur la plateforme Hana, outre le SQL, un moteur de base de données selon le principe de la théorie des graphes. Dans le livre blanc SAP PAL (Predictive Analysis Library), on trouve déjà de nombreuses fonctions Hana qui vont bien au-delà de l'espace linguistique SQL.
Pour le traitement des graphiques dans Hana, SAP est cependant allé encore plus loin, car il n'y a pas seulement le moteur graphique, mais aussi un compilateur pour le langage de programmation graphique Wipe.
Par nature, les graphes ne sont pas toujours meilleurs que les tables SQL, mais de nombreux problèmes de la vie réelle peuvent être mieux représentés par des graphes ou sont de toute façon déjà intuitivement disponibles sous forme de graphes. L'exemple le plus connu est peut-être le problème du travelling-salesman.
Un voyageur d'action doit se rendre à certains endroits et essaie d'optimiser son trajet. Les lieux sont les nœuds du graphe et les lignes de connexion - routes, lignes aériennes, etc. - entre les nœuds sont les arêtes.
La plupart du temps, on utilise des arêtes orientées. Appelées flèches dans le langage courant, elles permettent d'indiquer non seulement que deux lieux sont reliés par une liaison, mais aussi comment et si l'on peut aller d'un lieu à l'autre.
La théorie s'intéresse aussi bien aux graphes orientés qu'aux graphes non orientés. Au début, la théorie des graphes est très intuitive : un système routier complexe peut très bien être représenté par un graphe.
Si ce système se trouve sur les deux rives d'un fleuve et qu'il n'existe qu'un seul pont reliant ces deux sous-systèmes, le théoricien des graphes parle également de pont. En tant que moteur de base de données, on utilise principalement des arêtes orientées, qui définissent ainsi des relations entre les nœuds.
Un graphe est donc le nom général d'une structure abstraite qui représente un ensemble d'objets ainsi que les liens existant entre ces objets, appelés nœuds et arêtes en mathématiques.
Tant les nœuds que les arêtes peuvent avoir des propriétés, appelées properties. Les graphes sont généralement représentés par des cercles individuels reliés par des lignes. Les arbres généalogiques, les cartes mentales ou le réseau de métro d'une ville en sont d'autres exemples parlants.
Une base de données de graphiques permet de stocker, de gérer et d'interroger des données sous forme de graphiques. Ils se prêtent particulièrement bien à la représentation claire d'informations fortement interconnectées et non structurées.
En effet, ils accordent la même importance aux données stockées (par exemple les clients ou les produits) et à la relation entre ces données (par exemple "qui achète quoi" ou "quel achat a eu lieu en premier"). Ces relations ne sont donc plus reléguées au rang de simples métadonnées, mais se trouvent au contraire au centre du modèle.
Les bases de données de graphes prennent en charge d'innombrables relations orientées de ce type entre les différentes instances. Il en résulte un vaste contexte sémantique pour les données. Les liens et les interdépendances dans les réseaux de personnes, mais aussi de produits, comme les systèmes de télécommunication ou l'Internet des objets en pleine expansion, peuvent ainsi être indiqués de manière exhaustive. Sur cette base, il est possible de développer de nouveaux services ou d'améliorer les services existants.
La plateforme Hana offre la possibilité de construire une base de données de graphes. Pour cela, il existe le langage de programmation Wipe, développé en interne, qui se trouve encore dans un état de ramp-up fermé. Il est donc possible que les noms des produits changent encore d'ici la sortie finale.
La communauté Graph parmi les experts Hana, les partenaires et les clients existants est encore très restreinte. Reste à savoir si cette approche pourra s'imposer comme un mouvement général dans l'environnement ERP.
Mais le fait est que de nombreux problèmes analytiques et de big data de la vie réelle peuvent être représentés de manière très élégante avec une base de données de graphes. Dans le domaine de l'analyse prédictive, Wipe et la bibliothèque de fonctions graphiques Hana devraient donc avoir une place fixe.