全部产品
Search
文档中心

Tablestore:Modifikasi skema indeks pencarian secara dinamis

更新时间:Jul 08, 2025

Anda mungkin perlu menambah, memperbarui, atau menghapus kolom indeks dalam indeks pencarian atau mengubah kunci routing dan metode pra-pengurutan untuk memenuhi persyaratan bisnis baru atau mengoptimalkan kinerja. Untuk itu, Anda dapat memodifikasi skema indeks pencarian secara dinamis. Proses ini melibatkan modifikasi skema indeks sumber untuk membuat indeks canary, menunggu hingga semua data tabel disinkronkan ke indeks canary, menentukan bobot lalu lintas query yang dialokasikan ke indeks canary untuk pengujian A/B, mengalihkan skema antara indeks sumber dan indeks canary, serta menghapus indeks canary.

Ikhtisar Fitur

Tabel data Tablestore bersifat tanpa skema, sedangkan indeks pencarian memiliki skema yang kaku. Saat membuat indeks pencarian, Anda harus menentukan kolom yang ingin ditambahkan ke indeks tersebut. Setelah itu, Anda dapat menggunakan kolom-kolom tersebut saat melakukan query data dengan indeks pencarian. Untuk beradaptasi dengan perubahan bisnis dan meningkatkan kinerja, Anda perlu sering memodifikasi skema indeks pencarian. Berikut adalah operasi yang dapat dilakukan:

  • Tambahkan kolom indeks: Tambahkan kolom indeks jika bisnis memerlukan lebih banyak kolom untuk query.

  • Perbarui kolom indeks: Modifikasi tipe data, kolom virtual, array, analizer, atau format bidang Tanggal dari kolom indeks.

  • Hapus kolom indeks: Hapus kolom indeks yang tidak lagi diperlukan untuk query.

  • Ubah kunci routing: Tentukan kunci routing yang tepat untuk mengurangi beban baca dan meningkatkan efisiensi query.

  • Ubah metode pra-pengurutan: Jika metode pra-pengurutan sesuai dengan cara pengurutan hasil query, baris yang memenuhi kondisi query akan dikembalikan secara efisien. Ubah metode pra-pengurutan untuk mempercepat query data.

Diagram Alir

Penting

Indeks dengan akhiran _reindex yang dihasilkan selama proses modifikasi skema dinamis adalah indeks sementara yang diperlukan untuk alur kerja. Selama eksekusi alur kerja, indeks yang ditunjuk dan bobot lalu lintas akan berubah. Setelah alur selesai, indeks sementara akan dihapus. Perilaku ini dapat bervariasi dan mungkin tidak sesuai dengan harapan bisnis. Hindari menggunakan indeks sementara dengan akhiran _reindex untuk query data kapan saja. Jika fitur modifikasi skema dinamis tidak memenuhi kebutuhan Anda, ajukan tiket.

Berikut adalah diagram alir yang menunjukkan cara memodifikasi skema secara dinamis. Prosedur ini tidak mempengaruhi bisnis Anda dan tidak memerlukan perubahan pada kode aplikasi.

Tabel berikut menjelaskan langkah-langkah yang diperlukan untuk memodifikasi skema indeks pencarian.

Langkah

Operasi

Deskripsi

1

Buat indeks canary

Modifikasi skema indeks pencarian untuk membuat indeks canary untuk indeks pencarian.

2

Periksa kemajuan sinkronisasi indeks

Data dalam tabel data secara otomatis disinkronkan ke indeks canary. Tunggu hingga data yang ada dan bertambah dari tabel data disinkronkan ke indeks canary sampai kemajuan sinkronisasi indeks canary sama dengan kemajuan sinkronisasi indeks sumber.

3

Tentukan bobot untuk pengujian A/B

Pengujian A/B memungkinkan Anda mengalokasikan lalu lintas ke indeks sumber dan indeks canary berdasarkan proporsi dan memverifikasi efek modifikasi skema.

Gunakan pengujian A/B untuk secara bertahap beralih lalu lintas ke indeks canary dan tunggu hingga semua lalu lintas beralih ke indeks canary.

4

Alihkan skema indeks

Setelah semua lalu lintas pertanyaan beralih ke indeks canary, alihkan skema antara indeks sumber dan indeks canary.

Setelah Anda mengalihkan skema, nama indeks sumber terkait dengan skema baru. Nama indeks canary terkait dengan skema lama. Semua lalu lintas beralih untuk menanyakan indeks sumber yang namanya terkait dengan skema baru.

