全部产品
Search
文档中心

Tablestore:Perbarui konfigurasi tabel global

更新时间:Feb 06, 2026

Topik ini menjelaskan cara menggunakan kit pengembangan perangkat lunak (SDK) Java untuk memperbarui konfigurasi tabel fisik dalam tabel global, seperti status writable tabel tersebut.

Precautions

Konflik data dapat terjadi jika beberapa replika bersifat writable dalam mode aktif-pasif. Ubah konfigurasi ini hanya saat melakukan Alih bencana aktif-pasif.

Skenario pembaruan

  • Mode aktif-pasif: Selama Alih bencana aktif-pasif, perbarui replika di suatu Wilayah agar dapat ditulis atau tetapkan sebagai memenuhi syarat sebagai primary.

  • Mode multi-aktif: Perbarui replika di suatu Wilayah menjadi read-only atau dapat ditulis.

Prerequisites

Initialize a client.

Method description

public UpdateGlobalTableResponse updateGlobalTable(UpdateGlobalTableRequest request) throws TableStoreException, ClientException

Parameter UpdateGlobalTableRequest

  • globalTableId (Wajib) String: ID tabel global.

    Catatan

    Jika Anda tidak memiliki ID tabel global, Anda dapat memanggil operasi DescribeTable untuk mengkueri detail replika tabel. Jika replika tabel tersebut merupakan bagian dari tabel global, respons dari operasi DescribeTable mencakup ID tabel global.

  • globalTableName (Wajib) String: Nama tabel global. Nilai ini harus sesuai dengan nama tabel dasar.

  • phyTable (Wajib) GlobalTableTypes.UpdatePhyTable: Informasi tabel fisik yang akan diperbarui. Ini mencakup parameter berikut:

    Penting

    Untuk memperbarui konfigurasi, ubah setidaknya salah satu properti writable atau primaryEligible.

    Name

    Type

    Description

    regionId (Wajib)

    String

    ID Wilayah tempat tabel fisik yang akan dimodifikasi berada.

    instanceName (Wajib)

    String

    Nama instans tempat tabel fisik yang akan dimodifikasi berada.

    tableName (Wajib)

    String

    Nama tabel fisik yang akan dimodifikasi.

    writable (Opsional)

    Boolean

    Menentukan apakah konfigurasi bersifat writable.

    primaryEligible (Opsional)

    Boolean

    Menentukan apakah konfigurasi diatur sebagai primer yang memenuhi syarat untuk failover dalam mode aktif-pasif.

    Dalam mode aktif-pasif, operasi write dinonaktifkan secara default untuk semua tabel non-primary. Saat melakukan Alih bencana aktif-pasif, tandai tabel secondary sebagai primary eligible.

Example

private static void updateGlobalTableExample(SyncClient client) {
    // Buat konfigurasi tabel fisik yang akan diperbarui.
    GlobalTableTypes.UpdatePhyTable phyTable = new GlobalTableTypes.UpdatePhyTable(
                // ID Wilayah tempat replika berada.
                "cn-shanghai",  
                // Nama instans tempat replika berada.
                "instance-replica-sh",  
                // Nama tabel replika.
                "i-dest-test"
    );
    
    // Dalam mode aktif-pasif selama Alih bencana, ubah writable dan primaryEligible sesuai kebutuhan.
    // Dalam mode multi-aktif saat mengubah ketersediaan baca replika, ubah hanya writable.
    phyTable.setWritable(true);          // Tetapkan replika ini agar dapat ditulis.
    phyTable.setPrimaryEligible(true);   // Izinkan replika ini memenuhi syarat menjadi tabel utama (untuk Alih bencana aktif-pasif).

    // Buat permintaan.
    UpdateGlobalTableRequest request = new UpdateGlobalTableRequest(
                // ID tabel global.
                "gt-ee1b54db-f5d9-43f3-ad36-ec44********",
                // Nama tabel global.
                "t-gt-test-1",  
                phyTable
    );
    // Kirim permintaan.
    UpdateGlobalTableResponse response = client.updateGlobalTable(request);
    System.out.println("Pembaruan berhasil. ID Permintaan: " + response.getRequestId());
}