Ce document vous explique comment configurer et interroger Spanner Graph à l'aide de la console Google Cloud. Dans ce document, vous allez:
- Créer une instance Spanner
- Créer une base de données
- Créer un schéma de graphique
- Insérez les données du graphique.
- Interrogez le graphique que vous avez créé.
Pour en savoir plus sur les tarifs de Spanner, consultez la page Tarifs de Spanner.
Pour essayer un atelier de programmation, consultez Premiers pas avec Spanner Graph.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- L'API Spanner doit être activée automatiquement. Si ce n'est pas le cas, activez-la manuellement : Activer l'API Spanner
-
Pour obtenir les autorisations dont vous avez besoin pour créer des instances et des bases de données, demandez à votre administrateur de vous accorder le Rôle IAM Administrateur Cloud Spanner (
roles/spanner.admin
) sur votre projet.
Créer une instance
Lorsque vous utilisez Spanner pour la première fois, vous devez créer une instance, c'est-à-dire un élément qui alloue les ressources utilisées par les bases de données Spanner.
Dans la console Google Cloud, accédez à la page Spanner.
Sélectionnez ou créez un projet Google Cloud si vous ne l'avez pas déjà fait.
Effectuez l'une des opérations suivantes :
Si vous n'avez jamais créé d'instance Spanner, sur la page Bienvenue dans Spanner, cliquez sur Créer une instance provisionnée.
Si vous avez créé une instance Spanner, sur la page Instances, cliquez sur Créer une instance.
Sur la page Sélectionner une édition, choisissez Enterprise Plus ou Grandes entreprises :
Spanner Graph n'est disponible que dans l'édition Enterprise ou Édition Enterprise Plus. Pour comparer les différentes éditions, cliquez sur Comparer les éditions Pour en savoir plus, consultez la présentation des éditions Spanner.
Cliquez sur Continuer.
Dans Nom de l'instance, saisissez un nom d'instance. Par exemple,
test-instance
Dans ID d'instance, conservez ou modifiez l'ID d'instance. Par défaut, votre ID d'instance par le nom de votre instance, mais vous pouvez le modifier. Le nom de votre instance et les ID d'instance peuvent être identiques ou différents.
Cliquez sur Continuer.
Dans Sélectionner une configuration, procédez comme suit:
Laissez l'option Régional sélectionnée.
Dans Sélectionner une configuration, sélectionnez une région. La région que vous sélectionnez est l'emplacement où vos instances sont stockées et dupliquées.
Cliquez sur Continuer.
Dans Configurer la capacité de calcul, procédez comme suit:
Dans Sélectionner une unité, choisissez Unités de traitement (PU).
Dans Choisir un mode de scaling, laissez Allocation manuelle sélectionné et dans Quantité, conservez 1 000 unités de traitement.
Cliquez sur Créer. La console Google Cloud affiche la page Présentation de la que vous avez créée.
Créer une base de données
Dans la console Google Cloud, accédez à la page Spanner Instances.
Cliquez sur l'instance que vous avez créée, par exemple
Test Instance
.Dans Vue d'ensemble, sous le nom de votre instance, cliquez sur Créer une base de données.
Dans Nom de la base de données, saisissez un nom de base de données. Exemple :
example-db
Dans Sélectionner le dialecte de base de données, choisissez "SQL standard Google". Spanner Graph n'est pas disponible dans le dialecte PostgreSQL. Voici à quoi ressemble la page de création de votre base de données :
Cliquez sur Créer. La console Google Cloud affiche la page Vue d'ensemble de la base de données que vous avez créée.
Créer un schéma pour votre base de données Spanner Graph
Dans le menu de navigation, cliquez sur Spanner Studio.
Sur la page Spanner Studio, cliquez sur l'onglet Éditeur 1 ou sur
Nouvel onglet ou utilisez-en un nouvel onglet.Copiez et collez le schéma suivant dans l'onglet de l'éditeur. Le schéma contient deux définitions de table de nœuds,
Person
etAccount
, et deux arêtes les définitions de table,PersonOwnAccount
etAccountTransferAccount
. Spanner Graph utilise des tables relationnelles pour définir des graphiques. Vous voyez donc à la fois des tables relationnelles et des instructions de graphique dans le schéma. Pour en savoir plus sur le schéma de graphique Spanner, consultez la présentation du schéma de graphique Spanner.CREATE TABLE Person ( id INT64 NOT NULL, name STRING(MAX), birthday TIMESTAMP, country STRING(MAX), city STRING(MAX), ) PRIMARY KEY (id); CREATE TABLE Account ( id INT64 NOT NULL, create_time TIMESTAMP, is_blocked BOOL, nick_name STRING(MAX), ) PRIMARY KEY (id); CREATE TABLE PersonOwnAccount ( id INT64 NOT NULL, account_id INT64 NOT NULL, create_time TIMESTAMP, FOREIGN KEY (account_id) REFERENCES Account (id) ) PRIMARY KEY (id, account_id), INTERLEAVE IN PARENT Person ON DELETE CASCADE; CREATE TABLE AccountTransferAccount ( id INT64 NOT NULL, to_id INT64 NOT NULL, amount FLOAT64, create_time TIMESTAMP NOT NULL, order_number STRING(MAX), FOREIGN KEY (to_id) REFERENCES Account (id) ) PRIMARY KEY (id, to_id, create_time), INTERLEAVE IN PARENT Account ON DELETE CASCADE; CREATE OR REPLACE PROPERTY GRAPH FinGraph NODE TABLES (Account, Person) EDGE TABLES ( PersonOwnAccount SOURCE KEY (id) REFERENCES Person (id) DESTINATION KEY (account_id) REFERENCES Account (id) LABEL Owns, AccountTransferAccount SOURCE KEY (id) REFERENCES Account (id) DESTINATION KEY (to_id) REFERENCES Account (id) LABEL Transfers );
Cliquez sur Exécuter. La page Résultats indique que des mises à jour de schéma sont en cours. Une fois la mise à jour terminée, un message s'affiche dans Résultats pour indiquer que la mise à jour terminé.
Insérer des données de graphique
La console Google Cloud fournit une interface qui permet d'insérer, la modification et la suppression de données.
Insérer des données
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur.
Copiez et collez les instructions d'insertion de données de graphique suivantes dans les nœuds et les arêtes.
INSERT INTO Account (id, create_time, is_blocked, nick_name) VALUES (7,"2020-01-10 06:22:20.222",false,"Vacation Fund"), (16,"2020-01-27 17:55:09.206",true,"Vacation Fund"), (20,"2020-02-18 05:44:20.655",false,"Rainy Day Fund"); INSERT INTO Person (id, name, birthday, country, city) VALUES (1,"Alex","1991-12-21 00:00:00","Australia","Adelaide"), (2,"Dana","1980-10-31 00:00:00","Czech_Republic","Moravia"), (3,"Lee","1986-12-07 00:00:00","India","Kollam"); INSERT INTO AccountTransferAccount (id, to_id, amount, create_time, order_number) VALUES (7,16,300,"2020-08-29 15:28:58.647","304330008004315"), (7,16,100,"2020-10-04 16:55:05.342","304120005529714"), (16,20,300,"2020-09-25 02:36:14.926","103650009791820"), (20,7,500,"2020-10-04 16:55:05.342","304120005529714"), (20,16,200,"2020-10-17 03:59:40.247","302290001255747"); INSERT INTO PersonOwnAccount (id, account_id, create_time) VALUES (1,7,"2020-01-10 06:22:20.222"), (2,20,"2020-01-27 17:55:09.206"), (3,16,"2020-02-18 05:44:20.655");
Le graphique suivant montre les utilisateurs, les comptes, le propriétaire du compte et transferts de compte à partir des hors-texte:
Cliquez sur Exécuter. Une fois l'exécution terminée, l'onglet Results (Résultats) indique que 3 lignes ont été insérées.
Exécuter une requête de graphique
Sur la page Présentation de la base de données, cliquez sur Spanner Studio dans la le menu de navigation.
Sur la page Spanner Studio, cliquez sur
Nouvel onglet ou utilisez l'onglet de l'éditeur.Saisissez la requête suivante dans l'éditeur de requête. La requête trouve tout le monde vers lequel Dana a transféré de l'argent, et le montant de ces transferts.
GRAPH FinGraph MATCH (from_person:Person {name: "Dana"})-[:Owns]-> (from_account:Account)-[transfer:Transfers]-> (to_account:Account)<-[:Owns]-(to_person:Person) RETURN from_person.name AS from_account_owner, from_account.id AS from_account_id, to_person.name AS to_account_owner, to_account.id AS to_account_id, transfer.amount AS amount
Cliquez sur Exécuter.
L'onglet Résultats affiche les chemins suivants de Dana à
Account {id:20}
:- À
Account {id:7}
appartenant à Alex. À
Account {id:16}
appartenant à Lee.
- À
Effectuer un nettoyage
De nombreux exemples de la section Étape suivante utilisent les ressources que vous avez configurées dans ce document. Si vous souhaitez continuer à travailler avec Spanner Graph utilisant l'un de ces exemples, n'effectuez pas ces nettoyages étapes.
Sinon, pour éviter que des frais supplémentaires ne soient facturés sur votre compte de facturation Cloud, supprimez la base de données et l'instance que vous avez créées lors de la configuration. La suppression d'une instance entraîne automatiquement la suppression de toutes les bases de données créées dans celle-ci.
Supprimer la base de données
Dans la console Google Cloud, accédez à la page Instances Spanner.
Cliquez sur le nom de l'instance contenant la base de données à laquelle vous souhaitez delete, par exemple : Test Instance.
Cliquez sur le nom de la base de données que vous souhaitez supprimer, par exemple, example-db :
Sur la page Détails de la base de données, cliquez sur Supprimer la base de données.
Confirmez que vous souhaitez supprimer la base de données en la saisissant et cliquez sur Supprimer.
Supprimer l'instance
Dans la console Google Cloud, accédez à la page Instances Spanner.
Cliquez sur le nom de l'instance que vous souhaitez supprimer, par exemple Instance de test.
Cliquez sur Supprimer l'instance.
Confirmez la suppression de l'instance en la saisissant et cliquez sur Supprimer.
Étape suivante
- Découvrez Spanner Graph grâce à un atelier de programmation.
- Apprenez-en plus sur le schéma du graphique Spanner.
- Créer, mettre à jour ou supprimer un schéma de graphique Spanner
- Insérez, mettez à jour ou supprimez des données de graphique Spanner.
- Présentation des requêtes Spanner Graph
- Migrer vers Spanner Graph