MDA-based Approach for implementing Big Data on NoSQL systems
Approche dirigée par les modèles pour l'implantation de bases de données massives sur des SGBD NoSQL
Résumé
La transformation digitale des entreprises et plus largement celle de la société, entraine une évolution des bases de données (BD) relationnelles vers les BD massives. Dans les systèmes informatiques décisionnels actuels, les décideurs doivent pouvoir constituer des bases de données, les réorganiser puis en extraire l’information pertinente pour la prise de décision. Ces systèmes sont donc naturellement impactés par cette évolution où les données sont généralement stockées sur des systèmes NoSQL capables de gérer le volume, la variété et la vélocité.
Nos travaux s’inscrivent dans cette mutation ; ils concernent plus particulièrement les mécanismes d’implantation d’une BD massive sur un SGBD NoSQL. Le point de départ du processus d’implantation est constitué d’un modèle contenant la description conceptuelle des données et des contraintes d’intégrité associées.
Peu de travaux ont apporté des solutions automatiques complètes portant à la fois sur les structures de données et les contraintes d’intégrité. L’objectif de cette thèse est de proposer une démarche générale qui guide et facilite la tâche de transformation d’un modèle conceptuel en un modèle d’implantation NoSQL. Pour ceci, nous utilisons l’architecture MDA qui est une norme du consortium OMG pour le développement dirigé par les modèles.
A partir d'un modèle conceptuel exprimé à l'aide du formalisme UML, notre démarche MDA applique deux processus unifiés pour générer un modèle d’implantation sur une plateforme NoSQL choisie par l’utilisateur :
- Le processus de transformation d’un DCL,
- Le processus de transformation des contraintes associées,
Nos deux processus s’appuient sur :
- Trois niveaux de modélisation : conceptuel, logique et physique, où le modèle logique correspond à une représentation générique compatible avec les quatre types de SGBD NoSQL : colonnes, documents, graphes et clé-valeur,
- Des métamodèles permettant de vérifier la validité des modèles à chaque niveau,
- Des normes de l’OMG pour formaliser l’entrée du processus et l’ensemble des règles de transformation.
Afin de vérifier la faisabilité de notre solution, nous avons développé un prototype composé de deux modules. Le premier applique un ensemble de règles de transformation sur un modèle conceptuel et restitue un modèle NoSQL associé à un ensemble de directives d’assistance. Le second module complète le premier en intégrant les contraintes qui ne sont pas prises en compte dans le modèle physique généré. Nous avons montré également la pertinence de nos propositions grâce à une évaluation réalisée par des ingénieurs d’une société spécialisée dans le décisionnel.
It is widely accepted today that relational systems are not appropriate to handle Big Data. This has led to a new category of databases commonly known as NoSQL databases that were created in response to the needs for better scalability, higher flexibility and faster data access. These systems have proven their efficiency to store and query Big Data. Unfortunately, only few works have presented approaches to implement conceptual models describing Big Da-ta in NoSQL systems. This paper proposes an automatic MDA-based approach that provides a set of transformations, formalized with the QVT language, to translate UML conceptual models into NoSQL models. In our approach, we build an intermediate logical model compatible with column, document, graph and key-value systems. The advantage of using a unified logical model is that this model remains stable, even though the NoSQL system evolves over time which simplifies the transformation process and saves developers efforts and time.
Origine : Fichiers produits par l'(les) auteur(s)