Questa pagina descrive Index Advisor di Cloud SQL per MySQL e come visualizzare e applicare i suoi suggerimenti per gli indici.
Cloud SQL per MySQL offre un consulente per gli indici completamente gestito che tiene traccia delle query gestite regolarmente dal database. Periodicamente, i suggerimenti sull'indicizzazione analizzano queste query per consigliare nuovi indici che possono migliorare le prestazioni delle query. Index Advisor ti consente di rilevare e risolvere i problemi di prestazioni di sistemi e query.
Come funziona il suggeritore di indici?
I suggerimenti sull'indicizzazione ti aiutano a migliorare l'elaborazione delle query nel seguente modo:
- Consiglia un insieme di indici con comandi SQL per creare indici.
- Fornisci dati per aiutarti a valutare gli indici consigliati, ad esempio le dimensioni di archiviazione stimate e l'impatto degli indici su una query.
CREATE INDEX
contenente
il nome del database, il nome della tabella e i nomi delle colonne. Le query monitorate
sono tutte query normalizzate con tutti i valori letterali rimossi.
I suggerimenti sull'indicizzazione vengono criptati at-rest.
In Cloud SQL per MySQL, puoi utilizzare i flag di database per configurare e ottimizzare il suggeritore di indici. Per saperne di più, vedi Indicatori di Index Advisor.Limitazioni
Il suggeritore di indici di Cloud SQL per MySQL presenta le seguenti limitazioni:
- Index Advisor fornisce solo consigli per
CREATE INDEX
. - Il consulente per gli indici non supporta le istanze con le seguenti configurazioni:
- Istanze Cloud SQL Enterprise
- Istanze che utilizzano tipi di macchine con core condivisi
Prima di iniziare
Per ottenere i consigli di Index Advisor, devi utilizzare la versione Cloud SQL Enterprise Plus e attivare Query Insights per la versione Cloud SQL Enterprise Plus per la tua istanza Cloud SQL.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni
necessarie per ottenere i suggerimenti di Index Advisor,
chiedi all'amministratore di concederti il
ruolo IAM Cloud SQL Viewer (roles/cloudsql.viewer
)
nel progetto che ospita l'istanza Cloud SQL.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per ottenere i consigli di Index Advisor. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per ottenere i suggerimenti di Index Advisor sono necessarie le seguenti autorizzazioni:
-
databaseinsights.recommendations.query
-
databaseinsights.resourceRecommendations.query
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Abilita i suggerimenti di Index Advisor
Quando attivi Query Insights per la versione Cloud SQL Enterprise Plus, attivi automaticamente i consigli di Index Advisor.
Disattivare i suggerimenti di Index Advisor
Non puoi disattivare i suggerimenti di Index Advisor senza disattivare Query Insights per la versione Cloud SQL Enterprise Plus.
Per disattivare i suggerimenti di Index Advisor e Query Insights per la versione Cloud SQL Enterprise Plus, consulta Disattivare Query Insights per la versione Cloud SQL Enterprise Plus.
Visualizzare i suggerimenti di Index Advisor
Cloud SQL esegue automaticamente l'analisi di Index Advisor periodicamente. Per visualizzare i suggerimenti di Index Advisor, utilizza la dashboard Query Insights. Puoi anche visualizzare ed eseguire query sui consigli di Index Advisor come tabella o richiedere un'analisi e un report on demand in qualsiasi momento.
Visualizzare e filtrare i suggerimenti nella dashboard Query Insights
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Approfondimenti sulle query.
- I suggerimenti di Index Advisor vengono visualizzati nella colonna Suggerimento della sezione Query e tag principali.
- (Facoltativo) Per visualizzare solo le query con suggerimenti
CREATE INDEX
, aggiungi un filtro per Suggerimento: crea indici.
Visualizzare i consigli per una query
Per visualizzare i suggerimenti per l'indice per una query specifica:
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Approfondimenti sulle query.
- Nella sezione Query e tag principali, fai clic su Query.
- Per visualizzare i dettagli del consiglio per una query, effettua una delle seguenti operazioni:
- Fai clic su una query per scoprire di più sui consigli per la query selezionata, incluse le seguenti informazioni:
- Impatto sulle prestazioni (alto, medio e basso): la velocità stimata della query dopo la creazione di tutti gli indici consigliati.
- Consigli: crea suggerimenti per gli indici.
- Tabelle interessate: il numero di tabelle che verranno interessate quando vengono creati gli indici.
- Spazio di archiviazione stimato aggiuntivo necessario: lo spazio di archiviazione stimato necessario per creare tutti gli indici consigliati.
- Numero di query interessate: il numero totale di query nel workload interessate dai suggerimenti per gli indici. Un indice può migliorare più query.
- Fai clic su Crea indici per una query specifica per visualizzare consigli dettagliati sulla creazione di indici per migliorare le prestazioni delle query.
- Fai clic su una query per scoprire di più sui consigli per la query selezionata, incluse le seguenti informazioni:
Visualizzare i consigli come visualizzazione tabella del database
Puoi leggere i risultati nella seguente tabella nel database mysql
:
mysql.cloudsql_db_advisor_recommended_indexes
: elenca tutti i nuovi indici consigliati per ogni database. Include anche le stime dello spazio di archiviazione richiesto per ogni indice e il numero di query che ogni indice può interessare.
Ad esempio, per visualizzare i risultati dell'analisi dei suggerimenti per gli indici più recenti, formattati come tabella, esegui questa query:
SELECT * FROM mysql.cloudsql_db_advisor_recommended_indexes;
Crea indici consigliati
Puoi creare indici consigliati dalla dashboard Query Insights o da una visualizzazione della tabella del database.
Creare un indice consigliato utilizzando la dashboard Query Insights
Per creare un indice consigliato utilizzando la dashboard Query Insights:
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Approfondimenti sulle query.
- Nella tabella Dimensioni massime per carico del database, fai clic su Query.
- Fai clic su Crea indici per una query specifica.
- Fai clic su Copia tutti i comandi di indice. I comandi
CREATE INDEX
vengono copiati negli appunti. - Connettiti all'istanza principale dalla riga di comando.
Per creare gli indici consigliati, esegui i comandi copiati negli appunti, ad esempio:
CREATE INDEX ON "public"."demo_order" ("customer_id");
Crea un indice consigliato utilizzando una visualizzazione della tabella del database
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 suggerimento 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 solo consiglio: aggiungere un indice a una sola colonna
nella colonna age
della tabella Students
dello schema School
. Per applicare questo consiglio, inserisci una query DDL come
rappresentato nel report:
CREATE INDEX ON "School"."Students"("age");
Visualizza le query interessate
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Approfondimenti sulle query.
- Nella tabella Dimensioni massime per carico del database, fai clic su Query.
- Fai clic su Crea indici per una query specifica.
- Fai clic su Mostra query interessate.
- Fai clic su una query per visualizzare i dettagli della query interessata.
Configura Index Advisor
Sebbene lo strumento di consulenza per gli indici sia progettato per funzionare nella maggior parte dei casi d'uso con le impostazioni predefinite, puoi perfezionarne il comportamento impostando vari flag del database.
Per impostazione predefinita, Index Advisor viene eseguito una volta ogni 24 ore. Puoi modificare l'ora di pianificazione automatica utilizzando il flag cloudsql_index_advisor_auto_advisor_schedule
o eseguire un'analisi ad hoc in una data/ora specifica utilizzando il flag cloudsql_index_advisor_run_at_timestamp
.
Per saperne di più, vedi
Indicatori di Index Advisor.