Questa pagina fornisce informazioni sulle quote e sui limiti di Cloud SQL. Le quote sono applicate per progetto; i limiti vengono applicati all'istanza o al progetto, a seconda del limite.
Quote
Una quota limita la quantità di una risorsa Google Cloud che può essere utilizzata nel progetto Google Cloud. Cloud SQL è un esempio di questo tipo di risorsa.
Per Cloud SQL, le quote fanno parte di un sistema che:
- Monitorare l'utilizzo o il consumo delle istanze Cloud SQL
- Limita il consumo di queste istanze per motivi che includono la garanzia dell'equità e la riduzione degli picchi di utilizzo
- Gestire le configurazioni che applicano automaticamente le limitazioni prescritte
- Fornire un mezzo per apportare o richiedere modifiche alla quota
Quando una quota viene superata, nella maggior parte dei casi il sistema blocca immediatamente l'accesso all'istanza pertinente e l'attività che stai tentando di eseguire non va a buon fine. Le quote si applicano a ogni progetto Google Cloud e sono condivise tra tutte le istanze che lo utilizzano.
Autorizzazioni per controllare e aumentare le quote
Per controllare e aumentare le quote, devi disporre delle seguenti autorizzazioni:
serviceusage.quotas.get:
controlla le tue quoteserviceusage.quotas.update:
aumentare le quote
Per impostazione predefinita, queste autorizzazioni sono incluse nei ruoli IAM di base Editor e Proprietario, nonché nel ruolo Amministratore quota predefinito. Se hai bisogno di autorizzazioni aggiuntive, contatta l'amministratore della quota.
Verifica le tue quote
Per controllare le quote attuali per le risorse nel tuo progetto, vai alla pagina Quote nella console Google Cloud e filtra per API Cloud SQL Admin. Queste quote si applicano solo alle chiamate API e non includono le query del database.
Aumentare le quote
Man mano che il tuo utilizzo di Google Cloud aumenta nel tempo, le tue quote potrebbero aumentare di conseguenza. Se prevedi un aumento dell'utilizzo consistente, presenta la richiesta con qualche giorno di anticipo per assicurarti che le quote vengano dimensionate correttamente.
Non sono previsti costi per una richiesta di aumento della quota. I costi aumentano solo se utilizzi più risorse.
Per aumentare le quote:
Nella console Google Cloud, vai alla pagina Quote.
Filtra per il servizio API Cloud SQL Admin.
Se non vedi questo servizio, abilita l'API Cloud SQL Admin.
Seleziona le caselle di controllo accanto alle quote da modificare e poi fai clic su Modifica quote.
Per ogni quota selezionata, inserisci il valore del limite desiderato nel campo Nuovo limite.
Nel campo Descrizione del motivo, inserisci il motivo della richiesta di aumento della quota e fai clic su Fine.
Fai clic su Avanti.
Inserisci il tuo nome, la tua email e il tuo numero di telefono, poi fai clic su Invia richiesta.
Se hai difficoltà ad aumentare le quote, invia una richiesta di assistenza.
Come vengono reintegrate le quote per le risorse
Le quote giornaliere vengono reintegrate giornalmente alla mezzanotte del fuso orario del Pacifico.
Quote e disponibilità delle risorse
Le quote delle risorse rappresentano la quantità massima di risorse di un determinato tipo che puoi creare, se disponibili. Le quote non garantiscono che le risorse siano sempre disponibili. Se una risorsa non è fisicamente disponibile per la tua regione, non puoi creare nuove risorse di quel tipo, anche se hai ancora a disposizione parte della quota nel tuo progetto.
Quote di frequenza
Cloud SQL supporta le quote di frequenza, note anche come limiti di frequenza o quote API. Le quote di frequenza definiscono il numero di richieste che puoi inviare all'API Cloud SQL Admin.
Ogni quota di frequenza corrisponde a tutte le richieste per una categoria di uno o più metodi dell'API Cloud SQL Admin. Le quote di frequenza vengono reimpostate dopo un intervallo di tempo specifico per Cloud SQL (ad esempio il numero di richieste API al minuto).
Quando utilizzi l'interfaccia a riga di comando gcloud o la console Google Cloud, invii richieste all'API Cloud SQL Admin e queste richieste vengono conteggiate ai fini delle quote tariffarie. Se utilizzi account di servizio per accedere all'API, queste richieste vengono conteggiate anche ai fini delle quote di tariffa.
Cloud SQL applica e reintegra automaticamente le quote di frequenza a intervalli di 60 secondi. Se il tuo progetto raggiunge il limite di una quota di tariffa in un qualsiasi momento entro 60 secondi, devi attendere che la quota venga reintegrata prima di effettuare altre richieste in quella categoria. Se il tuo progetto supera questo limite, riceverai un codice di stato HTTP 429
con il motivo rateLimitExceeded
.
L'API Cloud SQL Admin è suddivisa nelle seguenti categorie:
- Connetti:cerca i valori necessari per connetterti a un database Cloud SQL.
- Ottieni: recupera le informazioni su una risorsa (ad esempio un'istanza, un'operazione o un backup).
- Elenco: elenca le risorse.
- Mutate:crea, modifica ed elimina le risorse.
- Valore predefinito per regione:interagisci con un'istanza Cloud SQL senza connetterti, recuperarla, elencarla o modificarla.
- Valore predefinito: elenca i flag di database e i tipi di macchine (livelli) per le istanze Cloud SQL. Le API in questa categoria sono globali.
Cloud SQL impone quote di frequenza per ogni categoria al minuto, per utente e per regione. Per ogni combinazione univoca di questi attributi, Cloud SQL impone un limite di frequenza distinto.
L'API Cloud SQL Admin genera metriche dettagliate che possono aiutarti a monitorare l'utilizzo dell'API, le prestazioni dell'istanza Cloud SQL e dell'API e a scoprire i problemi tra l'istanza e l'API. Per saperne di più, consulta Monitoraggio dell'utilizzo delle API.
La tabella seguente fornisce informazioni sulla metrica, sulle API e sul limite predefinito per ogni categoria:
Categoria | Metrica | API | Limite predefinito |
---|---|---|---|
Connetti |
Il numero di richieste effettuate al minuto per utente per regione per utilizzare le API in questa categoria. |
1000 | |
Ottieni |
Il numero di richieste effettuate al minuto per utente per regione per utilizzare le API in questa categoria. |
500 | |
Elenco |
Il numero di richieste effettuate al minuto per utente per regione per utilizzare le API in questa categoria. |
500 | |
Modifica |
Il numero di richieste effettuate al minuto per utente per regione per utilizzare le API in questa categoria. |
|
180 |
Valore predefinito per regione |
Il numero di richieste regionali predefinite effettuate al minuto per utente per regione per utilizzare le API in questa categoria. |
180 | |
Predefinito |
Il numero di richieste predefinite effettuate al minuto per utente per utilizzare le API di questa categoria. |
180 |
Limiti
Esistono restrizioni per alcune risorse Cloud SQL che non vengono reintegrate periodicamente e non vengono mostrate nella pagina Quote in Google Cloud Console. Non tutti i limiti possono essere aumentati.
Limiti configurabili
Istanze per progetto
Per impostazione predefinita, puoi avere fino a 1000 istanze per progetto, tranne in alcuni casi, dove potresti avere un limite di 100. Invia una richiesta di assistenza per richiedere un aumento. Le repliche di lettura vengono conteggiate come istanze.
Ti consigliamo di distribuire il numero di istanze su più progetti per ridurre la dipendenza dalle richieste di aumento della quota. In questo modo eviterai eventuali blocchi.
Numero massimo di connessioni simultanee
Puoi scegliere di utilizzare il flag
max_connections
per configurare un limite di connessioni.
MySQL consente un massimo di 32.000 connessioni. Per trovare il limite di connessioni per l'istanza, connettiti al tuo database ed esegui questo comando:
SHOW VARIABLES LIKE "max_connections";
Precisazioni
Utilizzo della quota per i connettori Cloud SQL
Il proxy di autenticazione Cloud SQL e altri connettori Cloud SQL utilizzano la quota dell'API Cloud SQL Admin. I connettori Cloud SQL funzionano eseguendo un'operazione di aggiornamento ogni ora circa. Questa operazione di aggiornamento effettua due chiamate API. Una chiamata recupera i metadati dell'istanza e l'altra recupera un certificato temporaneo.
L'utilizzo della quota viene calcolato come segue:
Quota usage = connector processes running * instances * 2 API calls per hour
Ad esempio, se hai tre processi che eseguono un connettore, il connettore è configurato per connettersi a due istanze Cloud SQL e vengono effettuate due chiamate API per un'ora, il consumo della quota è pari a 12 (3 processi * 2 istanze * 2 chiamate API).
Se stai iniziando a utilizzare Cloud SQL, tieni presente la formula riportata sopra e tieni presente quanto segue:
La velocità di scalabilità dei nuovi client di database
La velocità con cui aggiungi altre istanze
Utilizzo di account di servizio diversi per ogni applicazione
Autenticazione IAM dei database Cloud SQL
Esiste una quota di accessi al minuto per ogni istanza, che include sia gli accessi riusciti sia quelli non riusciti. Quando la quota viene superata, gli accessi non sono disponibili temporaneamente. Ti consigliamo di evitare accessi frequenti e di limitare gli accessi utilizzando reti autorizzate. La quota per l'autorizzazione degli accessi è di 12.000 al minuto per istanza.
Quota delle regole di forwarding
Ogni istanza Cloud SQL è costituita da una regola di forwarding e da un bilanciatore del carico. Esiste un limite di quota per la regola di forwarding, in base al tipo di bilanciatore del carico a cui fa riferimento. Esistono più quote per ogni tipo di regole di inoltro, per progetto, per rete e per gruppo di peering. Esiste anche una regola di override per le quote per rete e per gruppo di peering per Cloud SQL. Ciò significa che, quando aumentiamo la quota per emittente per le emittenti dei produttori, viene aumentata anche la quota per gruppo di peering allo stesso valore.
Il VPC producer Cloud SQL è in peering con il VPC del cliente, quindi spesso raggiungiamo la quota per rete per la rete del producer Cloud SQL e la quota per gruppo di peering per il VPC del cliente.
Quando raggiungiamo la quota, alcune operazioni possono non riuscire, tra cui:
Operazione di creazione: quando creiamo nuove istanze, sono necessarie nuove regole di inoltro.
Operazione di aggiornamento: consentiamo ai clienti di cambiare la rete delle istanze, quindi abbiamo bisogno di nuove regole di inoltro nella nuova rete.
Operazione di manutenzione: le regole di inoltro vengono ricreate.
Per evitare problemi, ti consigliamo di limitare il numero totale di istanze per rete a meno di 500.
Se riscontri un problema, apri una richiesta di assistenza e provvederemo ad aumentare le quote pertinenti.
Limiti fissi
IOPS
IOPS indica il numero di operazioni di input/output (o lettura/scrittura) che il disco può elaborare al secondo.
Cloud SQL utilizza macchine virtuali (VM) Compute Engine con dischi di archiviazione permanente. Per informazioni dettagliate sulle caratteristiche di prestazioni specifiche delle VM, consulta la tabella IOPS massimi sostenibili nella pagina Prestazioni dei dischi permanenti.
Limite di tabelle
Cloud SQL per MySQL ha un limite di 50.000 tabelle per impostazione predefinita o 500.000 tabelle per un'istanza se soddisfi i requisiti hardware minimi di almeno 32 core e un minimo di 200 G di memoria. Per prestazioni ottimali, consigliamo di non superare il numero di 50.000 tabelle in un singolo database.
Le istanze che superano questi limiti non sono coperte dallo SLA (accordo sul livello del servizio). Quando la dimensione di una tabella raggiunge i 16 TB, la dimensione massima per le partizioni Linux, non è possibile aggiungere altri dati.
La memoria necessaria per l'istanza dipende da vari fattori. Per scoprire di più su come Cloud SQL per MySQL utilizza la memoria, consulta In che modo MySQL utilizza la memoria.
Se il numero di tabelle attive è superiore a quello predefinito di Cloud SQL o se la dimensione complessiva della cache è notevolmente grande, devi apportare modifiche all'istanza. Per mantenere un rendimento ottimale, puoi:
- Esegui l'upgrade alla versione Cloud SQL Enterprise Plus per opzioni di memoria più elevate.
- Esegui l'upgrade della macchina Cloud SQL per aggiungere memoria all'istanza.
- Riduci il valore del flag di database
innodb_buffer_pool_size
.
I flag
table_open_cache
e
table_definition_cache
possono essere utilizzati per modificare la cache delle tabelle Cloud SQL per MySQL.
Puoi utilizzare lo schema di rendimento per ottenere una stima delle dimensioni della cache della tabella per la tua istanza.
Se il numero di tabelle attive è molto superiore sia ai valori predefiniti delle tabelle Cloud SQL sia al numero di tabelle aperte consigliato da MySQL, Cloud SQL consiglia di configurare i flag di database table_open_cache
e
table_definition_cache
con il numero di tabelle attive dell'istanza.
Per saperne di più, consulta Come MySQL apre e chiude le tabelle.
Limite di operazioni
I tipi di macchine di livello micro e small limitano il numero di operazioni simultanee.
Il superamento di questi limiti causa un errore Too many operations
.
Il limite del tipo di macchina db-custom-1-3840 (una CPU) è 50 operazioni simultanee.
Il limite del tipo di macchina f1-micro (CPU con core condivisi) è di 20 operazioni simultanee.Limiti di archiviazione di Cloud SQL
- Core dedicato: fino a 64 TB.
Per ulteriori informazioni, consulta la pagina Prezzi di CPU e memoria.
- Con core condiviso: fino a 3 TB.
Per ulteriori informazioni, consulta la sezione Prezzi delle istanze.
Opzioni di archiviazione di Cloud SQL
Per configurare l'opzione di archiviazione in modo da ottenere prestazioni ottimali, è importante conoscere il carico di lavoro e scegliere i valori appropriati per tipo e dimensione del disco. Per ulteriori informazioni sulle opzioni disponibili per Cloud SQL, consulta la pagina dedicata alle impostazioni delle istanze.Limiti di App Engine
Ogni istanza App Engine in esecuzione nell'ambiente standard non può avere più di 100 connessioni simultanee a un'istanza. Per le app PHP 5.5, il limite è di 60 connessioni simultanee.
Le applicazioni App Engine sono soggette a limiti temporali di richiesta a seconda dell'uso e dell'ambiente. Per ulteriori informazioni, scopri come vengono gestite le istanze nell'ambiente standard di App Engine standard e in quello flessibile.
Le applicazioni App Engine sono inoltre soggette a ulteriori quote e limiti di App Engine, come illustrato nella pagina relativa alle quote di App Engine.
Limiti di Cloud Run
Se utilizzi la connessione Cloud SQL integrata su Cloud Run, le istanze dei contenitori Cloud Run sono limitate a 100 connessioni per database Cloud SQL.
Ogni istanza di un servizio o job Cloud Run può avere 100 connessioni al database e, in base alla scalabilità, il numero totale di connessioni per deployment può aumentare.
Questo limite non si applica quando utilizzi altri metodi di connessione, come il proxy di autenticazione Cloud SQL in un sidecar, i connettori dei linguaggi Cloud SQL o quando ti connetti direttamente all'indirizzo IP dell'istanza Cloud SQL.
Limiti di Cloud Run Functions
Le funzioni Cloud Run (1ª generazione.) limitano le esecuzioni simultanee a una per istanza. Non si verifica mai la condizione in cui l'istanza di una singola funzione di 1ª generazione elabora due richieste contemporaneamente. Nella maggior parte dei casi, è necessaria un'unica connessione al database.
Le funzioni Cloud Run (2ª generazione.) si basano su Cloud Run e hanno un limite di 100 connessioni al database per istanza.