Vidéo: La Data Visualization 2024
La structure fondamentale des bases de données de graphe dans le Big Data est appelée "relation de nœud". "Cette structure est la plus utile lorsque vous devez traiter des données hautement interconnectées. Les nœuds et les relations prennent en charge les propriétés , une paire clé-valeur dans laquelle les données sont stockées.
Ces bases de données sont parcourues en suivant les relations. Ce type de stockage et de navigation n'est pas possible dans les SGBDR (systèmes de gestion de bases de données relationnelles) en raison des structures de table rigides et de l'impossibilité de suivre les connexions entre les données où qu'elles puissent nous mener. Une base de données graphique pourrait être utilisée pour gérer des données géographiques pour l'exploration pétrolière ou pour modéliser et optimiser les réseaux d'un fournisseur de télécommunications.
L'une des bases de données graphiques les plus utilisées est Neo4J. C'est un projet open source sous licence publique GNU v3. 0. Une version commerciale supportée est fournie par Neo Technology sous GNU AGPL v3. 0 et licence commerciale.
Neo4J est une base de données de transactions ACID offrant une haute disponibilité grâce au clustering. Il s'agit d'une base de données fiable et évolutive qui est facile à modéliser en raison de la structure fondamentale des propriétés de relation de nœud et de la façon dont elle se rapproche naturellement de nos propres relations humaines. Il ne nécessite pas de schéma et ne nécessite pas de saisie de données. Il est par conséquent très flexible.
Avec cette flexibilité, il y a quelques limites. Les nœuds ne peuvent pas se référencer directement. Par exemple, vous (en tant que nœud) ne pouvez pas être votre propre père ou mère (en tant que relation), mais vous pouvez être un père ou une mère . Il peut y avoir des cas réels où l'auto-référence est requise.
Si c'est le cas, une base de données graphique n'est pas la meilleure solution car les règles sur l'auto-référence sont strictement appliquées. Alors que la capacité de réplication est très bonne, Neo4J ne peut reproduire que des graphes entiers, en limitant la taille globale du graphe (environ 34 milliards de nœuds et 34 milliards de relations).
Les principales caractéristiques de Neo4J sont les suivantes:
-
Intégration avec d'autres bases de données: Neo4J prend en charge la gestion des transactions avec rollback pour permettre une interopérabilité transparente avec les banques de données non graphiques.
-
Services de synchronisation: Neo4J prend en charge les comportements pilotés par les événements via un bus d'événements, la synchronisation périodique avec lui-même ou un SGBDR en tant que maître et la synchronisation par lots traditionnelle.
-
Résilience: Neo4J prend en charge les sauvegardes à froid (c'est-à-dire lorsque la base de données n'est pas en cours d'exécution) et à chaud (en cours d'exécution), ainsi qu'un mode de clusterisation à haute disponibilité.Des alertes standard sont disponibles pour l'intégration avec les systèmes de gestion des opérations existants.
-
Langage de requête: Neo4J supporte un langage déclaratif appelé Cypher, conçu spécifiquement pour interroger les graphes et leurs composants. Les commandes Cypher sont vaguement basées sur la syntaxe SQL et ciblent les requêtes ad hoc des données du graphe.
Les implémentations de Neo4J sont les mieux adaptées pour
-
Réseaux sociaux
-
Classification des domaines biologiques ou médicaux
-
Création de communautés dynamiques de pratique ou d'intérêt