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 Spanner dan database, buat penempatan.
Konsol
Buka halaman Instance di konsol Google Cloud.
Pilih instance dengan partisi 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 kosong.Masukkan pernyataan DDL
CREATE PLACEMENT
(GoogleSQL, PostgreSQL).Misalnya, Anda dapat menjalankan perintah berikut untuk membuat tabel penempatan
europeplacement
di partisieurope-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 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')"
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 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
version_retention_period
agar database dapat diteruskan. 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 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 di tabel penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
Masukkan pernyataan DDL
INSERT INTO
(GoogleSQL, PostgreSQL).Misalnya, tambahkan penyanyi, Marc Richards, ke tabel
Singers
dan partisi 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
partisi di europeplacement
:
gcloud spanner rows insert --table=Singers --database=example-db \
--instance=test-instance --data=SingerId=1,SingerName='Marc Richards',Location='europeplacement'
Memperbarui baris di tabel penempatan
Konsol
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor 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 baru jika Anda belum melakukannya.
- Di menu navigasi, klik Spanner Studio.
- Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
Gunakan DML atau mutasi untuk memindahkan data ke partisi baru.
Misalnya, pindahkan
singerid=1
di tabelSingers
keasiaplacement
:UPDATE Singers s SET s.location='asiaplacement' WHERE s.id=1;
gcloud
Setelah membuat partisi dan penempatan tempat Anda ingin memindahkan data,
gunakan gcloud spanner rows update
.
Misalnya, pindahkan singerid=1
di tabel Singers
ke asiaplacement
:
gcloud spanner rows update --table=Singers --database=example-db \
--instance=test-instance --data=SingerId=1,Location='asiaplacement'
Menghapus baris di 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 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 \
--sql='SELECT * FROM Singers s WHERE s.SingerId=1'
Langkah selanjutnya
Pelajari partisi geografis lebih lanjut.
Pelajari cara membuat dan mengelola partisi.