Utilizzare il consulente per gli indici

Questa pagina descrive Index Advisor di Cloud SQL per MySQL e come visualizzare e applicare i relativi consigli sugli indici.

Cloud SQL per MySQL offre un consulente per gli indici che monitora le query gestite dal database. Analizza periodicamente queste query per consigliare nuovi indici che possono aumentare le prestazioni delle query.

Puoi visualizzare ed eseguire query sui consigli dell'Advisor per gli indici sotto forma di tabella oppure richiedere un'analisi e un report on demand in qualsiasi momento.

Attivare i consigli del consulente per gli indici

Per attivare i consigli del consulente per gli indici, configura Gemini in Databases.

Disattivare i consigli del consulente per gli indici

Per disattivare i consigli dell'Advisor per gli indici, rimuovi il flag cloudsql_index_advisor dall'istanza Cloud SQL per MySQL. Se hai attivato il performance_schema flag per l'advisor per gli indici, puoi scegliere di mantenere attivo o disattivare il performance_schema flag.

Per maggiori informazioni su come rimuovere un flag dall'istanza, consulta Configurare i flag di database.

Visualizzare i consigli dell'Advisor per gli indici

Cloud SQL per MySQL esegue automaticamente l'analisi dell'advisor per gli indici periodicamente.

Puoi leggere i risultati tramite la seguente tabella nel database mysql:

  • mysql.cloudsql_db_advisor_recommended_indexes: elenca eventuali nuovi indici consigliati per ogni database. Sono incluse anche le stime dello spazio di archiviazione richiesto per ogni indice e il numero di query che ciascun indice può interessare.

Ad esempio, per visualizzare i risultati dell'analisi dei consigli per gli indici più recente, formattati come tabella, esegui questa query:

SELECT * FROM mysql.cloudsql_db_advisor_recommended_indexes;

Applicare i consigli dell'Advisor per gli indici

La colonna index della tabella mysql.cloudsql_db_advisor_recommended_indexes contiene, in ogni riga, un'istruzione DDL CREATE INDEX MySQL completa per generare l'indice consigliato in quella riga.

Per applicare il consiglio della riga, esegui l'istruzione DDL esattamente come presentata.

Ad esempio, considera questo output dell'esecuzione manuale di un'analisi utilizzando la query descritta nella sezione precedente:

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

Questo report contiene un singolo consiglio: aggiungere un indice di una colonna alla colonna age nella tabella Students dello schema School. Per applicare questo consiglio, inserisci una query DDL come rappresentata nel report:

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

Configurare il suggerimento sull'indicizzazione

Sebbene l'Advisor per gli indici sia progettato per funzionare per la maggior parte dei casi d'uso con le sue impostazioni predefinite, puoi ottimizzarne il comportamento impostando vari flag del database.

Per impostazione predefinita, l'Advisor per gli indici viene eseguito una volta ogni 24 ore. Puoi modificare la data e l'ora della pianificazione automatica utilizzando il flag cloudsql_index_advisor_auto_advisor_schedule o eseguire un'analisi ad hoc in una data e un'ora specifiche utilizzando il flag cloudsql_index_advisor_run_at_timestamp. Per ulteriori informazioni, consulta Indicatori dell'Advisor per gli indici.