5

Hapus indeks canary

Anda dapat menghapus indeks canary setelah Anda mengalihkan skema dan memverifikasi bahwa skema baru benar. Sebelum Anda menghapus indeks canary, kami sarankan Anda menunggu beberapa waktu, seperti satu hari.

Prosedur

  1. Buka tab Indexes.

    1. Masuk ke Konsol Tablestore.

    2. Di bilah navigasi atas, pilih wilayah dan grup sumber daya.

    3. Di halaman Overview, klik nama instance yang ingin dikelola atau pilih Manage Instance di kolom Actions instance.

    4. Di bagian Tables pada tab Instance Details, klik nama tabel data yang ingin dikelola indeksnya. Di halaman Kelola Tabel, buka tab Indeks. Anda juga dapat memilih Indexes di kolom Actions tabel data.

  2. Buat indeks canary berdasarkan indeks sumber.

    1. Di tab Indexes, klik Change Schema di kolom Actions indeks pencarian.

    2. Di kotak dialog Reindex, tambahkan, ubah, atau hapus bidang indeks sesuai kebutuhan bisnis Anda.

      image

    3. Untuk mengubah kunci routing atau metode pra-pengurutan indeks pencarian, aktifkan Advanced Settings dan konfigurasikan parameter. Tabel berikut menjelaskan parameter.

      Parameter

      Deskripsi

      Kunci Routing

      Bidang routing kustom. Anda dapat menentukan satu atau lebih kolom kunci utama sebagai bidang routing.

      Saat data ditulis ke indeks, lokasi distribusi data ditentukan berdasarkan nilai kunci routing. Nilai kunci routing dihitung berdasarkan nilai bidang routing. Catatan data yang berbagi nilai kunci routing yang sama didistribusikan di partisi yang sama. Untuk informasi lebih lanjut, lihat Bagaimana cara menggunakan bidang routing?

      Pra-pengurutan

      Metode pra-pengurutan yang digunakan untuk mengurutkan data dalam indeks pencarian. Saat Anda menggunakan indeks pencarian untuk menanyakan data, metode pra-pengurutan menentukan urutan default hasil pertanyaan dikembalikan. Untuk informasi lebih lanjut, lihat Lakukan pengurutan dan paging.

      • Jika Anda ingin mengurutkan data dalam indeks pencarian berdasarkan kunci utama, atur parameter ini ke Default.

      • Jika Anda ingin mengurutkan data dalam indeks pencarian berdasarkan nilai bidang atau kombinasi kolom kunci utama, atur parameter ini ke Custom dan lakukan langkah-langkah berikut untuk menentukan metode pra-pengurutan:

        1. Pilih Primary Key Pre-sorting atau Field Pre-sorting dan klik Add.

        2. Tentukan nama bidang dan apakah akan mengurutkan data dalam indeks pencarian secara menaik atau menurun.

          Penting

          Anda perlu menentukan nama bidang hanya jika Anda memilih Field Pre-sorting.

        Jika Anda memilih Custom untuk Pra-pengurutan, Anda dapat memilih Pra-pengurutan Kunci Utama dan Pra-pengurutan Bidang pada saat yang sama berdasarkan kebutuhan bisnis Anda.

    4. Klik OK.

    5. Di pesan Index Comparison, tinjau perbandingan kunci routing, metode pra-pengurutan, dan skema antara indeks sumber dan indeks canary. Setelah mengonfirmasi informasi tersebut, klik OK.

  3. Lihat informasi sinkronisasi indeks.

    1. Klik ikon image.png sebelum indeks sumber atau pilih nama indeks sumber.

      Sistem menampilkan indeks canary dari indeks sumber.

    2. Klik Use Gray Index di kolom Actions indeks canary.

      Penting

      Sinkronisasi data yang ada dan data bertambah diperlukan untuk indeks canary.

      • Jika Anda mengarahkan pointer ke Use Gray Index di kolom Actions sebelum sinkronisasi data selesai, pesan Yes, but the operation may cause security risks akan muncul.

      • Jika Anda mengarahkan pointer ke Use Gray Index di kolom Actions setelah sinkronisasi data selesai, pesan Yes. The operation is secure akan muncul. Anda dapat melanjutkan ke kotak dialog Gunakan Indeks Abu-abu.

    3. Di kotak dialog Use Gray Index, tinjau informasi sinkronisasi indeks.

      image.png

  4. Setelah sinkronisasi selesai, tentukan bobot untuk pengujian A/B.

    Pengujian A/B memungkinkan Anda mengalokasikan lalu lintas ke indeks sumber dan indeks canary berdasarkan proporsi serta memverifikasi efek modifikasi skema. Operasi berikut hanya dapat dilakukan setelah semua lalu lintas beralih ke indeks canary.

    1. Di bagian Operations pada kotak dialog Use Gray Index, geser slider untuk menyesuaikan bobot indeks sumber dan indeks canary, lalu klik Set Weight.

      fig_setindex

    2. Di pesan Set Weight, tinjau data bobot dan informasi perbandingan skema.

    3. Setelah mengonfirmasi informasi tersebut, klik Set Weight.

    4. Di pesan yang muncul, klik OK.

  5. Setelah semua lalu lintas query beralih ke indeks canary, alihkan skema antara indeks sumber dan indeks canary.

    Setelah pergantian skema, nama indeks sumber terkait dengan skema baru, sedangkan nama indeks canary terkait dengan skema lama. Semua lalu lintas beralih untuk menanyakan indeks sumber yang namanya terkait dengan skema baru.

    image.png

    1. Di bagian Operations pada kotak dialog Use Gray Index, klik Switch Index.

    2. Di pesan Switch Index, tinjau perbandingan kunci routing, metode pra-pengurutan, dan skema antara indeks sumber dan indeks canary. Setelah mengonfirmasi informasi tersebut, klik Confirm Switch.

  6. Hapus indeks sumber setelah pergantian skema dan verifikasi bahwa skema baru benar. Sebelum menghapus indeks sumber, disarankan menunggu beberapa waktu, seperti satu hari.

    image.png

    1. Di kotak dialog Use Gray Index, klik Delete Canary Release.

    2. Di kotak dialog Are you sure you want to delete the canary index after the canary release is complete? , konfirmasikan bahwa informasi tentang indeks canary yang ingin dihapus benar. Masukkan Saya mengonfirmasi bahwa data indeks baru telah disinkronkan dan rilis canary telah selesai untuk jangka waktu tertentu. di kotak teks yang muncul.

    3. Klik Yes.

