« Base de données orientées Graphe et similarité » : différence entre les versions
(Page créée avec « Il y a de nos jours énormément de données a traiter (Big Data) avec internet, et pour pouvoir gérer et analyser ces données l'utilisation des bases de données est de... ») |
Aucun résumé des modifications |
||
Ligne 8 : | Ligne 8 : | ||
== Creation de bases de données orienté graphe : == |
== Creation de bases de données orienté graphe : == |
||
Pour réaliser ce projet, j'ai du créer des bases de données orientées graphe. Pour ce faire, j'ai utilisé le système de gestion de base de données (SGBD) orienté graphe Neo4j. Ce SGBD utilise le langage de requête Cypher qui a la particularité d'être basé sur de l'art ASCII (ASCII Art) pour créer ces requêtes ce qui rends le langage visuel et facile à lire. Pour héberger les bases de données Neo4j , j'ai utilisé |
Pour réaliser ce projet, j'ai du créer des bases de données orientées graphe. Pour ce faire, j'ai utilisé le système de gestion de base de données (SGBD) orienté graphe Neo4j. Ce SGBD utilise le langage de requête Cypher qui a la particularité d'être basé sur de l'art ASCII (ASCII Art) pour créer ces requêtes ce qui rends le langage visuel et facile à lire. Pour héberger les bases de données Neo4j , j'ai utilisé l’hébergeur Graphendb. |
||
[[Fichier:Exemple_requete_ascii.png | frame | Exemple d'une requête sous forme d'ASCII Art en Cypher]] |
[[Fichier:Exemple_requete_ascii.png | frame | none | Exemple d'une requête sous forme d'ASCII Art en Cypher]] |
||
== Apprentissage du langage Cypher == |
== Apprentissage du langage Cypher == |
||
Dans le langage cypher il y a quatre éléments important pour pouvoir créer une base de données orienté graphe : |
|||
*Les Noeuds (Nodes) (Les principales instances) |
|||
*Les relations (Relationships) (Qui relient les noeuds entre eux) |
|||
*Les propriétés (Properties) (Les caractéristique spécifique des noeuds et relations) |
|||
*Les fonction permettant de gérer ces objets |
Version du 16 mai 2020 à 19:16
Il y a de nos jours énormément de données a traiter (Big Data) avec internet, et pour pouvoir gérer et analyser ces données l'utilisation des bases de données est devenu primordial. De nos jours, les utilisateurs ne peuvent plus faire directement le choix d'un produit, d’un média...
Pour cela, la plupart des entreprises utilisent un système de recommandations. Ces systèmes de recommandations utilisent des algorithmes qui identifie des utilisateurs similaires et leurs recommande des éléments susceptible de les intéresser.
Dans ce projet nous n'allons pas utiliser des bases de données relationnels (qui sont les bases de données les plus courantes) car contrairement à ce qu'indique leur nom, elles ne sont pas efficaces pour gérer les relations. A l'inverse, les bases de données orientés graphe, qui reprennent la théorie des graphes en utilisant de noeuds et des arcs pour représenter et stocker les données, rends ces bases de données très efficace pour traiter les relations. Nous allons utiliser ce type de base de donnée car nous nous intéressons au liens entre les utilisateur et les « produits ».
L'objectif final de ce projet va être de créer un système de recommandation de film en utilisant les bases de données orienté graphes et des algorithmes de recherche de similarité. Nous allons également faire une application des bases de données orienté graphe avec des données sur la contamination de la maladie du COVID-19.
Creation de bases de données orienté graphe :
Pour réaliser ce projet, j'ai du créer des bases de données orientées graphe. Pour ce faire, j'ai utilisé le système de gestion de base de données (SGBD) orienté graphe Neo4j. Ce SGBD utilise le langage de requête Cypher qui a la particularité d'être basé sur de l'art ASCII (ASCII Art) pour créer ces requêtes ce qui rends le langage visuel et facile à lire. Pour héberger les bases de données Neo4j , j'ai utilisé l’hébergeur Graphendb.
Apprentissage du langage Cypher
Dans le langage cypher il y a quatre éléments important pour pouvoir créer une base de données orienté graphe :
- Les Noeuds (Nodes) (Les principales instances)
- Les relations (Relationships) (Qui relient les noeuds entre eux)
- Les propriétés (Properties) (Les caractéristique spécifique des noeuds et relations)
- Les fonction permettant de gérer ces objets