Brevet FR3096477A1 — publié le 20201127

Description Titre de l'invention : GÉNÉRATION DE GRAPHIQUE DE JONCTION RÉTRORÉFLÉCHISSANT POUR DES REQUÊTES DE BASE DE DONNÉES RELATIONNELLES Domaine technique 100011 La présente invention concerne le domaine de la gestion de base de données et plus particulièrement la génération d'un graphique de jonction pour des requêtes de base de données relationnelles. Technique antérieure [0002] Le terme base de données désigne une collecte organisée de données, stockées et. ac- cessibles électroniquement au moyen d'un système informatique. Un système de gestion de base de données (SGBD) est à son tour un programme informatique qui fournit une interface entre la base de données et un ou plusieurs utilisateurs finaux afin de faciliter l'interaction de chaque utilisateur final avec la base de données. Un SGBD fournit généralement aussi une interface avec d'autres programmes informatiques pour accéder aux données de la base de données sous-jacente. En général, les utilisateurs finaux et les autres programmes informatiques interagissent avec la base de données par l'intermédiaire du SGBD en utilisant des directives d'interrogation formées conformément à un langage de requête correspondant tel que le vénérable langage de requête structuré (SQL). [0003] Bien que l'utilisation très basique de SQL pour interroger et gérer des données dans une base de données ne soit pas très difficile pour de nombreux utilisateurs finaux, la formulation de requêtes SQL plus complexes n'est pas pour les plus timorés. Plus important encore, la spécification d'une requête indépendamment de la mécanique de la requête réelle nécessite une bonne compréhension des données de la base de données et des relations sous-jacentes entre les données. Dans la mesure où il n'est pas pratique de "lire" le contenu d'une base de données, on sait qu'il est. possible de modéliser une base de données de manière à ce que le modèle de base de données créé puisse ensuite être introspecté afin de permettre une meilleure compréhension des données dans la base de données. En effet, les outils modernes d'analyse de données permettent non seulement la modélisation d'une base de données existante, mais aussi la formulation de requêtes SQL à exécuter sur la base de données sur la base de connaissances fournies uniquement par le modèle. [0004] A cet égard, un modèle de données est un modèle abstrait qui décrit comment un ensemble de données d'une base de données est organisé et guide la construction des requêtes relatives aux données de l'ensemble de données. Le modèle de données 2 contient généralement un graphique de jonction dont les sommets font référence à une table et dont les bords reflètent les conditions de jonction entre les références aux tables. De plus, le graphique de jonction peut également décrire les colonnes de ces tables, les colonnes dérivées d'autres colonnes par l'intermédiaire d'expressions, les collections de colonnes par lesquelles les requêtes sont généralement triées, les collections de colonnes par lesquelles les requêtes sont généralement regroupées en sous-totaux et totaux, les expressions qui sont dérivées en combinant les valeurs des colonnes pendant la construction d'un sous-total ou total, et autres suggestions sur comment les requêtes devraient être formées sur les données. [0005] Malgré la robustesse d'un modèle de données, l'introspection d'un modèle de données pour une base de données ne suffit pas à elle seule pour avoir une compréhension complète des données d'une base de données. En fait, les outils de modélisation de base de données automatisés ne peuvent généralement produire qu'un modèle de base de données explicitement mappé à la base de données sous-jacente, y compris les requêtes précédemment définies dans le modèle tel qu'exécuté précédemment sur la base de données par l'intermédiaire du SGBD de la base de données. Mais il reste tellement d'informations implicites non découvertes qui, autrement, pourraient être déduites des données existantes dans la base de données, mais qui n'ont pas encore été explicitement définies. Résumé de l'invention [0006] Les modes de réalisation de la présente invention comblent les lacunes de l'état de l'art en ce qui a trait à la génération de modèle de données pour une base de données et fournissent un procédé, un système et un produit de programme informatique nouveaux et non évidents pour la génération de graphique de jonction à inclure dans le modèle de données basé sur un registre des requêtes de base de données déjà exécutées. Dans un mode de réalisation de l'invention, un procédé pour générer un graphique de jonction pour des requêtes de base de données relationnelles comprend le chargement dans une mémoire d'un ordinateur, d'un registre d'un ensemble de requêtes de base de données précédemment exécutées sur des données dans une base de données du système de gestion de base de données et l'analyse séquentielle de chacune des requêtes dans le registre pour identifier des composants sémantiquement caractérisables différents de chacune des requêtes. Le procédé comprend en outre la génération d'un graphique de jonction pour chacune des requêtes à partir des composants correspondants parmi les composants. Enfin, le procédé comprend l'ajout sélectif de chacun des graphiques de jonction générés à un ensemble de graphiques de jonction dans un modèle de données pour les données dans la base de données. [0007] Dans un aspect du mode de réalisation, chacun des graphiques de jonction générés 3 est ajouté à l'ensemble des graphiques de jonction uniquement lorsqu'un graphique de jonction comparable n'est pas déjà présent dans l'ensemble des graphiques de jonction, niais à l'inverse à condition que l'un des graphiques de jonction générés soit trouvé comparable à un graphique de jonction existant dans l'ensemble, une forme fusionnée dudit graphique parmi les graphiques de jonction générés et le graphique de jonction existant est ajoutée à l'ensemble à la place dudit graphique parmi les graphiques de jonction générés. Dans un autre aspect du mode de réalisation, chaque graphique de jonction généré est créé en comparant les composants d'une requête correspondante parmi les requêtes aux composants d'une requête préenregistrée dans une mémoire de données de requêtes corrélant les requêtes aux relations de table correspondantes, en identifiant une requête préenregistrée d'appariement dans la mémoire de données et en créant le graphique de jonction généré comme une jonction des relations de table correspondantes de la requête préenregistrée appariée. Dans un autre aspect du mode de réalisation, un graphique de jonction n'est généré pour une requête correspondante parmi les requêtes que lorsque ladite requête correspondante parmi les requêtes apparaît dans le registre plus fréquemment qu'une fréquence seuil minimale. [0008] Dans encore un autre aspect du mode de réalisation, le procédé comprend en outre l'identification d'au moins deux composants dans la requête référençant des colonnes correspondantes de la base de données qui sont prédéterminées pour pouvoir être combinées en une seule colonne unique de la base de données et la génération d'un objet dans le modèle de données pour la seule colonne unique. Dans un dernier aspect du mode de réalisation, le procédé comprend en outre l'identification d'une colonne à laquelle il est fait référence de façon répétée dans les requêtes comme se rapportant à une mesure et la génération d'un objet dans le modèle de données reflétant une opération mathématique effectuée sur des valeurs de la colonne identifiée. [0009] Dans un autre mode de réalisation de l'invention, un système de traitement de données d'analyse de données est configuré pour générer un graphique de jonction pour des requêtes de base de données relationnelles. Le système comprend un système informatique hôte comprenant un ou plusieurs ordinateurs, chacun avec mémoire et au moins un processeur, et qui est couplé à une base de données gérée par un système de gestion de base de données. Le système comprend également un module de génération de graphique de jonction s'exécutant dans la mémoire du système informatique hôte. Le module comprend des instructions de programme informatique permettant lors de l'exécution dans la mémoire du système informatique hôte d'établir une connexion de base de données à la base de données et de charger dans la mémoire un registre d'un ensemble de requêtes de base de données précédemment exécutées sur des données dans la base de données par le système de gestion de base de données. Les instructions du programme permettent en outre d'analyser séquentiellement chacune des requêtes parmi les requêtes dans l'ensemble du registre pour identifier des composants sémantiquement caractérisables différents de la requête et pour sélectionner, dans un modèle de données des données, un graphique de jonction préexistant parmi un ensemble de graphiques de jonction préexistants incorporant les composants de la requête. Enfin, les instructions du programme permettent d'inviter dans une interface utilisateur du système de gestion de base de données à ajouter le graphique de jonction préexistant sélectionné au modèle de données et à ajouter le graphique de jonction préexistant sélectionné au modèle de données. [0010] D'autres aspects de l'invention seront exposés en partie dans la description qui suit et en partie seront évidents dans la description, ou pourront être appris par la pratique de l'invention. Il est entendu que la description générale qui précède et la description détaillée qui suit sont toutes deux données à titre d'exemple et explicatives et ne sont pas restrictives à l'égard de l'invention, telle que revendiquée. Brève description des dessins [0011] Les dessins accompagnant, qui sont incorporés dans le présent fascicule et en font partie intégrante, illustrent des modes de réalisation de l'invention et servent, avec la description, à expliquer les principes de l'invention. Les modes de réalisation illustrés ici sont actuellement préférés, étant entendu, toutefois, que l'invention ne se limite pas aux arrangements précis et aux instruments montrés, dans lesquels : [0012] [fig.1] La figure 1 est une illustration imagée d'un procédé de génération d'un graphique dc jonction pour des requêtes de base de données relationnelles ; [0013] [fig.21 La figure 2 est une illustration schématique d'un système de gestion de base de données configure pour générer un graphique de jonction pour des requêtes de base de données relationnelles ; et, [0014] [fig.3[ La Figure 3 est un organigramme illustrant un procédé de génération d'un graphique de jonction pour des requêtes de base de données relationnelles. Description des modes de réalisation 100151 Les modes de réalisation de l'invention permettent la génération d'un graphique de jonction pour des requêtes de bases de données relationnelles. Conformément à un mode de réalisation de l'invention, un registre de requêtes passées émises sur une base de données est chargé dans la mémoire d'un ordinateur. Par la suite, chaque requête est analysée séquentiellement afin d'identifier des composants sémantiquement caractérisables différents de la requête. Pour chacune des requêtes, un graphique de jonction est alors généré à partir de composants correspondants parmi les composants. Enfin, pour chaque graphique de jonction généré à partir des composants correspondants d'une requête analysée, les graphiques de jonction générés peuvent être ajoutés sélectivement à un ensemble de graphiques de jonction dans un modèle de données pour les données de la base de données. [0016] Dans une illustration supplémentaire, la figure 1 montre de manière imagée un procédé de génération d'un graphique de jonction pour les requêtes de base de données relationnelles. Comme le montre la Figure 1, un SGBD 120 gère les interactions avec les données d'une base de données 110 à partir d'un réseau de communication informatique 130. Une logique de génération de graphique de jonction 160 extraits du SGBD 120 à partir du réseau de communication informatique 130, un registre d'instructions SQL 140, chacune des instructions SQL dans le registre 140 incluant une directive SQL 150A souvent appelée "verbe" et un ou plusieurs composants 150B sur lesquels la directive SQL 150A agit, à savoir une ou plusieurs entités nommées. [0017] Par la suite, la logique de génération de graphique de jonction 160 traite chacune des instructions SQL dans le registre 140 afin de générer un graphique de jonction 170A à partir des composants 150B. Une fois que le graphique de jonction 170A a été généré, le graphique de jonction généré 170A est comparé à zéro ou plus des graphiques de jonction préexistants 170B dans un modèle de données 180 pour les données de la base de données 110. Le graphique de jonction généré 170A est jugé comparable à l'un des graphiques de jonction préenregistrés 170B, par exemple, lorsqu'un nombre seuil de noeuds et de connecteurs des deux graphiques de jonction 170A, 170B sont identiques. Dans la mesure où le graphique dc jonction généré 170A n'est comparable à aucun des graphiques de jonction préexistants 170W le graphique de jonction généré 170A est ajouté au modèle de données 180 pour les données de la base de la base de données 110. [0018] Eventuellement, la logique de génération de graphique de jonction 160 peut en outre traiter chaque instruction SQL dans le registre 140 pour identifier au moins deux composants 150B référençant des colonnes correspondantes de la base de données 110 qui sont prédéterminées pour être combinables dans une seule colonne unique de la base de données 110 afin de faire générer un objet dans le modèle de données 180 pour la seule colonne unique par la logique de génération de graphique de jonction 160. Comme autre option, la logique de génération de graphique de jonction 180 peut identifier une colonne référencée de façon répétée dans chacune des requêtes SQL du registre 140 comme appartenant à une mesure afin de générer un objet dans le modèle de données 180 reflétant une opération mathématique effectuée sur les valeurs de la colonne identifiée. [0019] Le procédé décrit en liaison avec la figure 1 peut être mis en oeuvre dans un système de traitement de données d'analyse de données. Dans une autre illustration, la figure 2 montre schématiquement un système de gestion de base de données configuré pour générer un graphique de jonction pour les requêtes de base de données relationnelles. Le système comprend un système informatique hôte 250 qui comprend un ou plusieurs 6 processeurs 270, une mémoire 260 et un écran 280. Le système informatique hôte 250 est couplé à un serveur de base de données distant 210 supportant l'exécution d'un SGBD 230 gérant les interactions avec une base de données 220. Le système comprend également un module de génération de graphique de jonction 300 comprenant des instructions de programme informatique qui s'exécutent dans la mémoire 260 du système informatique hôte 250. [0020] Les instructions de programme du module de génération dc graphique de jonction 300 lors de l'exécution dans la mémoire 260 du système informatique hôte sont utilisables pour établir une connexion avec le SGBD 230 et pour récupérer un registre des instructions SQL émises sur la base de données 220, chacune des instructions SQL incluant un ou plusieurs composants de données dans la base de données 220 sur lequel une directive SQL agit. Le code de programme du module 300 de génération de graphique de jonction est également utilisable pendant l'exécution pour traiter chaque instruction SQL dans le registre en créant un graphique de jonction pour les composants de l'instruction SQL et en comparant le graphique de jonction créé à un ensemble de graphiques de jonction préenregistrés 290A d'un modèle de données 290B des données dans la base de données 220 de la mémoire 260. Le code de programme du module de génération de diagramme de jonction 300 peut être utilisé pour ajouter le diagramme de jonction créé au modèle 290B dans la mémoire 260 de la base de données 220 lorsque le graphique de jonction créé n'est pas considéré comme similaire aux graphiques de jonction déjà présents dans le modèle 290B. [0021] Dans une illustration encore plus détaillée du fonctionnement du module de gé- nération de graphique de jonction 300, la figure 3 est un organigramme illustrant un procédé de génération d'un graphique de jonction pour des requêtes de base de données relationnelles. A partir du bloc 305, une connexion est établie avec la base de données disposée à distance. Dans le bloc 310, un registre de requêtes est récupéré d'un SGBD gérant les interactions avec la base de données. Ensuite, dans le bloc 315, une première requête dans le registre est sélectionnée pour un traitement. A cette fin, la requête est ensuite analysée pour en supprimer un ou plusieurs composants sur lesquels une directive SQL est spécifiée pour agir au sein de la requête et pour construire un arbre syntaxique abstrait (ASA) pour la requête. Dans le bloc 325, l'ASA se trouve dans une mémoire temporaire. [0022] Dans le bloc de décision 330, si l'ASA est déjà apparu un certain nombre de fois dans la mémoire temporaire, dans le bloc 345, un graphique de jonction est généré pour l'ASA et comparé dans le bloc 350 à un ensemble de graphiques de jonction préenregistrés disposés dans un modèle de données pour les données de la base de données en comparant les noeuds et connecteurs du graphique de jonction généré à ceux de chaque graphique de jonction préenregistré afin de déterminer un seuil de similitude ou 7 en fait de similarité complète. Dans le bloc de décision 355, si le graphique de jonction généré n'est pas considéré comme similaire à l'un des graphiques de jonction préenregistrés, par exemple parce que le graphique de jonction généré ne contient pas de tables similaires jointes par des relations similaires, alors dans le bloc 365, une invitation est affichée à ajouter le graphique de jonction généré au modèle pour la base de données. Mais à l'inverse, si le graphique de jonction généré est considéré comme similaire à l'un des graphiques de jonction pré-enregistrés, alors dans le bloc 360, le graphique de jonction généré est fusionné avec le graphique similaire parmi les graphiques de jonction préenregistrés pour former un graphique de jonction fusionné et dans le bloc 365, une invitation est affichée à ajouter le graphique de jonction fusionné au modèle pour la base de données. [0023] Dans les deux cas, dans le bloc de décision 335, s'il restait des instructions SQL sup- plémentaires à traiter dans le registre, le procédé se répète dans le bloc 340 avec la récupération d'une instruction SQL suivante dans le registre. Dans le bloc de décision 355, lorsqu'il ne reste plus d'instructions SQL à traiter dans le registre, le procédé se termine dans le bloc 365. [0024] La présente invention peut être incorporée dans un système, un procédé, un programme informatique ou toute combinaison de ceux-ci. Le programme informatique peut comprendre un support de stockage lisible par ordinateur ou un support sur lequel se trouvent des instructions de programme lisibles par ordinateur pour amener un processeur à exécuter des aspects de la présente invention. Le support de stockage lisible pal- ordinateur peut être un dispositif tangible qui peut conserver et stocker des instructions à utiliser par un dispositif d'exécution d'instructions. Le support de stockage lisible par ordinateur peut être, par exemple, un dispositif de stockage électronique, un dispositif de stockage magnétique, un dispositif de stockage optique, un dispositif de stockage électromagnétique, un dispositif de stockage semiconducteur ou toute combinaison appropriée de ce qui précède, sans toutefois s'y limiter [0025] Les instructions de programme lisibles par ordinateur décrites ici peuvent être télé- chargées à partir d'un support de stockage lisible par ordinateur ou sur un ordinateur externe ou un périphérique de stockage externe via un réseau, sur les dispositifs de calcul/traitement respectifs. Les instructions lisibles par ordinateur peuvent être exécutées entièrement sur l'ordinateur de l'utilisateur, en partie sur l'ordinateur de l'utilisateur, en tant que progiciel autonome, en partie sur l'ordinateur de l'utilisateur et en partie sur un ordinateur distant ou entièrement sur l'ordinateur ou le serveur distant. Certains aspects de la présente invention sont décrits ici à l'aide d'organigrammes et/ou de schémas fonctionnels de procédés, d'appareils (systèmes) et de produits de programmes informatiques sur la base des modes de réalisation de l'invention. Il est 8 entendu que chaque bloc des organigrammes et/ou des schémas fonctionnels, ainsi que les combinaisons de blocs des organigrammes et/ou des schémas fonctionnels, peuvent être réalisés au moyen d'instructions de programme lisibles par ordinateur. [0026] Ces instructions de programme lisibles par ordinateur peuvent être fournies à un processeur d'un ordinateur à usage général, d'un ordinateur à usage spécifique ou d'un autre appareil de traitement de données programmable pour produire une machine, de sorte que les instructions, qui sont exécutées par l'intermédiaire du processeur de l'ordinateur ou d'un autre appareil de traitement de données programmable, créent des moyens pour exécuter les fonctions/actions spécifiées dans le ou les blocs des organigrammes et/ou des schémas fonctionnels. Ces instructions de programme lisibles par ordinateur peuvent également être stockées dans un support de stockage lisible par ordinateur qui peut diriger un ordinateur, un appareil de traitement de données programmable et/ou d'autres dispositifs pour fonctionner d'une manière particulière, de sorte que le support de stockage lisible par ordinateur dans lequel sont stockées des instructions comprend un article de fabrication comprenant des instructions qui exécutent des aspects des fonctions/actions spécifiées dans le ou les blocs des organigrammes et/ou des schémas fonctionnels. [0027] Les instructions de programme lisibles par ordinateur peuvent également être chargées sur un ordinateur, un autre appareil de traitement de données programmable ou un autre dispositif pour provoquer l'exécution d'une série d'étapes opérationnelles sur l'ordinateur, un autre appareil programmable ou un autre dispositif pour produire un procédé exécuté par ordinateur, de sorte que les instructions qui exécutent sur l'ordinateur, un autre appareil programmable ou un autre dispositif mettent en oeuvre les fonctions/actions indiquées dans le ou les blocs des organigrammes et/ou des schémas fonctionnels. [0028] L'organigramme et les schémas fonctionnels présentés dans les figures illustrent l'architecture, la fonctionnalité et le fonctionnement d'implémentations possibles de systèmes, de procédés et de produits de programmes informatiques sur la base des diverses modes de réalisation de la présente invention. À cet égard, chaque bloc de l'organigramme ou des schémas fonctionnels peut représenter un module, un segment ou une partie d'instructions, qui comprend une ou plusieurs instructions exécutables pour mettre en oeuvre la ou les fonctions logiques spécifiées. Dans certaines implémentations alternatives, les fonctions notées dans le bloc peuvent se produire dans l'ordre indiqué dans les figures. Par exemple, deux blocs montrés successivement peuvent, en fait, être exécutés sensiblement simultanément, ou les blocs peuvent parfois être exécutés dans l'ordre inverse, sur la base de la fonctionnalité impliquée. Il convient également de noter que chaque bloc des schémas fonctionnels et/ou des organigrammes, et les combinaisons de blocs des schémas fonctionnels et/ou des orga- 9 nigrammcs, peuvent être mis en oeuvre par des systèmes matériels spéciaux qui effectue les fonctions ou les actes spécifiés ou exécutent des combinaisons de matériel spécial et d'instructions informatiques. [0029] Enfin, la terminologie utilisée dans le présent document ne vise qu'à décrire des modes de réalisation particuliers et ne vise pas à limiter l'invention. Il sera en outre entendu que les termes "comprend" et/ou "comprenant", lorsqu'ils sont utilisés dans la présente spécification, précisent la présence de caractéristiques, entiers, étapes, opérations, éléments et/ou composants indiqués, niais n'excluent pas la présence ou l'ajout d'une ou plusieurs autres caractéristiques, entiers, étapes, opérations, éléments, composants et/ou groupes de ceux-ci. [0030] Les structures, matériaux, actes et équivalents correspondants de tous les moyens ou éléments de l'étape et de la fonction sont destinés à inclure toute structure, tout matériau ou tout acte pour exécuter la fonction en combinaison avec d'autres éléments revendiqués comme revendiqué spécifiquement. La description de la présente invention a été présentée à des fins d'illustration et de description, niais ne se veut pas exhaustive ou limitée à l'invention sous la forme divulguée. De nombreuses modifications et variations seront apparentes aux hommes du métier sans s'écarter de la portée et de l'esprit de l'invention. Le mode de réalisation a été choisi et décrit afin d'expliquer au mieux les principes de l'invention et son application pratique, et de permettre à d'autres hommes du métier de comprendre l'invention pour diverses modes de réalisation avec diverses modifications adaptées à l'usage particulier envisagé. [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] REVENDICATIONSProcédé de génération d'un graphique de jonction pour des requêtes de base de données relationnelles, le procédé comprenant les étapes consistant à : le chargement dans unc mémoire d'un ordinateur, d'un registre d'un ensemble de requêtes de base de données précédemment exécutées sur des données dans une base dc données du système de gestion de base de données ; l'analyse séquentielle de chacune des requêtes dans le registre pour identifier des composants sémantiquement cmactérisables différents de chacune des requêtes ; la génération d'un graphique de jonction pour chacune des requêtes à partir des composants correspondants parmi les composants ; et, l'ajout sélectif de chacun des graphiques de jonction générés à un ensemble de graphiques de jonction dans un modèle de données pour les données dans la base de données. Procédé selon la revendication 1, dans lequel chacun des graphiques de jonction générés est ajouté à l'ensemble des graphiques de jonction uniquement lorsqu'un graphique de jonction comparable n'est pas déjà présent dans l'ensemble des graphiques de jonction, mais à l'inverse à condition que fun des graphiques de jonction générés soit considéré comparable à un graphique de jonction existant dans l'ensemble, une forme fusionnée dudit graphique parmi les graphiques de jonction générés et du graphique de jonction existant est ajoutée à l'ensemble à la place dudit graphique parmi les graphiques de jonction générés. Procédé selon la revendication 1, dans lequel chaque graphique de jonction généré est créé en comparant les composants d'une requête correspondante parmi les requêtes aux composants d'une requête préenregistrée dans une mémoire de données de requêtes corrélant des requêtes aux relations de table correspondantes, en identifiant une requête préenregistrée d'appariement dans la mémoire de données et en créant le graphique de jonction généré comme une jonction des relations de table correspondantes de la requête préenregistrée appariée. Procédé selon la revendication 1, dans lequel un graphique de jonction n'est généré pour une requête correspondante parmi les requêtes que lorsque ladite requête correspondante parmi les requêtes apparaît dans le registre plus fréquemment qu'une fréquence seuil minimale. 11 [Revendication 5] [Revendication 6] [Revendication 7] Procédé selon la revendication 1, comprenant en outre, pour chacune des requêtes dans le registre, les étapes consistant à: l'identification d'au moins deux composants dans la requête référençant des colonnes correspondantes de la base de données qui sont prédéterminées pour pouvoir être combinées en une seule colonne unique de la base de données ; et, la génération d'un objet dans le modèle de données pour la seule colonne unique. Procédé selon la revendication 1, comprenant en outre, pour chacune des requêtes dans le registre, les étapes consistant à : l'identification d'une colonne à laquelle il est fait référence de façon répétée dans les requêtes comme se rapportant à une mesure ; et, la génération d'un objet dans le modèle de données reflétant une opération mathématique effectuée sur des valeurs de la colonne identifiée. Système de traitement de données d'analyse de données configure pour générer un graphique de jonction pour des requêtes de base de données relationnelles, le système comprenant : un système informatique hôte comprenant un ou plusieurs ordinateurs, chacun avec mémoire et au moins un processeur, et couplé à une base de données gérée par un système de gestion de base de données: et, un module de génération de graphique de jonction s'exécutant dans la mémoire du système informatique hôte, le module comprenant des instructions de programme informatique permettant lors de l'exécution dans la mémoire du système informatique hôte d'exécuter les étapes consistant à : l'établissement d'une connexion de base de données à la base de données ; le chargement dans la mémoire d'un registre d'un ensemble de requêtes de base de données précédemment exécutées sur des données dans la base de données par le système de gestion de base de données ; l'analyse séquentielle de chacune des requêtes dans le registre pour identifier des composants sémantiquement caractérisables différents de chacune des requêtes ; la génération d'un graphique de jonction pour chacune des requêtes à partir des composants correspondants parmi les composants ; et, l'ajout sélectif de chacun des graphiques de jonction générés à un ensemble de graphiques de jonction dans un modèle de données pour les 12 [Revendication 8] [Revendication 9] [Revendication 10] [Revendication 11] [Revendication 12] [Revendication 13] données dans la base de données. Système selon la revendication 7, dans lequel chacun des graphiques de jonction générés est ajouté à l'ensemble des graphiques de jonction uniquement lorsqu'un graphique de jonction comparable n'est pas déjà présent dans l'ensemble des graphiques de jonction, mais à l'inverse à condition que l'un des graphiques de jonction générés soit considéré comparable à un graphique de jonction existant dans l'ensemble, une forme fusionnée dudit graphique parmi les graphiques de jonction générés et du graphique de jonction existant est ajoutée à l'ensemble à la place dudit graphique parmi les graphiques de jonction générés. Système selon la revendication 7, dans lequel chaque graphique de jonction généré est créé en comparant les composants d'une requête correspondante parmi les requêtes aux composants d'une requête préenregistrée dans une mémoire de données de requêtes corrélant des requêtes aux relations de table correspondantes, en identifiant une requête préenregistrée d'appariement dans la mémoire de données et en créant le graphique de jonction généré comme une jonction des relations de table correspondantes de la requête préenregistrée appariée. Système selon la revendication 7, dans lequel un graphique de jonction n'est généré pour une requête correspondante parmi les requêtes que lorsque ladite requête correspondante parmi les requêtes apparaît dans le registre plus fréquemment qu'une fréquence seuil minimale. Système selon la revendication 7, dans lequel les instructions de programme sont en outre autorisées à exécuter les étapes consistant à : l'identification d'au moins deux composants dans la requête référençant des colonnes correspondantes de la base de données qui sont prédéterminées pour pouvoir être combinées en une seule colonne unique de la base de données ; et, la génération d'un objet dans le modèle de données pour la seule colonne unique. Système selon la revendication 7, dans lequel les instructions de programme sont en outre autorisées à exécuter les étapes consistant à : l'identification d'une colonne à laquelle il est fait référence de façon répétée dans les requêtes comme se rapportant à une mesure ; et, la génération d'un objet dans le modèle de données reflétant une opération mathématique effectuée sur des valeurs de la colonne identifiée. Produit de programme informatique pour générer un graphique de 13 [Revendication 14] [Revendication 15] [Revendication 16] jonction pour des requêtes de base de données relationnelles, le produit de programme informatique comprenant un support de stockage lisible par ordinateur ayant des instructions de programme incorporées avec celui-ci, les instructions de programme exécutables par un dispositif pour amener le dispositif à exécuter un procédé comprenant les étapes consistant à : le chargement dans une mémoire d'un ordinateur, d'un registre d'un ensemble de requêtes de base de données précédemment exécutées sur des données dans une base de données du système de gestion de base de données ; l'analyse séquentielle dc chacune des requêtes dans le registre pour identifier des composants sémantiquement caracterisables différents de chacune des requêtes ; la génération d'un graphique de jonction pour chacune des requêtes à partir des composants correspondants parmi les composants ; et, l'ajout sélectif de chacun des graphiques de jonction générés à un ensemble de graphiques de jonction dans un modèle dc données pour les données dans la base de données. Produit de programme informatique selon la revendication 13, dans lequel chacun des graphiques de jonction générés est ajouté à l'ensemble des graphiques de jonction uniquement lorsqu'un graphique de jonction comparable n'est pas déjà présent dans l'ensemble des graphiques de jonction, mais à l'inverse à condition que l'un des graphiques de jonction générés soit considéré comparable à un graphique de jonction existant dans l'ensemble, une forme fusionnée dudit graphique parmi les graphiques de jonction générés et du graphique de jonction existant est ajoutée à l'ensemble à la place dudit graphique parmi les graphiques de jonction générés. Produit de programme informatique selon la revendication 13, dans lequel chaque graphique de jonction généré est créé en comparant les composants d'une requête correspondante parmi les requêtes aux composants d'une requête préenregistrée dans une mémoire de données de requêtes corrélant des requêtes aux relations de table correspondantes, en identifiant une requête préenregistrée d'appariement dans la mémoire de données et en créant le graphique de jonction généré comme une jonction des relations de table correspondantes de la requête préenregistrée appariée. Produit de programme informatique selon la revendication 13, dans 14 [Revendication 17] lequel un graphique de jonction n'est généré pour une requête correspondante parmi les requêtes que lorsque ladite requête correspondante parmi les requêtes apparaît dans le registre plus fréquemment qu'une fréquence seuil minimale. [Revendication 18] Produit de programme informatique selon la revendication 13, dans lequel le procédé comprend en outre les étapes consistant à: l'identification d'au moins deux composants dans la requête référençant des colonnes correspondantes de la base de données qui sont prédéterminées pour pouvoir être combinées en une seule colonne unique de la base de données ; et, la génération d'un objet dans le modèle de données pour la seule colonne unique. Produit de programme informatique selon la revendication 13, dans lequel le procédé comprend en outre les étapes consistant à: l'identification d'une colonne à laquelle il est fait référence de façon répétée dans les requêtes comme se rapportant à une mesure ; et, la génération d'un objet dans le modèle de données reflétant une opération mathématique effectuée sur des valeurs de la colonne identifiée.