Dokumen ini menunjukkan cara menyiapkan dan membuat kueri Spanner Graph menggunakan konsol Google Cloud dan library klien. Topik berikut membantu Anda mempelajari cara:
Untuk mempelajari detail harga Spanner, lihat Harga Spanner.
Untuk mencoba codelab, lihat Memulai 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: Mengaktifkan Spanner API
-
Untuk mendapatkan izin yang diperlukan guna membuat instance dan database, minta administrator untuk memberi Anda peran IAM Cloud Spanner Admin (
roles/spanner.admin
) di project Anda.
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.
Di konsol Google Cloud, buka halaman Spanner.
Pilih atau buat project Google Cloud jika Anda belum melakukannya.
Lakukan salah satu hal berikut:
Jika Anda belum pernah membuat instance Spanner, di halaman Selamat datang di Spanner, klik Buat instance yang disediakan.
Jika Anda telah membuat instance Spanner, di halaman Instances, klik Create instance.
Di halaman Select an edition, pilih Enterprise Plus atau Enterprise.
Spanner Graph hanya tersedia di edisi Enterprise atau edisi Enterprise Plus. Untuk membandingkan berbagai edisi, klik Bandingkan edisi. Untuk mengetahui informasi selengkapnya, lihat ringkasan edisi Spanner.
Klik Lanjutkan.
Di Nama instance, 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 dapat sama atau berbeda.
Klik Lanjutkan.
Di Pilih konfigurasi, lakukan hal berikut:
Biarkan Regional dipilih.
Di Pilih konfigurasi, pilih region. 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, tetapkan 1.000 unit pemrosesan.
Klik Create. Konsol Google Cloud akan menampilkan halaman Ringkasan untuk instance yang Anda buat.
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
- Di konsol Google Cloud, buka halaman Spanner Instances.
Klik instance yang Anda buat, misalnya,
Test Instance
.Di Ringkasan, klik Buat database di bagian nama instance Anda.
Di Nama database, masukkan nama database. Contoh,
example-db
.Di Select database dialect, pilih Google Standard SQL. Spanner Graph tidak tersedia dalam dialek PostgreSQL. Halaman pembuatan database Anda sekarang terlihat seperti ini:
Salin dan tempel skema berikut ke tab editor DDL Templates. Skema ini berisi dua definisi tabel node,
Person
danAccount
, dan dua definisi tabel tepi,PersonOwnAccount
danAccountTransferAccount
. Spanner Graph menggunakan tabel relasional untuk menentukan grafik, sehingga Anda 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 Create. Konsol Google Cloud menampilkan halaman Ringkasan untuk database yang Anda buat.
Library klien
Python
Java
Go
C++
Menyisipkan data grafik
Bagian ini menunjukkan cara menggunakan konsol Google Cloud dan library klien untuk menyisipkan data ke dalam Grafik Spanner.
Konsol
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 operasi selesai, tab Hasil akan menampilkan bahwa 3 baris telah disisipkan.
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
Di halaman Ringkasan 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 Results menampilkan jalur berikut dari Dana melalui
Account {id:20}
:- Kepada
Account {id:7}
yang dimiliki oleh Alex. Ke
Account {id:16}
milik Lee.
- Kepada
Library klien
Python
Java
Go
C++
Pembersihan
Banyak contoh di Langkah berikutnya yang menggunakan resource yang Anda siapkan dalam dokumen ini. Jika Anda ingin terus menggunakan Spanner Graph menggunakan salah satu contoh ini, jangan lakukan langkah-langkah pembersihan ini terlebih dahulu. Bagian ini menunjukkan cara menggunakan Konsol Google Cloud untuk membersihkan resource.
Jika tidak, untuk menghindari tagihan tambahan ke akun Penagihan Cloud, hapus database dan instance yang Anda buat selama penyiapan. Menghapus instance akan otomatis menghapus semua database yang dibuat dalam instance.
Menghapus database
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 Detail database, klik hapus Hapus database.
Konfirmasi bahwa Anda ingin menghapus database dengan memasukkan nama database dan mengklik Hapus.
Menghapus instance
Di konsol Google Cloud, 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 dan mengklik Hapus.
Langkah selanjutnya
- Pelajari Spanner Graph lebih lanjut menggunakan codelab.
- Pelajari skema Spanner Graph.
- Membuat, memperbarui, atau menghapus skema Grafik Spanner.
- Menyisipkan, memperbarui, atau menghapus data Spanner Graph.
- Ringkasan kueri Spanner Graph.
- Migrate to Spanner Graph.