Halaman ini menjelaskan cara membuat dan mengelola penempatan data di Spanner.
Untuk mengetahui informasi selengkapnya tentang cara kerja partisi geografis, lihat Ringkasan partisi geografis.
Membuat penempatan data
Setelah membuat partisi instance Spanner dan database, buat penempatan Anda.
Konsol
Buka halaman Instances di konsol Google Cloud .
Pilih instance dengan partisi instance yang dibuat pengguna.
Pilih database yang datanya ingin Anda partisi.
Di menu navigasi, klik Spanner Studio.
Di halaman Spanner Studio, klik
Tab baru atau gunakan tab editor yang kosong.Masukkan pernyataan DDL
CREATE PLACEMENT
(GoogleSQL, PostgreSQL) .Misalnya, Anda dapat menjalankan perintah berikut untuk membuat tabel penempatan
europeplacement
di partisi instanceeurope-partition
:GoogleSQL
CREATE PLACEMENT `europeplacement` OPTIONS (instance_partition="europe-partition");
PostgreSQL
CREATE PLACEMENT europeplacement WITH (instance_partition='europe-partition');
Opsional: Anda juga dapat menggunakan panel Object Explorer untuk melihat, menelusuri, dan berinteraksi dengan objek Penempatan. Untuk mengetahui informasi selengkapnya, lihat Menjelajahi data.
Klik Run.
gcloud
Untuk membuat penempatan dengan perintah gcloud CLI, gunakan
gcloud spanner databases ddl update
.
Misalnya, buat penempatan di partisi instance europe-partition
:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE PLACEMENT europeplacement OPTIONS (instance_partition='europe-partition')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE PLACEMENT europeplacement WITH (instance_partition='europe-partition')"
Menetapkan pemimpin default untuk penempatan
Anda dapat menetapkan region pemimpin default penempatan jika lokasinya berada di dual-region atau multi-region. Region pemimpin baru harus menjadi salah satu dari dua region baca-tulis dalam lokasi penempatan dual-region atau multi-region. Untuk mengetahui informasi selengkapnya, lihat tabel Konfigurasi yang tersedia untuk region ganda dan Konfigurasi yang tersedia untuk multiregion.
Jika Anda tidak menetapkan region pemimpin, penempatan Anda akan menggunakan region pemimpin default
seperti yang ditentukan oleh lokasinya. Untuk mengetahui daftar region utama untuk setiap lokasi dual-region atau multi-region, lihat tabel Konfigurasi yang tersedia untuk dual-region dan Konfigurasi yang tersedia untuk multi-region. Region paling dominan default ditandai dengan L. Misalnya, wilayah
pemimpin default nam8
berada di Los Angeles(us-west2
). Petunjuk
berikut menjelaskan cara menyetelnya ke Oregon(us-west1
).
Konsol
Buka halaman Instances di konsol Google Cloud .
Pilih instance dengan partisi instance yang dibuat pengguna.
Pilih database yang datanya ingin Anda partisi.
Di menu navigasi, klik Spanner Studio.
Di halaman Spanner Studio, klik
Tab baru atau gunakan tab editor yang kosong.Masukkan pernyataan DDL
CREATE PLACEMENT
(GoogleSQL, PostgreSQL) .Misalnya, Anda dapat menjalankan perintah berikut untuk membuat tabel penempatan
nam8placement
di partisi instancenam8-partition
dengan lokasi pemimpin default yang ditetapkan sebagaius-west1
:GoogleSQL
CREATE PLACEMENT `nam8placement` OPTIONS (instance_partition="nam8-partition", default_leader="us-west1");
PostgreSQL
CREATE PLACEMENT nam8placement WITH (instance_partition='nam8-partition', default_leader='us-west1');
Opsional: Anda juga dapat menggunakan panel Object Explorer untuk melihat, menelusuri, dan berinteraksi dengan objek Penempatan. Untuk mengetahui informasi selengkapnya, lihat Menjelajahi data.
Klik Run.
gcloud
Untuk membuat penempatan dengan perintah gcloud CLI, gunakan
gcloud spanner databases ddl update
.
Misalnya, buat tabel penempatan nam8placement
di partisi
instance nam8-partition
dengan lokasi pemimpin default yang ditetapkan sebagai us-west1
:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE PLACEMENT nam8placement \
OPTIONS (instance_partition='nam8-partition', default_leader='us-west1')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE PLACEMENT nam8placement WITH (instance_partition='nam8-partition', default_leader='us-west1')"
Menghapus penempatan data
Anda tidak dapat menghapus penempatan. Anda harus menghapus database untuk menghapus penempatan dan data terkaitnya. Untuk mengetahui informasi selengkapnya, lihat Menghapus database.
Membuat tabel dengan kunci penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Masukkan pernyataan DDL
CREATE TABLE
(GoogleSQL, PostgreSQL).Misalnya, Anda dapat membuat tabel
Singers
yang menggunakan kunci penempatan untuk mempartisi data penyanyi:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, SingerName STRING(MAX) NOT NULL, ... Location STRING(MAX) NOT NULL PLACEMENT KEY ) PRIMARY KEY (SingerId);
PostgreSQL
CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, SingerName varchar(1024), ... Location varchar(1024) NOT NULL PLACEMENT KEY );
gcloud
Untuk membuat tabel, gunakan
gcloud spanner databases ddl update
.
Misalnya, Anda dapat membuat tabel Singers
yang menggunakan
kunci penempatan untuk mempartisi data penyanyi:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( SingerId INT64 NOT NULL, SingerName STRING(MAX) NOT NULL, Location STRING(MAX) NOT NULL PLACEMENT KEY ) PRIMARY KEY (SingerId);"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, SingerName varchar(1024), Location varchar(1024) NOT NULL PLACEMENT KEY );"
Mengedit tabel dengan kunci penempatan
Anda tidak dapat menghapus kunci penempatan dari tabel. Anda juga tidak dapat menambahkan kunci penempatan
ke tabel setelah dibuat. Namun, Anda dapat menggunakan pernyataan DDL
ALTER TABLE
(GoogleSQL,
PostgreSQL) untuk mengubah kolom lain dalam
tabel, misalnya, dengan menambahkan dan menghapus kolom kunci non-penempatan.
Menghapus tabel dengan kunci penempatan
Sebelum menghapus tabel dengan kunci penempatan, Anda harus:
- Hapus semua baris dalam tabel penempatan.
- Tunggu hingga
version_retention_period
untuk database lulus. Untuk informasi selengkapnya, lihat Pemulihan point-in-time. Kemudian, ikuti langkah-langkah berikut:
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Masukkan pernyataan DDL
DROP TABLE
(GoogleSQL, PostgreSQL).Misalnya, hapus tabel
Singers
:DROP TABLE Singers;
gcloud
Untuk menghapus tabel, gunakan
gcloud spanner databases ddl update
.
Misalnya, hapus tabel Singers
:
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="DROP TABLE Singers"
Menyisipkan baris dalam tabel penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Masukkan pernyataan DDL
INSERT INTO
(GoogleSQL, PostgreSQL).Misalnya, tambahkan penyanyi, Marc Richards, ke tabel
Singers
dan partisikan dieuropeplacement
:INSERT INTO Singers(SingerId, SingerName, Location) VALUES (1, 'Marc Richards', 'europeplacement')
gcloud
Untuk menulis data ke tabel, gunakan
gcloud spanner rows insert
.
Misalnya, tambahkan penyanyi, Marc Richards, ke tabel Singers
dan
partisikan di europeplacement
:
gcloud spanner rows insert --table=Singers --database=example-db \
--instance=test-instance --data=SingerId=1,SingerName='Marc Richards',Location='europeplacement'
Memperbarui baris dalam tabel penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Gunakan DML atau mutasi untuk memperbarui data dalam tabel penempatan.
Misalnya, perbarui nama
singerid=1
di tabelSingers
menjadiCatalina Smith
:UPDATE Singers s SET s.name='Catalina Smith' WHERE s.id=1;
gcloud
Untuk memperbarui data dalam tabel penempatan,
gunakan gcloud spanner rows update
.
Misalnya, perbarui nama singerid=1
di tabel Singers
menjadi
Catalina Smith
:
gcloud spanner rows update --table=Singers --database=example-db \
--instance=test-instance --data=SingerId=1,SingerName='Catalina Smith'
Memindahkan baris dalam tabel penempatan
Konsol
- Buat partisi dan penempatan instance baru jika Anda belum melakukannya.
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Gunakan DML atau mutasi untuk memindahkan data ke partisi instance baru.
Misalnya, pindahkan
singerid=1
dalam tabelSingers
keasiaplacement
:UPDATE Singers s SET s.location='asiaplacement' WHERE s.id=1;
gcloud
Setelah membuat partisi dan penempatan instance tempat Anda ingin memindahkan
data, gunakan gcloud spanner rows update
.
Misalnya, pindahkan singerid=1
dalam tabel Singers
ke asiaplacement
:
gcloud spanner rows update --table=Singers --database=example-db \
--instance=test-instance --data=SingerId=1,Location='asiaplacement'
Menghapus baris dalam tabel penempatan
Konsol
gcloud
Untuk menghapus data, gunakan gcloud spanner rows delete
.
Misalnya, hapus singerid=1
di tabel Singers
:
gcloud spanner rows delete --table=Singers --database=example-db \
--instance=test-instance --keys=1
Membuat kueri data dalam tabel penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor yang kosong.
Jalankan kueri Anda.
Misalnya, buat kueri tabel
Singers
:SELECT * FROM Singers s WHERE s.SingerId=1;
gcloud
Untuk membuat kueri data, gunakan gcloud spanner databases execute-sql
.
Misalnya, buat kueri tabel Singers
:
gcloud spanner databases execute-sql example-db \
--instance=test-instance \
--sql='SELECT * FROM Singers s WHERE s.SingerId=1'
Langkah berikutnya
Pelajari lebih lanjut partisi geografis.
Pelajari cara membuat dan mengelola partisi instance.