MySQL
MySQL est un système de gestion de bases de données relationnelles. Il fait partie des logiciels de gestion de base de données les plus utilisés au monde selon le classement DB-Engines, autant par le grand public (applications web principalement) que par des professionnels. SQL fait référence au « Structured Query Language » : le langage standard pour les traitements de bases de données. MySQL est Open Source, c’est-à-dire, les possibilités de libre redistribution, d’accès au code source.
Caractéristiques
MySQL est un serveur de bases de données relationnelles SQL développé dans un souci de performances élevées en lecture, ce qui signifie qu’il est davantage orienté vers le service de données déjà en place que vers celui de mises à jour fréquentes et fortement sécurisées. Il est multi-thread et multi-utilisateur. C’est un logiciel libre, open source, développé sous double licence selon qu’il est distribué avec un produit libre ou avec un produit propriétaire. Mise en œuvre Chapitre IV. Mise en œuvre
Fonctionnalités
Deux moteurs principaux sont présents dans MySQL, MyISAM et InnoDB. MyISAM, contrairement à InnoDB, ne supporte ni transactions ni intégrité automatique des tables, il n’est pas destiné aux applications dont la cohérence des données est critique ; cependant, ses performances le font adopter pour des applications ayant besoin d’une base de données simple et peu onéreuse à mettre en œuvre. Pour les utilisateurs, phpMyAdmin est un outil web souvent disponible pour créer, remplir et utiliser des bases MySQL.
Utilisation du MySQL dans notre travail
Dans notre travail nous avons utilisé MySQL comme un entrepôt temporaire pour stocker momentanément les données téléchargés du réseau « StackExchange », car MySQL offre un « Load Dump » optionnel, qui assure un chargement des gros volumes dans un temps court et sans commit. Cette phase est très importante pour la construction de notre base de données orientée graphe.
Valentina Studio
Valentina Studio est une suite d’outils de gestion de base de données gratuite pour travailler avec toutes les bases de données populaires, y compris MySQL, PostgreSQL, Microsoft SQL Server, MariaDB, SQLite et la propre base de données relationnelle objet ValentinaDB de Paradigma Software. Valentina Studio peut être mis à niveau vers Valentina Studio PRO, qui ajoute SQLDIFF, la création de diagrammes, le développement de formulaires, les outils de création de rapports, Visual Query Builder, l’éditeur SQL avancé et plus encore. Valentina Studio inclut Report Viewer pour afficher les rapports. Valentina Studio agit également en tant que client gratuit pour travailler avec Valentina Forms, un système de formulaires de données qui peut être hébergé localement ou servi à partir de Valentina Server. Les formulaires sont un puissant paradigme visuel permettant aux employés de travailler avec les données de l’entreprise et sont scriptables avec JavaScript. [34] Valentina Studio par sans éditeur de requêtes « Query Editor » on à élaborer des tables intermédiaires par l’exécution des requêtes visuelles, ce qui nous permet d’exporter les données en format CSV pour les importer a la base de données Neo4j et construire notre base de données orienté graphe. La figure 4.1 représente l’environnement de travail de Valentina Studio.
Neo4j
Neo4j permet de représenter les données en tant que nœuds reliés par un ensemble d’arcs, ces objets possédant leurs propres propriétés. Les propriétés sont constituées d’un couple de clé-valeurs de type simple tel que chaînes de caractères ou numérique ; celles-ci peuvent être indexées. La modélisation est très proche des concepts métier, il n’est pas nécessaire d’utiliser de clés dans Neo4j, car les relations ont une existence propre. L’absence de modélisation rigide rend Neo4j bien adapté à la gestion de données changeantes et de schémas évoluant fréquemment. La base de données Neo4j est construite pour être extrêmement performante pour traiter les liens entre nœuds. Ces performances sont dues au fait que Neo4j pré-calcule les jointures au moment de l’écriture des données, comparativement aux bases de données relationnelles qui calculent les jointures à la lecture en faisant appel aux Index et à la logique de clés. Ce qui fait de Neo4j une technologie adaptée à de larges ensembles de données connectées. Les traversées utilisent le langage de requête Cypher, standard de parcours des connexions, élaboré dans le but de réaliser plus simplement que SQL les opérations de parcours ou d’analyse de proximité qui sont les plus courantes lorsqu’on traite des données connectées. Les bases de données de graphes sont des outils puissants pour répondre à des requêtes faisant intervenir des relations entre objets. La recherche du plus court chemin entre deux points du graphe permet par exemple de mettre en place des profils utilisant liens sociaux, géographie et analyse d’impact. [68] Neo4j contient plusieurs bibliothèques, ont à utilisés : • APOC La bibliothèque APOC comprend de nombreuses procédures et fonctions (environ 450) pour vous aider dans de nombreuses tâches différentes dans des domaines tels que l’intégration de données, les algorithmes graphiques ou la conversion de données. • Graph Data Science (GDS)..