Menggunakan konsultan indeks

Halaman ini menjelaskan penasihat indeks Cloud SQL untuk MySQL, dan cara Anda dapat melihat dan menerapkan rekomendasi indeksnya.

Cloud SQL untuk MySQL menawarkan penasihat indeks yang melacak kueri yang ditangani database Anda. Secara berkala, penasihat indeks menganalisis kueri ini untuk merekomendasikan indeks baru yang dapat meningkatkan performa kueri.

Anda dapat melihat dan membuat kueri rekomendasi penasihat indeks sebagai tabel, atau meminta analisis dan laporan on demand kapan saja.

Mengaktifkan rekomendasi penasihat indeks

Untuk mengaktifkan rekomendasi penasihat indeks, siapkan Gemini di Database.

Menonaktifkan rekomendasi penasihat indeks

Untuk menonaktifkan rekomendasi penasihat indeks, hapus flag cloudsql_index_advisor dari instance Cloud SQL untuk MySQL. Jika Anda mengaktifkan flag performance_schema untuk penasihat indeks, Anda dapat memilih untuk tetap mengaktifkan flag performance_schema atau menonaktifkannya.

Untuk mengetahui informasi selengkapnya tentang cara menghapus flag dari instance, lihat Mengonfigurasi flag database.

Melihat rekomendasi penasihat indeks

Cloud SQL untuk MySQL otomatis menjalankan analisis penasihat indeks secara berkala.

Anda dapat membaca hasilnya melalui tabel berikut yang terletak di database mysql:

  • mysql.cloudsql_db_advisor_recommended_indexes: mencantumkan indeks baru yang direkomendasikan untuk setiap database. Laporan ini juga mencakup estimasi penyimpanan yang diperlukan untuk setiap indeks, dan jumlah kueri yang dapat terpengaruh oleh setiap indeks.

Misalnya, untuk melihat hasil analisis rekomendasi indeks terbaru, yang diformat sebagai tabel, jalankan kueri ini:

SELECT * FROM mysql.cloudsql_db_advisor_recommended_indexes;

Menerapkan rekomendasi penasihat indeks

Kolom index tabel mysql.cloudsql_db_advisor_recommended_indexes berisi, di setiap baris, pernyataan DDL CREATE INDEX MySQL lengkap untuk membuat indeks yang direkomendasikan di baris tersebut.

Untuk menerapkan rekomendasi baris tersebut, jalankan pernyataan DDL tersebut, persis seperti yang ditampilkan.

Misalnya, pertimbangkan output ini dari menjalankan analisis secara manual, menggunakan kueri yang dijelaskan di bagian sebelumnya:

                    index                   | estimated_storage_size_in_mb
--------------------------------------------+------------------------------
 CREATE INDEX ON "School"."Students"("age") |                            3
(1 row)

Laporan ini berisi satu rekomendasi: menambahkan indeks kolom tunggal di kolom age dalam tabel Students skema School. Untuk menerapkan saran ini, masukkan kueri DDL seperti yang ditampilkan dalam laporan:

CREATE INDEX ON "School"."Students"("age");

Mengonfigurasi penasihat indeks

Meskipun penasihat indeks dirancang untuk berfungsi pada sebagian besar kasus penggunaan dengan setelan defaultnya, Anda dapat menyesuaikan perilakunya dengan menetapkan berbagai tanda database.

Secara default, penasihat indeks berjalan sekali setiap 24 jam. Anda dapat mengubah waktu penjadwalan otomatis menggunakan tanda cloudsql_index_advisor_auto_advisor_schedule, atau menjalankan analisis ad hoc pada tanggal/waktu tertentu menggunakan tanda cloudsql_index_advisor_run_at_timestamp. Untuk mengetahui informasi selengkapnya, lihat Flag penasihat indeks.