Il motore per suggerimenti per i numeri elevati di tabelle in Cloud SQL ti aiuta a rilevare le istanze il cui conteggio delle tabelle è troppo elevato e vicino al limite dello SLA. Fornisce quindi consigli su come ottimizzare queste istanze e migliorarne il rendimento.
Questa pagina descrive il funzionamento del suggerimento relativo a un numero elevato di tabelle e come puoi utilizzarlo.
Come funziona
Se hai 50.000 o più tabelle di database su una singola istanza, l'istanza potrebbe non rispondere o non essere in grado di eseguire operazioni di manutenzione e non è coperta dallo SLA.
Il motore per suggerimenti per i numeri elevati di tabelle in Cloud SQL analizza le metriche per il numero di tabelle in un'istanza Cloud SQL MySQL. Se il numero di tabelle è superiore o uguale all'80% del limite dello SLA, che consente 50.000 tabelle, l'istanza viene considerata con un numero elevato di tabelle.
Prezzi
Il motore per suggerimenti per i numeri elevati di tabelle aperte in Cloud SQL si trova nel livello di prezzo Standard di Recommender.
Prima di iniziare
Prima di poter visualizzare consigli e approfondimenti, procedi nel seguente modo:
- Per ottenere le autorizzazioni per visualizzare e utilizzare approfondimenti e consigli,
assicurati di disporre dei ruoli richiesti.
Tasks Ruoli Visualizza i suggerimenti Uno di questi ruoli: recommender.cloudsqlViewer
ocloudsql.viewer
.Applica consigli Uno di questi ruoli: recommender.cloudsqlAdmin
,cloudsql.editor
ocloudsql.admin
. -
Enable the Recommender API.
Elenco dei consigli per migliorare il rendimento dell'istanza
Puoi elencare i consigli per migliorare le prestazioni delle istanze utilizzando la console Google Cloud , gcloud CLI
o l'API Recommender.
I suggerimenti per migliorare il rendimento delle istanze vengono visualizzati solo se hai istanze che si stanno avvicinando ai limiti delle soglie di rendimento.
Console
Per elencare i consigli sul rendimento delle istanze utilizzando la consoleGoogle Cloud , segui questi passaggi:
Vai alla pagina Istanze Cloud SQL.
Fai clic su Visualizza tutto nel banner dei consigli Gestisci un numero elevato di tabelle.
In alternativa, segui questi passaggi:
Vai all'hub dei suggerimenti. Vedi anche Introduzione all'hub dei suggerimenti.
Nella scheda Migliora le prestazioni dell'istanza Cloud SQL, fai clic su Visualizza tutto.
Seleziona le istanze con il consiglio Gestisci un numero elevato di tabelle.
Interfaccia a riga di comando gcloud
Per elencare i consigli per migliorare il rendimento dell'istanza utilizzando gcloud CLI
, esegui il comando
gcloud recommender recommendations list
come segue:
gcloud recommender recommendations list \ --project=PROJECT_ID \ --location=LOCATION \ --recommender=google.cloudsql.instance.PerformanceRecommender \ --filter=recommenderSubtype=MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progettoLOCATION
: una regione, ad esempious-central1
API
Per elencare i consigli per migliorare il rendimento dell'istanza utilizzando l'API Recommendations, chiama il metodo
recommendations.list
nel seguente modo:
GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTablesBestPractice/recommendations
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.LOCATION
: una regione, ad esempious-central1
.
Se il sistema di suggerimenti rileva istanze con un numero elevato di tabelle, le elenca in una tabella con altri consigli sul rendimento. Ogni riga mostra l'ID istanza, un breve consiglio, il motore del database, la posizione e la data dell'ultimo aggiornamento.
Visualizzare approfondimenti e consigli dettagliati
Puoi visualizzare approfondimenti e consigli dettagliati sulle istanze
con un numero elevato di tabelle utilizzando la console Google Cloud ,
gcloud CLI
o l'API Recommender.
Console
Per visualizzare approfondimenti e consigli dettagliati sulle istanze che si avvicinano alla soglia di rendimento utilizzando la console Google Cloud , fai clic sul link del consiglio nell'elenco delle istanze.
Interfaccia a riga di comando gcloud
Per visualizzare approfondimenti e consigli dettagliati sulle istanze che si avvicinano alla soglia di rendimento utilizzando gcloud CLI
, esegui il comando
gcloud recommender insights list
come segue:
gcloud recommender insights list \ --project=PROJECT_ID \ --location=LOCATION \ --insight-type=google.cloudsql.instance.PerformanceInsight \ --filter=insightSubtype=MYSQL_HIGH_NUMBER_OF_TABLES
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.LOCATION
: una regione, ad esempious-central1
.
API
Per visualizzare approfondimenti e consigli dettagliati sulle istanze che si avvicinano alla soglia di rendimento
utilizzando l'API Recommendations,
chiama il metodo insights.list
nel seguente modo:
GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTables/insights
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.LOCATION
: una regione, ad esempious-central1
.
La seguente tabella elenca l'approfondimento e il suggerimento generati dal motore per suggerimenti per i numeri elevati di tabelle aperte in Cloud SQL per aiutarti a migliorare il rendimento.
I sottotipi sono visibili nei risultati dell'API e in gcloud CLI
.
Insight | Consiglio |
---|---|
Il numero di tabelle su questa istanza è superiore o uguale all'80% del limite dello SLA, che corrisponde a 50.000 tabelle. Sottotipo: MYSQL_HIGH_NUMBER_OF_TABLES
|
Migliora le prestazioni dell'istanza Cloud SQL riducendo il numero di tabelle. Sottotipo: MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE
|
Applica consigli
Valuta attentamente i consigli e procedi in uno dei seguenti modi:
Per esaminare l'istanza, fai clic su Visualizza istanza. Consulta Ottimizzare il rendimento dell'istanza e segui i consigli.
Per ignorare il consiglio in modo che venga messo in secondo piano e visualizzato in grigio, fai clic su Ignora.
Per chiudere il riquadro senza applicare o ignorare il consiglio, fai clic su Annulla.
Ottimizzare il rendimento dell'istanza
Modifica l'istanza per aumentare il numero di vCPU ad almeno 32 core e la dimensione della memoria ad almeno 200 GB. In questo modo, il limite delle tabelle dell'istanza aumenta da 50.000 a 500.000.
Elimina le tabelle non necessarie:
DROP TABLE TABLE_NAME;
Sostituisci quanto segue:
TABLE_NAME
: il nome della tabella che intendi eliminare.
Riduci il numero di tabelle per istanza dividendo il database in più istanze per mantenere il numero di tabelle in ciascuna istanza entro i limiti consigliati.
Se non puoi ridurre immediatamente il numero di tabelle, puoi ridurre la probabilità che la tua istanza sia interessata dall'elevato numero di tabelle impostando il flag
innodb_file_per_table
su OFF. Per disattivare il valore del flaginnodb_file_per_table
, consulta Configurare un flag di database. Tuttavia, questa impostazione non ripristina la conformità dell'istanza allo SLA. Consulta queste linee guida operative.Utilizza un tablespace generale per creare tabelle o spostare quelle esistenti in un tablespace generale. Per saperne di più, consulta la documentazione di MySQL sugli spazi delle tabelle generali.
Passaggi successivi
- Aumentare le dimensioni della cache delle tabelle aperte
- Monitorare la disponibilità del disco
- Identifica le istanze Cloud SQL inattive
- Riduzione delle istanze Cloud SQL con provisioning eccessivo
- Esplora i Google Cloud sistemi di raccomandazione