All Products
Search
Document Center

PolarDB:Apa Itu Indeks Parsial

Last Updated:Aug 13, 2026

PolarDB for MySQL memungkinkan Anda membuat indeks parsial pada tabel partisi. Anda dapat membuat indeks hanya pada satu atau beberapa partisi dari tabel partisi, bukan pada semua partisi. Dengan membuat indeks yang berbeda pada partisi-partisi dalam tabel partisi, Anda dapat memenuhi kebutuhan kueri yang berbeda sekaligus menghemat ruang penyimpanan.

Scenarios

  • Tabel pesanan atau tabel log

    Dalam skenario penggunaan tabel pesanan atau tabel log, biasanya dibuat tabel partisi rentang berbasis waktu. Namun, hanya satu atau dua partisi terbaru yang sering dikueri. Anda dapat membuat secondary index hanya pada partisi yang sering dikueri tersebut. Di sisi lain, MySQL native dan database lainnya hanya memungkinkan pembuatan indeks yang sama pada semua partisi. Meskipun pendekatan ini dapat memenuhi kebutuhan kueri pada partisi hotspot, hal ini mengonsumsi ruang penyimpanan yang besar akibat secondary index yang dibuat pada semua partisi.

    Dalam skenario tersebut, Anda dapat membuat partial index pada tabel partisi, dengan hanya membuat secondary index yang diperlukan pada partisi hot. Pendekatan ini tidak hanya memenuhi kebutuhan kueri pada partisi hot, tetapi juga menghemat ruang penyimpanan untuk secondary index.

  • Kueri dan analisis data historis

    Dalam skenario kueri dan analisis data historis, biasanya digunakan partisi rentang berbasis waktu. Pada partisi baru, Anda dapat melakukan penyisipan data dengan cepat dan menjalankan kueri sederhana. Sebagian besar kueri analitis yang kompleks dilakukan pada partisi historis. Untuk memenuhi kebutuhan tersebut, Anda dapat membuat beberapa secondary index pada partisi historis. Namun, semakin banyak indeks yang dibuat pada suatu partisi, semakin menurun kecepatan penulisan data.

    Dalam skenario ini, Anda dapat membuat partial index pada tabel partisi: buat secondary index untuk kueri sederhana pada partisi hot dan secondary index untuk kueri analitis pada partisi historis.

    Dengan menerapkan indeks yang berbeda sesuai kebutuhan bisnis pada masing-masing partisi, performa penyisipan data ke partisi hot tetap terjaga, kebutuhan kueri dan analisis pada partisi historis terpenuhi, serta penggunaan ruang penyimpanan untuk secondary index dapat diminimalkan.

Prerequisites

Kluster harus menjalankan PolarDB for MySQL 8.0.2 dengan versi revisi 8.0.2.2.21 atau lebih baru. Untuk memeriksa versi kluster, lihat bagian "Query the engine version" pada topik Engine versions.

Limits

  • Anda tidak dapat membuat partial index pada primary key.

  • Anda tidak dapat membuat global secondary index (GSI) sebagai partial index. Namun, Anda dapat membuat global secondary index dan partial index dalam tabel partisi yang sama.

  • Anda tidak dapat membuat indeks tipe FULLTEXT dan SPATIAL sebagai partial index.

  • Pengoptimal hanya dapat memilih indeks yang tersedia pada tabel partisi yang akan diakses.

Usage

Anda dapat membuat partial index dalam tabel partisi dan memodifikasinya setelah dibuat. Untuk informasi tentang cara membuat dan memodifikasi partial index, lihat Create a partial index dan Modify a partial index.

Catatan

Fitur pembuatan partial index dalam tabel partisi sedang dalam rilis canary. Untuk menggunakan fitur ini, bergabunglah dengan grup DingTalk 24490017825 untuk mendapatkan dukungan teknis.