In diesem Dokument erfahren Sie, wie Sie Spanner Graph mit der Google Cloud Console einrichten und abfragen. In diesem Dokument werden Sie:
- Erstellen Sie eine Spanner-Instanz.
- Datenbank erstellen
- Erstellen Sie ein Diagrammschema.
- Diagrammdaten einfügen.
- Fragen Sie das von Ihnen erstellte Diagramm ab.
Weitere Informationen zu den Spanner-Preisen finden Sie unter Spanner-Preise.
Informationen zum Ausprobieren eines Codelabs finden Sie unter Erste Schritte mit Spanner Graph.
Hinweise
- 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.
- Die Spanner API sollte automatisch aktiviert werden. Ist dies nicht der Fall, aktivieren Sie die Funktion manuell: Spanner API aktivieren
-
Um die Berechtigungen zu erhalten, die Sie zum Erstellen von Instanzen und Datenbanken benötigen, bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud Spanner Admin (
roles/spanner.admin
) für Ihr Projekt zu erteilen.
Instanz erstellen
Wenn Sie Spanner zum ersten Mal verwenden, müssen Sie eine Instanz erstellen, die ist eine Zuweisung von Ressourcen, die von Spanner-Datenbanken verwendet werden.
Rufen Sie in der Google Cloud Console die Seite Spanner auf.
Wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines, falls noch nicht geschehen.
Führen Sie einen der folgenden Schritte aus:
Wenn Sie noch keine Spanner-Instanz erstellt haben, klicken Sie auf der Seite Willkommen bei Spanner auf Bereitgestellte Instanz erstellen.
Wenn Sie eine Spanner-Instanz erstellt haben, rufen Sie die Seite Instanzen auf auf Instanz erstellen.
Wählen Sie auf der Seite Version auswählen die Option Enterprise Plus oder Enterprise aus.
Spanner Graph ist nur in der Enterprise- oder Enterprise Plus-Version verfügbar. Wenn Sie die verschiedenen Versionen vergleichen möchten, klicken Sie auf Versionen vergleichen. Weitere Informationen finden Sie in der Übersicht über Spanner-Versionen.
Klicken Sie auf Weiter.
Geben Sie unter Instanzname einen Instanznamen ein, z. B.
test-instance
.Behalten oder ändern Sie unter Instanz-ID die Instanz-ID. Standardeinstellungen Ihrer Instanz-ID in den Instanznamen ein, aber Sie können ihn ändern. Ihren Instanznamen und Instanz-ID kann gleich oder unterschiedlich sein.
Klicken Sie auf Weiter.
Führen Sie unter Konfiguration auswählen die folgenden Schritte aus:
Lassen Sie die Option Regional ausgewählt.
Wählen Sie unter Konfiguration auswählen eine Region aus. In der ausgewählten Region werden Ihre Instanzen gespeichert und repliziert.
Klicken Sie auf Weiter.
Führen Sie unter Rechenkapazität konfigurieren die folgenden Schritte aus:
Wählen Sie unter Einheit auswählen die Option Verarbeitungseinheiten aus.
Lassen Sie unter Skalierungsmodus auswählen die Option Manuelle Zuordnung aktiviert und behalten Sie unter Menge die Anzahl von 1.000 Prozessoren bei.
Klicken Sie auf Erstellen. In der Google Cloud Console wird die Seite Übersicht für den Instanz, die Sie erstellt haben.
Datenbank erstellen
Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.
Klicken Sie auf die von Ihnen erstellte Instanz, z. B.
Test Instance
.Klicken Sie in der Übersicht unter dem Namen Ihrer Instanz auf Datenbank erstellen.
Geben Sie unter Datenbankname einen Datenbanknamen ein. Beispiel:
example-db
.Wählen Sie unter Datenbankdialekt auswählen die Option „Google Standard-SQL“ aus. Spanner-Diagramm ist im PostgreSQL-Dialekt nicht verfügbar. Ihre Datenbankerstellung sieht jetzt so aus:
Klicken Sie auf Erstellen. In der Google Cloud Console wird die Seite Übersicht für die von Ihnen erstellte Datenbank angezeigt.
Schema für Ihre Spanner-Graphdatenbank erstellen
Klicken Sie im Navigationsmenü auf Spanner Studio.
Klicken Sie auf der Seite Spanner Studio auf den Tab Editor 1 oder auf
Neuer Tab oder verwenden Sie einen neuen Tab.Kopieren Sie das folgende Schema und fügen Sie es in den Editor-Tab ein. Das Schema enthält zwei Knotentabellendefinitionen,
Person
undAccount
, und zwei Kanten TabellendefinitionenPersonOwnAccount
undAccountTransferAccount
. In Spanner Graph werden relationale Tabellen verwendet, um Graphen zu definieren. Daher sehen Sie im Schema sowohl relationale Tabellen als auch Graphausdrücke. Weitere Informationen zum Spanner-Graphschema finden Sie unter Spanner-Graphschema – Übersicht.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 );
Klicken Sie auf Ausführen. Auf der Seite Ergebnisse wird angezeigt, dass Schemaupdates ausgeführt werden. Nach Abschluss der Aktualisierung wird in den Ergebnissen eine Meldung angezeigt, dass die Aktualisierung durchgeführt wurde. abgeschlossen.
Diagrammdaten einfügen
Die Google Cloud Console bietet eine Schnittstelle zum Daten bearbeiten und löschen.
Daten einfügen
- Klicken Sie auf der Seite Spanner Studio auf Neuer Tab oder verwenden Sie die Editor-Tab.
Kopieren Sie die folgenden Einfügeanweisungen für Graphdaten und fügen Sie sie in die Knoten ein und Kanten.
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");
Die folgende Grafik zeigt die Personen, Konten, Kontoinhaberschaft und Kontoübertragungen aus den Beilagen:
Klicken Sie auf Ausführen. Nach Abschluss der Ausführung werden auf dem Tab Ergebnisse drei Zeilen eingefügt.
Diagrammabfrage ausführen
Klicken Sie auf der Seite Übersicht der Datenbank auf Spanner Studio im Navigationsmenü auswählen.
Klicken Sie auf der Seite Spanner Studio auf
Neuer Tab oder verwenden Sie den Tab „Editor“.Geben Sie im Abfrageeditor die folgende Abfrage ein. Die Abfrage findet alle an die Dana Geld überwiesen hat, und den Betrag dieser Überweisungen.
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
Klicken Sie auf Ausführen.
Auf dem Tab Ergebnisse werden die folgenden Pfade von Dana über
Account {id:20}
angezeigt:- An
Account {id:7}
, Eigentümer: Alex. An
Account {id:16}
, Eigentümer: Lee.
- An
Bereinigen
Viele der Beispiele in Nächste Schritte nutzen die Ressourcen, die Sie in diesem Dokument eingerichtet haben. Wenn Sie weiter mit einem Spanner-Diagramm unter Verwendung eines dieser Beispiele, führen Sie diese Bereinigung nicht durch Schritte noch nicht gemacht.
Andernfalls löschen Sie die Datenbank und die Instanz, die Sie während der Einrichtung erstellt haben, um zusätzliche Kosten für Ihr Cloud-Rechnungskonto zu vermeiden. Beim Löschen einer Instanz werden alle in der Instanz erstellten Datenbanken automatisch gelöscht.
Datenbank löschen
Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.
Klicken Sie auf den Namen der Instanz, die die Datenbank enthält, die Sie löschen möchten, z. B. Test Instance.
Klicken Sie auf den Namen der Datenbank, die Sie löschen möchten, z. B. beispieldatenbank.
Klicken Sie auf der Seite Datenbankdetails auf „Löschen“ Datenbank löschen.
Bestätigen Sie, dass Sie die Datenbank löschen möchten, indem Sie die Datenbank eingeben und klicken Sie auf Löschen.
Instanz löschen
Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.
Klicken Sie auf den Namen der Instanz, die Sie löschen möchten, z. B. Test-Instanz.
Klicken Sie auf Instanz löschen.
Bestätigen Sie, dass Sie die Instanz löschen möchten, indem Sie die Instanz eingeben und klicken Sie auf Löschen.
Nächste Schritte
- Weitere Informationen zu Spanner Graph mit einem codelab.
- Weitere Informationen zum Spanner-Graphschema
- Erstellen, aktualisieren oder löschen Sie ein Spanner-Diagrammschema.
- Spanner-Graphdaten einfügen, aktualisieren oder löschen
- Spanner Graph-Abfragen – Übersicht
- Zu Cloud Spanner Graph migrieren