Membuat dan mengelola penempatan data

Halaman ini menjelaskan cara membuat dan mengelola penempatan data di Spanner.

Untuk informasi selengkapnya tentang cara kerja partisi geografis, lihat Ringkasan partisi geografis.

Membuat penempatan data

Setelah membuat partisi dan database Spanner, buat penempatan Anda.

Konsol

  1. Buka halaman Instances di Konsol Google Cloud.

    Instance

  2. Pilih instance dengan partisi buatan pengguna.

  3. Pilih database yang Anda inginkan untuk mempartisi data.

  4. Di menu navigasi, klik Spanner Studio.

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

  6. Masukkan pernyataan DDL CREATE PLACEMENT.

    Misalnya, Anda dapat menjalankan perintah berikut untuk membuat tabel penempatan europeplacement dalam partisi europe-partition:

      CREATE PLACEMENT `europeplacement` OPTIONS(instance_partitions="europe-partition");
    

    Opsional: Anda juga dapat menggunakan panel Object Explorer untuk melihat, menelusuri, dan berinteraksi dengan objek Penempatan. Untuk mendapatkan 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:

gcloud spanner databases ddl update example-db \
  --instance=test-instance \
  --ddl="CREATE PLACEMENT europeplacement OPTIONS (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 New tab atau gunakan tab editor kosong.
  3. Masukkan pernyataan DDL CREATE TABLE.

    Misalnya, Anda dapat membuat tabel Singers yang menggunakan kunci penempatan untuk mempartisi data penyanyi:

    CREATE TABLE Singers (
      SingerId INT64 NOT NULL,
      Name STRING(MAX) NOT NULL,
      ...
      Location STRING(MAX) NOT NULL PLACEMENT KEY
    ) PRIMARY KEY (SingerId);
    

gcloud

Untuk membuat tabel, gunakan gcloud spanner databases ddl update.

Misalnya, Anda dapat membuat tabel Singers yang menggunakan kunci penempatan untuk mempartisi data penyanyi:

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)"

Mengedit tabel dengan kunci penempatan

Anda tidak dapat melepaskan kunci penempatan dari tabel. Anda juga tidak dapat menambahkan kunci penempatan ke tabel setelah membuatnya. Namun, Anda dapat menggunakan pernyataan DDL ALTER TABLE untuk mengubah kolom lain dalam tabel, misalnya, menambahkan dan menghapus kolom kunci non-penempatan.

Menghapus tabel dengan kunci penempatan

Sebelum menghapus tabel dengan kunci penempatan, Anda harus terlebih dahulu:

  1. Hapus semua baris di tabel penempatan.
  2. Tunggu version_retention_period sampai database lulus. Untuk informasi selengkapnya, lihat Pemulihan point-in-time. Lalu, ikuti langkah-langkah berikut:

Konsol

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik New tab atau gunakan tab editor kosong.
  3. Masukkan pernyataan DDL DROP TABLE.

    Misalnya, lepaskan tabel Singers:

    DROP TABLE Singers;
    

gcloud

Untuk melepaskan tabel, gunakan gcloud spanner databases ddl update.

Misalnya, lepaskan 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 New tab atau gunakan tab editor kosong.
  3. Masukkan pernyataan DDL INSERT INTO.

    Misalnya, tambahkan penyanyi, Marc Richards, ke tabel Singers dan mempartisinya dalam europeplacement:

      INSERT INTO Singers(SingerId, Name, 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 mempartisinya dalam 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 New tab atau gunakan tab editor kosong.
  3. Gunakan DML atau mutasi untuk memperbarui data di 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 di 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 New tab 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 dalam tabel penempatan

Konsol

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik New tab 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 di tabel penempatan

Konsol

  1. Di menu navigasi, klik Spanner Studio.
  2. Di halaman Spanner Studio, klik New tab 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