Keamanan

Untuk membatasi dampak operasi yang salah, Tablestore menyediakan mekanisme rollback dan catatan pergantian untuk meminimalkan risiko yang disebabkan oleh modifikasi skema.

  • Mekanisme rollback

    Saat memodifikasi skema indeks pencarian secara dinamis, Anda dapat membatalkan modifikasi.

    • Setelah membuat indeks canary, Anda dapat menghapus indeks canary dan membuat indeks baru jika skema indeks canary tidak sesuai harapan.

    • Selama pengujian A/B, Anda dapat menentukan bobot untuk secara bertahap beralih lalu lintas ke indeks canary. Dalam proses ini, Anda dapat mengatur ulang bobot kapan saja untuk beralih lalu lintas kembali ke indeks sumber jika terjadi masalah.

    • Setelah mengalihkan skema antara indeks sumber dan indeks canary, Anda dapat membatalkan pergantian kapan saja untuk membatalkan skema jika terjadi masalah. Pergantian indeks adalah kebalikan dari pembatalan pergantian.

  • Catatan pergantian

    Jika Anda beralih lalu lintas ke indeks canary saat kemajuan sinkronisasi indeks canary lebih lambat daripada indeks sumber, data yang Anda query mungkin bukan yang terbaru. Dalam hal ini, Tablestore menentukan apakah pergantian dapat dilakukan berdasarkan status sinkronisasi dan waktu sinkronisasi terakhir indeks sumber dan indeks canary.

    Jika situasi berikut ada, Tablestore menentukan bahwa pergantian dapat dilakukan:

    • Indeks sumber berada pada tahap sinkronisasi data penuh. Indeks canary berada pada tahap sinkronisasi data penuh atau bertambah. Kemajuan sinkronisasi indeks canary sama dengan indeks sumber.

    • Indeks sumber dan indeks canary berada pada tahap sinkronisasi data bertambah. Waktu sinkronisasi terakhir indeks sumber maksimal 60 detik lebih awal daripada indeks canary.

Penagihan

Anda tidak dikenakan biaya untuk membangun indeks canary dan menulis data. Namun, Anda dikenakan biaya untuk penggunaan penyimpanan dan unit kapasitas baca (CU) yang dicadangkan untuk indeks sumber dan indeks canary. Untuk informasi lebih lanjut, lihat Item Penagihan Indeks Pencarian.

Referensi