Membuat dan mengelola penempatan data

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

  1. Buka halaman Instance di konsol Google Cloud.

    Instance

  2. Pilih instance dengan partisi yang dibuat pengguna.

  3. Pilih database yang datanya ingin Anda partisi.

  4. Di menu navigasi, klik Spanner Studio.

  5. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.

  6. Masukkan pernyataan DDL CREATE PLACEMENT (GoogleSQL, PostgreSQL).

    Misalnya, Anda dapat menjalankan perintah berikut untuk membuat tabel penempatan europeplacement di partisi europe-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.

  7. 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

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. 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:

  1. Hapus semua baris dalam tabel penempatan.
  2. Tunggu version_retention_period agar database dapat diteruskan. Untuk informasi selengkapnya, lihat Pemulihan point-in-time. Kemudian, ikuti langkah-langkah berikut:

Konsol

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. 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

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. Masukkan pernyataan DDL INSERT INTO (GoogleSQL, PostgreSQL).

    Misalnya, tambahkan penyanyi, Marc Richards, ke tabel Singers dan partisi di europeplacement:

    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

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. Gunakan DML atau mutasi untuk memperbarui data dalam tabel penempatan.

    Misalnya, perbarui nama singerid=1 di tabel Singers menjadi Catalina 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

  1. Buat partisi dan penempatan baru jika Anda belum melakukannya.
  2. Di menu navigasi, klik Spanner Studio.
  3. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  4. Gunakan DML atau mutasi untuk memindahkan data ke partisi baru.

    Misalnya, pindahkan singerid=1 di tabel Singers ke asiaplacement:

    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

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. Gunakan DML atau mutasi untuk menghapus data.

    Misalnya, hapus singerid=1 di tabel Singers:

    DELETE FROM Singers s
    WHERE s.id=1;
    

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

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik Tab baru atau gunakan tab editor kosong.
  3. 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