Panduan memulai ini menunjukkan cara melakukan operasi dasar di Spanner menggunakan Konsol Google Cloud. Dalam panduan memulai ini, Anda akan:
- Buat instance Spanner.
- Membuat database.
- Buat skema.
- Menyisipkan dan mengubah data.
- Jalankan kueri.
Untuk mengetahui informasi tentang biaya penggunaan Spanner, lihat Harga.
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.
- Opsional: 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 dalam instance tersebut.
Di konsol Google Cloud, buka halaman Spanner.
Pilih atau buat project Google Cloud jika Anda belum melakukannya.
Di halaman Spanner, klik Create a provisioned instance.
Jika telah menggunakan Spanner sebelumnya, Anda akan melihat halaman Instance Spanner, bukan halaman produk. Klik Create instance.
Di halaman Name your instance, masukkan nama instance, seperti Test Instance.
ID instance otomatis dimasukkan berdasarkan nama instance, misalnya, sebagai test-instance. Ubah, jika diperlukan. Klik Lanjutkan.
Di halaman Konfigurasi instance, pertahankan opsi default Regional dan pilih konfigurasi dari menu drop-down.
Konfigurasi instance Anda menentukan lokasi geografis tempat instance disimpan dan direplikasi.
Klik Lanjutkan.
Di halaman Alokasikan kapasitas komputasi, pilih Unit pemrosesan (PU) dan pertahankan nilai default 1.000 unit pemrosesan.
Klik Create.
Konsol Google Cloud akan menampilkan halaman Ringkasan untuk instance yang Anda buat.
Buat database
Di konsol Google Cloud, buka halaman Spanner Instances.
Klik instance yang Anda buat, misalnya Test Instance.
Di halaman Ringkasan instance yang terbuka, klik Create database.
Untuk nama database, masukkan nama, seperti example-db.
Pilih dialek database.
Untuk informasi tentang dukungan untuk PostgreSQL dan panduan memilih dialek, lihat Antarmuka PostgreSQL. Jika memilih GoogleSQL, Anda akan menentukan skema di kolom teks Define your schema di bagian berikutnya dalam panduan memulai ini.
Halaman pembuatan database Anda sekarang terlihat seperti ini:
Klik Create.
Konsol Google Cloud akan menampilkan halaman Ringkasan untuk database yang Anda buat.
Membuat skema untuk database Anda
Di menu navigasi, klik Spanner Studio.
Di halaman Spanner Studio, klik
Tab baru atau gunakan tab editor kosong.Enter:
GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), SingerInfo BYTES(MAX), BirthDate DATE ) PRIMARY KEY(SingerId);
PostgreSQL
CREATE TABLE Singers ( BirthDate TIMESTAMPTZ, SingerId BIGINT PRIMARY KEY, FirstName VARCHAR(1024), LastName VARCHAR(1024), SingerInfo BYTEA );
Klik Run.
Konsol Google Cloud akan kembali ke halaman Ringkasan database dan menunjukkan bahwa Pembaruan skema sedang berlangsung. Setelah update selesai, halaman akan terlihat seperti ini:
GoogleSQL
PostgreSQL
Perhatikan bahwa PostgreSQL mengonversi nama tabel menjadi huruf kecil.
Menyisipkan dan mengubah data
Konsol Google Cloud menyediakan antarmuka untuk menyisipkan, mengedit, dan menghapus data.
Masukkan data
Dalam daftar tabel di halaman Ringkasan database, klik tabel Penyanyi.
Konsol Google Cloud menampilkan halaman Skema tabel Singers.
Di menu navigasi, klik Data untuk menampilkan halaman Data tabel Penyanyi.
Klik Sisipkan.
Konsol Google Cloud menampilkan halaman Spanner Studio tabel Singers dengan tab kueri baru yang berisi pernyataan
INSERT
danSELECT
yang Anda edit untuk menyisipkan baris di tabel Singers dan melihat hasil penyisipan tersebut:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (<SingerId>, -- type: INT64 <BirthDate>, -- type: DATE <FirstName>, -- type: STRING(1024) <LastName>, -- type: STRING(1024) <SingerInfo> -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=<SingerId>;
PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (<singerid>, -- type: bigint <birthdate>, -- type: timestamp with time zone <firstname>, -- type: character varying <lastname>, -- type: character varying <singerinfo> -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=<singerid>;
Perhatikan bahwa PostgreSQL mengonversi nama kolom menjadi huruf kecil.
Edit klausa
VALUES
pernyataanINSERT
dan klausaWHERE
pernyataanSELECT
:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (1, -- type: INT64 NULL, -- type: DATE 'Marc', -- type: STRING(1024) 'Richards', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=1;
PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (1, -- type: bigint NULL, -- type: timestamp with time zone 'Marc', -- type: character varying 'Richards', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=1;
Klik Run.
Spanner menjalankan pernyataan. Setelah selesai, tab Hasil akan menunjukkan bahwa pernyataan pertama menyisipkan satu baris, dan memberikan link untuk melihat data tabel.
Di tab Hasil, klik link tabel. Tabel Penyanyi kini memiliki satu baris:
GoogleSQL
PostgreSQL
Klik Sisipkan untuk menambahkan baris lain.
Konsol Google Cloud kembali menampilkan halaman Spanner Studio tabel Singers dengan tab kueri baru yang berisi pernyataan
INSERT
danSELECT
yang sama.Edit klausa
VALUES
pernyataanINSERT
dan klausaWHERE
pernyataanSELECT
:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (2, -- type: INT64 NULL, -- type: DATE 'Catalina', -- type: STRING(1024) 'Smith', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=2;
PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (2, -- type: bigint NULL, -- type: timestamp with time zone 'Catalina', -- type: character varying 'Smith', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=2;
Klik Run.
Setelah Spanner menjalankan pernyataan, tab Hasil lagi menunjukkan bahwa pernyataan pertama menyisipkan satu baris.
Klik link tabel. Tabel Penyanyi kini memiliki dua baris:
GoogleSQL
PostgreSQL
Anda juga dapat menyisipkan nilai string kosong saat memasukkan data.
Klik Sisipkan untuk menambahkan baris.
Spanner kembali menampilkan halaman Spanner Studio tabel Singers dengan tab kueri baru yang berisi pernyataan
INSERT
danSELECT
yang sama.Edit klausa
VALUES
pernyataanINSERT
template dan klausaWHERE
pernyataanSELECT
:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (3, -- type: INT64 NULL, -- type: DATE 'Kena', -- type: STRING(1024) '', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=3;
PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (3, -- type: bigint NULL, -- type: timestamp with time zone 'Kena', -- type: character varying '', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=3;
Perhatikan bahwa nilai yang diberikan untuk kolom nama belakang adalah string kosong,
''
, bukan nilaiNULL
.Klik Run.
Setelah Spanner menjalankan pernyataan, tab Hasil menunjukkan bahwa pernyataan pertama menyisipkan satu baris.
Klik link tabel. Tabel
Singers
kini memiliki tiga baris, dan baris dengan nilai kunci utama3
memiliki string kosong di kolomLastName
:GoogleSQL
PostgreSQL
Mengedit data
Di halaman Data tabel Penyanyi, centang kotak pada baris dengan nilai kunci utama
3
, lalu klik Edit.Spanner menampilkan halaman Spanner Studio dengan tab baru yang berisi pernyataan
UPDATE
danSET
template yang dapat Anda edit. Perhatikan bahwa klausaWHERE
dari kedua pernyataan menunjukkan bahwa baris yang akan diperbarui adalah baris dengan nilai kunci utama3
.GoogleSQL
-- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE Singers SET BirthDate='', FirstName='Kena', LastName='', SingerInfo='' WHERE SingerId=3; SELECT * FROM Singers WHERE SingerId=3;
PostgreSQL
-- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE singers SET birthdate=NULL, firstname='Kena', lastname='', singerinfo=NULL WHERE singerid='3'; SELECT * FROM singers WHERE singerid='3';
Edit klausul
SET
pernyataanUPDATE
untuk hanya memperbarui tanggal lahir:GoogleSQL
-- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE Singers SET BirthDate='1961-04-01' WHERE SingerId=3; SELECT * FROM Singers WHERE SingerId=3;
PostgreSQL
-- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE singers SET birthdate='1961-04-01 00:00:00 -8:00' WHERE singerid='3'; SELECT * FROM singers WHERE singerid='3';
Klik Run.
Spanner menjalankan pernyataan. Setelah selesai, tab Hasil menunjukkan bahwa pernyataan pertama memperbarui satu baris, dan memberikan link untuk melihat data tabel.
Di tab Hasil, klik link tabel.
Baris yang diperbarui kini memiliki nilai untuk tanggal lahir.
GoogleSQL
PostgreSQL
Menghapus data
- Di halaman Data tabel Penyanyi, centang kotak pada baris dengan
2
di kolom pertama, lalu klik Hapus. Pada dialog yang muncul, klik Konfirmasi.
Tabel Penyanyi kini memiliki dua baris:
GoogleSQL
PostgreSQL
Menjalankan kueri
Di halaman Ringkasan database, klik Spanner Studio di menu navigasi.
Klik Tab baru untuk membuat tab kueri baru. Kemudian, masukkan kueri berikut di editor kueri:
GoogleSQL
SELECT * FROM Singers;
PostgreSQL
SELECT * FROM singers;
Klik Run.
Spanner menjalankan kueri. Setelah selesai, tab Results akan menampilkan hasil kueri Anda:
GoogleSQL
PostgreSQL
Selamat! Anda telah berhasil membuat database Spanner dan menjalankan pernyataan SQL menggunakan editor kueri.
Pembersihan
Untuk menghindari biaya tambahan pada akun Penagihan Cloud, hapus database dan instance yang Anda buat. 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 Database details, klik delete Delete 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 delete Hapus instance.
Konfirmasi bahwa Anda ingin menghapus instance dengan memasukkan nama instance dan mengklik Hapus.
Langkah selanjutnya
- Pelajari Instance.
- Memahami Skema dan Model Data Spanner.
- Pelajari Bahasa Definisi Data (DDL) GoogleSQL lebih lanjut.
- Pelajari Rencana Eksekusi Kueri lebih lanjut.
- Pelajari cara menggunakan Spanner dengan C++, C#, Go, Java, Node.js, PHP, Python, Ruby, REST, atau gcloud.