Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Note
Cette fonctionnalité est actuellement disponible en préversion publique. Cette préversion est fournie sans contrat de niveau de service, et n’est pas recommandée pour les charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’utilisation supplémentaires pour les préversions de Microsoft Azure.
Une base de données de graphe modélise les données sous la forme d’un réseau d’entités et de relations connectées. Le type de base de données de graphe le plus couramment utilisé implémente le modèle de graphique de propriété étiqueté : les entités (nœuds) et les relations (arêtes) peuvent avoir des étiquettes et des propriétés (paires clé-valeur). Ce modèle flexible permet à la fois des conceptions facultatives de schéma et pilotées par des schémas, et vous permet d’exprimer une sémantique riche. Étant donné que les connexions sont stockées explicitement en tant que périphéries, les requêtes parcourent les relations en suivant des arêtes au lieu de calculer des jointures coûteuses au moment de la requête.
Important
Cet article utilise exclusivement l’exemple de jeu de données de graphe de réseau social.
Concepts fondamentaux de la base de données Graph
- Les nœuds représentent des éléments tels que des personnes, des produits ou des lieux. Les nœuds peuvent avoir des étiquettes et des propriétés qui décrivent leurs attributs.
- Les arêtes représentent la façon dont ces éléments sont connectés, par exemple AMI_DE, ACHETÉ ou SITUÉ_DANS. Les arêtes peuvent également porter des propriétés et des étiquettes pour encoder les métadonnées de relation.
- Les propriétés associent des détails aux nœuds et aux arêtes (par exemple, le nom d’une personne ou la date de l'arête). Étant donné que les relations sont stockées explicitement en tant que bords, les requêtes naviguent dans le graphique en suivant les connexions plutôt que de les calculer au moment de la requête.
Comment fonctionne l'interrogation des relations
Les requêtes Graph récupèrent les informations connectées en passant d’un nœud de départ à ses voisins, puis à leurs voisins, et ainsi de suite. L’effort effectué par un travers est lié au nombre de bords qu’il touche (le quartier local), et non à la taille totale du jeu de données. Cela rend naturel et efficace d'exprimer des questions concernant les chemins d’accès, les connexions et les modèles, tels que les amis d’amis, les chemins les plus courts ou les dépendances à plusieurs sauts.
Les bases de données graphes utilisent des langages de requête basés sur des modèles, tels que le langage GQL (Graph Query Language) de plus en plus adopté, pour décrire ces traversées de manière concise. GQL est normalisé par le même groupe de travail international qui supervise SQL (ISO/IEC 39075), alignant l’interrogation de graphiques avec les normes de base de données établies.
Exemple (correspondance de modèle avec GQL) :
MATCH (p:Person {firstName: "Annemarie"})-[:knows]->(friend)-[:likes]->(c:Comment)
RETURN c
ORDER BY c.creationDate
LIMIT 100
Ce modèle fonctionne de la manière suivante : à partir du nœud Person pour Annemarie, suivez les arêtes :knows vers chaque ami, puis suivez les arêtes :likes vers les nœuds associés :Comment et retournez les 100 plus récents de ces commentaires.
Modélisation et schéma
Les modèles de données de graphe sont à schéma facultatif : vous pouvez utiliser un schéma fixe lorsque vous avez besoin d'une gouvernance forte, ou faire évoluer le modèle à mesure que de nouveaux types de nœuds, relations ou propriétés apparaissent. Cette approche réduit la nécessité d’une duplication des données et permet aux équipes d’unifier les données de plusieurs sources sans remaniement initial.
Utilisations courantes pour les bases de données de graphe
Les bases de données de graphe s’alignent étroitement sur les domaines où les connexions génèrent de la valeur, tels que les réseaux sociaux, les graphes de connaissances, les systèmes de recommandation, les réseaux de fraude et de risque, la topologie réseau et informatique, et l’analyse des dépendances de la chaîne logistique. Dans ces scénarios, les questions concernent moins les enregistrements uniques et davantage le nombre d’entités qui se lient et interagissent sur plusieurs sauts.
Quand prendre en compte une base de données de graphe
Choisissez une base de données de graphe lorsque vos questions principales impliquent des chemins, des quartiers et des modèles dans les données connectées ; lorsque le nombre de tronçons est variable ou non connu à l’avance ; ou lorsque vous devez combiner et parcourir les relations entre des jeux de données disparates. Si ce sont les questions auxquelles vous devez répondre à plusieurs reprises, un modèle de graphe est un ajustement naturel.
Qu’en est-il de l’ETL
La représentation de vos données sous la forme d’un graphe et son stockage dans une base de données de graphe autonome distincte introduit souvent une surcharge ETL et de gouvernance. En revanche, le graphique dans Microsoft Fabric fonctionne directement sur OneLake, ce qui réduit ou élimine la nécessité de pipelines ETL distincts et de duplication de données. Tenez compte de ces compromis :
- Déplacement et duplication des données : les bases de données de graphe autonomes nécessitent généralement l’extraction, la transformation et le chargement de données (ETL) dans un magasin distinct, augmentant la complexité et pouvant entraîner des jeux de données dupliqués. Graph dans Microsoft Fabric fonctionne sur OneLake afin de pouvoir modéliser et interroger des données connectées sans le déplacer.
- Coûts opérationnels : les piles de graphiques autonomes s’exécutent en tant que clusters ou services distincts et comportent souvent des frais de capacité inactive. Les charges de travail de graphiques dans Fabric consomment des unités de capacité mutualisées avec une réduction automatique et des métriques centralisées, ce qui simplifie les opérations et peut réduire les coûts.
- Scalabilité : certaines bases de données de graphe autonomes dépendent d’une extension verticale ou d’un regroupement spécifique au fournisseur. Graph dans Microsoft Fabric est conçu pour les graphes à grande échelle et utilise le partage horizontal sur plusieurs workers pour gérer efficacement les charges de travail big data.
- Outils et compétences : les systèmes graphiques spécifiques au fournisseur peuvent nécessiter des langages spécialisés et des infrastructures analytiques distinctes. Graph dans Microsoft Fabric fournit une modélisation unifiée, des requêtes basées sur des normes (GQL), des algorithmes d’analyse de graphes intégrés, l’intégration bi et l’ia, ainsi que des outils exploratoires à faible/sans code afin qu’un ensemble plus large d’utilisateurs puissent travailler avec des données connectées.
- Gouvernance et sécurité : les déploiements de graphiques distincts nécessitent des configurations de gouvernance et de sécurité indépendantes. Graph dans Microsoft Fabric utilise la gouvernance OneLake, la traçabilité et le contrôle d'accès basé sur les rôles (RBAC) au niveau de l'espace de travail afin que la conformité, l'audit et les autorisations restent cohérents avec le reste de votre environnement Fabric.