Ce document explique comment gérer visuellement les schémas Spanner Graph dans Spanner Studio. La modélisation visuelle simplifie la conception de graphiques en vous permettant de mapper des nœuds et des arêtes via une interface intuitive au lieu de créer manuellement des instructions LDD. Cette fonctionnalité permet de concevoir, de comprendre et de collaborer plus facilement avec d'autres utilisateurs. De plus, cette approche applique automatiquement les bonnes pratiques concernant le schéma Spanner Graph, ce qui garantit une optimisation dès le départ.
Les schémas Spanner Graph peuvent également être créés et modifiés avec le LDD. Pour en savoir plus sur les schémas de graphiques de propriétés, consultez la présentation du schéma Spanner Graph. Si vous rencontrez des erreurs lorsque vous créez un schéma de graphique de propriété, consultez Résoudre les problèmes liés à Spanner Graph.

Créer un graphique
Pour commencer, accédez à Spanner Studio et cliquez sur Créer un graphique sur la page d'accueil. L'outil de modélisation de graphiques vous permet de créer votre graphique de plusieurs façons :
À partir de zéro : concevez des nœuds et des arêtes entièrement via l'interface visuelle. Spanner génère automatiquement les DDL nécessaires et les objets de schéma qui optimisent les performances.
À partir de tables existantes : mappez vos tables relationnelles actuelles directement dans un modèle de graphique, à condition qu'elles soient connectées les unes aux autres.
Une approche hybride : modélisez certains éléments à partir de zéro tout en mappant les autres à partir de vos tables existantes.
Nœuds de modèle
Pour ajouter un nœud au graphique, procédez comme suit :
À partir de zéro
Lorsque vous créez un nœud, Spanner génère automatiquement une table de base de données pour celui-ci. Lorsque vous définissez les propriétés et les clés du nœud, Spanner configure les colonnes et les clés primaires de la table.
- Ouvrez le canevas de modélisation de graphiques dans Spanner Studio.
- Ajoutez un nœud au graphique et sélectionnez Nouveau comme source de données.
- Attribuez un nom au nœud. Le nom de la table créée pour ce nœud est basé sur cette valeur.
- Attribuez un libellé au nœud. Par défaut, ce libellé correspond au nom du nœud, mais il peut être modifié.
- Définissez les propriétés associées au libellé, y compris ses noms et ses types de données. Sélectionnez Is element key (Est une clé d'élément) pour au moins une propriété afin de la désigner comme clé. Sélectionnez N'est pas nul pour interdire les valeurs nulles.
À partir d'une table existante
Lorsque vous mappez un nœud à une table existante, Spanner utilise le schéma de la table comme base. Son libellé, ses propriétés et ses clés sont automatiquement hérités de la table, mais peuvent être remplacés.
- Ouvrez le canevas de modélisation de graphiques dans Spanner Studio.
- Ajoutez un nœud au graphique et sélectionnez Source de données existante comme source de données.
- Attribuez un libellé au nœud. Par défaut, ce libellé correspond au nom du nœud, mais il peut être modifié.
- Définissez les propriétés associées au libellé. Spanner mappe les colonnes de la table sur les propriétés et ses clés primaires sur les clés d'élément. Vous pouvez personnaliser cette configuration en effectuant l'une des opérations suivantes :
- Créer des propriétés : ajoutez des propriétés, ce qui entraîne la création automatique des colonnes sous-jacentes dans votre table par Spanner.
- Supprimer des propriétés : supprimez toutes les colonnes mappées dont vous n'avez pas besoin pour ce nœud.
Bords du modèle
Pour ajouter un bord au graphique, procédez comme suit :
À partir de zéro
Lorsque vous créez un bord à partir de zéro, la table sous-jacente est créée automatiquement. Lorsque vous définissez les nœuds source et de destination, Spanner configure en arrière-plan les clés primaires et les colonnes de référence nécessaires.
Ouvrez le canevas de modélisation de graphiques dans Spanner Studio.
Ajoutez un bord au graphique et sélectionnez Nouveau comme source de données. Saisissez le nom de l'arête.
Sélectionnez les nœuds source et de destination. Spanner génère les propriétés nécessaires pour identifier les clés des éléments source et de destination, et les utilise comme clés d'élément par défaut de l'arête.
Par défaut, une seule arête peut exister entre deux nœuds spécifiques, car Spanner utilise les clés d'élément de nœud source et de destination pour identifier de manière unique chaque arête. Si vous avez besoin de plusieurs périphéries entre les deux mêmes nœuds (un cas d'utilisation courant dans le monde réel), définissez une propriété supplémentaire et sélectionnez Est une clé d'élément pour que chaque périphérie reste unique.
Attribuez un libellé à l'arête. Par défaut, il correspond au nom de l'arête.
Définissez les propriétés supplémentaires de l'arête.
Lorsque vous finalisez l'arête, Spanner génère automatiquement les instructions LDD nécessaires pour optimiser vos traversées d'arêtes. Pour en savoir plus, consultez Examiner et générer le LDD.
À partir d'une table existante
Lorsque vous mappez un bord à une table existante, Spanner utilise le schéma de la table comme base. Son libellé, ses propriétés et ses clés sont automatiquement hérités du tableau, mais vous pouvez les remplacer ou ajouter de nouvelles propriétés.
Ouvrez le canevas de modélisation de graphiques dans Spanner Studio.
Ajoutez un bord au graphique et sélectionnez Table existante comme source de données.
Sélectionne les nœuds source et de destination. Définissez les colonnes de références de la source et de la destination.
Attribuez un libellé à l'arête. Par défaut, cela correspond au nom de la table d'entrée de l'arête.
Définissez les propriétés associées au libellé. Spanner mappe automatiquement les colonnes de la table sur les propriétés et ses clés primaires sur les clés des éléments d'arête. Vous pouvez modifier cette configuration de différentes manières :
- Créer des propriétés : ajoutez des propriétés, et Spanner créera les colonnes sous-jacentes dans votre table.
- Supprimez les propriétés : supprimez toutes les colonnes mappées dont vous n'avez pas besoin pour cette arête.
Pour les arêtes créées à partir de tables existantes, Spanner ne génère pas d'instructions LDD pour optimiser les traversées d'arêtes. Consultez les bonnes pratiques concernant les schémas pour appliquer les optimisations manuellement.
Modifier un graphique
Vous pouvez charger un graphique de propriétés existant dans Spanner Studio pour mettre à jour sa structure.
- Dans l'explorateur d'objets, recherchez le graphique que vous souhaitez modifier, puis sélectionnez Afficher/modifier visuellement dans le menu Plus d'options.
- Ajoutez des nœuds ou des arêtes à partir de zéro ou mappés à partir de tables existantes.
- Mettez à jour les propriétés des nœuds et des arêtes existants. Vous pouvez utiliser les colonnes disponibles dans les tables sous-jacentes ou ajouter de nouvelles propriétés. Les colonnes correspondantes sont alors automatiquement ajoutées à la table sous-jacente.
- Supprimez des nœuds ou des arêtes de la définition du graphique.
Examiner et générer le LDD
Une fois votre modélisation terminée, Spanner génère les instructions LDD suivantes en fonction de votre modèle.
CREATE OR REPLACE PROPERTY GRAPH: crée ou met à jour la définition du graphique.CREATE TABLE: crée les tables sous-jacentes pour tous les nœuds ou arêtes créés à partir de zéro.ALTER TABLE ADD COLUMN: ajoute de nouvelles colonnes de propriétés aux nœuds ou aux arêtes mappés à partir de tables existantes.ALTER TABLE ADD CONSTRAINT: crée des contraintes de clé étrangère pour optimiser le parcours des arêtes sortantes.CREATE INDEX: crée des index d'arêtes inversées pour optimiser le parcours des arêtes inversées.
Validez les modifications apportées au graphique en procédant comme suit :
- Appuyez sur le bouton Générer le LDD pour générer le schéma. Les instructions LDD nécessaires décrites précédemment sont créées.
- Examinez les instructions LDD générées dans l'éditeur Spanner Studio. Les instructions sont présentées dans l'ordre d'exécution et incluent des commentaires expliquant chaque objet de schéma. Vous pouvez modifier les déclarations avant de continuer.
- Exécutez les instructions pour valider les modifications apportées à votre base de données.
Limites
- Modifications uniquement additives : pour des raisons de sécurité, l'outil ne génère pas d'énoncés
DROP TABLEniDROP COLUMN. La suppression d'un nœud, d'un bord ou d'une propriété ne met à jour que la définitionPROPERTY GRAPH. Il ne supprime pas les tables ni les colonnes sous-jacentes. - Certains objets de schéma non compatibles : cet outil ne génère pas automatiquement tous les objets de schéma, les types de données de colonne ni leurs qualificatifs possibles. Toutefois, vous pouvez modifier manuellement les instructions LDD générées dans l'éditeur avant de les valider.
- L'enregistrement des brouillons n'est pas pris en charge : lorsque vous modélisez un graphique, la progression n'est pas enregistrée si vous fermez la page.
- Les données sans schéma ne sont pas prises en charge : cet outil ne génère que des graphiques avec une structure formelle. Si votre cas d'utilisation nécessite des données sans schéma, vous pouvez utiliser cet exemple de schéma comme base pour créer votre graphique de données sans schéma.
- Les vues et les tables de schémas nommés ne sont pas compatibles : vous ne pouvez pas sélectionner de vues de base de données ni de tables de schémas nommés comme source de données lorsque vous mappez des nœuds et des arêtes à des sources de données existantes.
- Aucune contrainte ni aucun index de bord mappés : l'outil ne génère pas de contraintes de clé étrangère ni d'index de bord inversés pour les bords mappés à partir de tables existantes. Consultez les bonnes pratiques pour la création manuelle.
Étapes suivantes
- Gérer les données Spanner Graph
- En savoir plus sur les requêtes Spanner Graph
- Découvrez les bonnes pratiques pour optimiser les requêtes Spanner Graph.