Dokumen ini menunjukkan cara menyiapkan dan membuat kueri Spanner Graph menggunakan konsol Google Cloud dan library klien. Topik berikut akan membantu Anda mempelajari cara:
Untuk mempelajari detail harga Spanner, lihat Harga Spanner.
Untuk mencoba codelab, lihat Mulai menggunakan Spanner Graph.
Sebelum memulai
- 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.
- Spanner API akan diaktifkan secara otomatis. Jika tidak, aktifkan secara manual: Aktifkan Spanner API
-
Untuk mendapatkan izin yang diperlukan untuk membuat instance dan database, minta administrator untuk memberi Anda peran IAM Cloud Spanner Admin (
roles/spanner.admin
) di project Anda. -
Untuk mendapatkan izin yang diperlukan untuk membuat kueri grafik Spanner jika Anda tidak diberi peran Admin Cloud Spanner, minta administrator Anda untuk memberi Anda peran IAM Cloud Spanner Database Reader (
roles/spanner.databaseReader
) di project Anda. Di Google Cloud console, buka halaman Spanner.
Pilih atau buat Google Cloud project jika Anda belum melakukannya.
Lakukan salah satu hal berikut:
Jika Anda belum pernah membuat instance Spanner, di halaman Welcome to Spanner, klik Create a provisioned instance.
Jika Anda telah membuat instance Spanner, di halaman Instances, klik Create instance.
Di halaman Pilih edisi, pilih Enterprise Plus atau Enterprise.
Grafik Spanner hanya tersedia di edisi Enterprise atau Enterprise Plus. Untuk membandingkan berbagai edisi, klik Bandingkan edisi. Untuk mengetahui informasi selengkapnya, lihat Ringkasan edisi Spanner.
Klik Lanjutkan.
Di Instance name, masukkan nama instance, misalnya,
test-instance
.Di Instance ID, pertahankan atau ubah ID instance. ID instance Anda secara default adalah nama instance, tetapi Anda dapat mengubahnya. Nama instance dan ID instance Anda bisa sama atau berbeda.
Klik Lanjutkan.
Di Pilih konfigurasi, lakukan hal berikut:
Biarkan Regional tetap dipilih.
Di Pilih konfigurasi, pilih wilayah. Region yang Anda pilih adalah tempat instance Anda disimpan dan direplikasi.
Klik Lanjutkan.
Di Configure compute capacity, lakukan hal berikut:
Di Pilih unit, pilih Unit pemrosesan (PU).
Di Pilih mode penskalaan, tetap pilih Alokasi manual dan di Jumlah, tetap gunakan 1.000 unit pemrosesan.
Klik Buat. Konsol Google Cloud menampilkan halaman Ringkasan untuk instance yang Anda buat.
- Di konsol Google Cloud , buka halaman Spanner Instances.
Klik instance yang Anda buat, misalnya,
Test Instance
.Di Overview, di bagian nama instance Anda, klik Create database.
Di Nama database, masukkan nama database. Contoh,
example-db
.Di Select database dialect, pilih Google Standard SQL. Grafik Spanner tidak tersedia dalam dialek PostgreSQL. Halaman pembuatan database Anda sekarang akan terlihat seperti ini:
Salin dan tempel skema berikut ke tab editor DDL Templates. Skema ini berisi dua definisi tabel node,
Person
danAccount
, serta dua definisi tabel edge,PersonOwnAccount
danAccountTransferAccount
. Spanner Graph menggunakan tabel relasional untuk menentukan grafik, sehingga Anda dapat melihat tabel relasional dan pernyataan grafik dalam skema. Untuk mempelajari skema Spanner Graph lebih lanjut, lihat Ringkasan skema Spanner Graph.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 );
Jangan buat perubahan apa pun di Tampilkan opsi enkripsi.
Klik Buat.Konsol Google Cloud akan menampilkan halaman Overview untuk database yang Anda buat.
Di halaman Spanner Studio, klik
Tab baru atau gunakan tab editor.Salin dan tempel pernyataan penyisipan data grafik berikut ke dalam node dan tepi.
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");
Klik Run. Setelah proses berjalan selesai, tab Results akan menampilkan bahwa 3 baris telah disisipkan.
Di halaman Overview database, klik Spanner Studio di menu navigasi.
Di halaman Spanner Studio, klik
Tab baru atau gunakan tab editor.Masukkan kueri berikut di editor kueri. Kueri ini menemukan semua orang yang menerima transfer uang dari Dana, dan jumlah transfer tersebut.
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
Klik Run.
Tab Hasil menampilkan jalur berikut dari Dana melalui
Account {id:20}
:- Ke
Account {id:7}
yang dimiliki oleh Alex. Ke
Account {id:16}
milik Lee.
- Ke
Di konsol Google Cloud , buka halaman Spanner Instances.
Klik nama instance yang memiliki database yang ingin Anda hapus, misalnya, Test Instance.
Klik nama database yang ingin Anda hapus, misalnya, example-db.
Di halaman Database details, klik hapus Delete database.
Konfirmasi bahwa Anda ingin menghapus database dengan memasukkan nama database dan mengklik Hapus.
Di Google Cloud console, buka halaman Spanner Instances.
Klik nama instance yang ingin Anda hapus, misalnya, Test Instance.
Klik Hapus instance.
Konfirmasi bahwa Anda ingin menghapus instance dengan memasukkan nama instance, lalu klik Hapus.
- Pelajari lebih lanjut Spanner Graph menggunakan codelab.
- Pelajari skema Spanner Graph.
- Membuat, memperbarui, atau menghapus skema Spanner Graph.
- Menyisipkan, memperbarui, atau menghapus data Spanner Graph.
- Ringkasan kueri Spanner Graph.
- Migrasikan ke Spanner Graph.
Membuat instance
Saat pertama kali menggunakan Spanner, Anda harus membuat instance, yang merupakan alokasi resource yang digunakan oleh database Spanner. Bagian ini menunjukkan cara membuat instance menggunakan konsol Google Cloud .
Membuat database dengan skema Spanner Graph
Bagian ini menunjukkan cara menggunakan konsol Google Cloud dan library klien untuk membuat database dengan skema Spanner Graph.
Konsol
Library klien
Python
Java
Go
C++
Menyisipkan data grafik
Bagian ini menunjukkan cara menggunakan konsol Google Cloud dan library klien untuk memasukkan data ke dalam Spanner Graph.
Konsol
Library klien
Python
Java
Go
C++
Grafik berikut menunjukkan orang, akun, kepemilikan akun, dan transfer akun dari sisipan:
Menjalankan kueri grafik
Bagian ini menunjukkan cara menggunakan konsol Google Cloud atau library klien untuk menjalankan kueri skema Spanner Graph.
Konsol
Library klien
Python
Java
Go
C++
Pembersihan
Banyak contoh di Langkah berikutnya menggunakan resource yang Anda siapkan dalam dokumen ini. Jika Anda ingin terus menggunakan Spanner Graph dengan salah satu contoh ini, jangan lakukan langkah-langkah pembersihan ini terlebih dahulu. Bagian ini menunjukkan cara menggunakan konsol Google Cloud untuk membersihkan resource Anda.
Jika tidak, untuk menghindari biaya tambahan pada akun Penagihan Cloud Anda, hapus database dan instance yang Anda buat selama penyiapan. Menghapus instance akan otomatis menghapus semua database yang dibuat di instance tersebut.