Informazioni sui pool di lettura

I pool di lettura Cloud SQL supportano il bilanciamento del carico per i carichi di lavoro di lettura di grandi dimensioni.

Che cosa sono i pool di lettura?

Un pool di lettura è una raccolta di istanze di repliche di lettura utilizzate per distribuire i tuoi grandi workload di lettura. Questi workload possono essere reindirizzati dall'istanza principale al pool di lettura per ridurre il carico sull'istanza principale.

Ogni replica di lettura nel pool di lettura è chiamata nodo del pool di lettura.

Puoi scalare il pool di lettura in diversi modi:

  • Ridimensionamento orizzontale: ridimensiona orizzontalmente la capacità di bilanciamento del carico modificando il numero di nodi del pool di lettura nel pool di lettura. Ogni pool di lettura supporta da 1 a 7 nodi del pool di lettura.
  • Aumenta o riduci lo scale: aumenta o riduci la capacità di bilanciamento del carico verticalmente modificando il tipo di macchina associato a un nodo del pool di lettura. Una volta definita, la configurazione viene applicata in modo uniforme a ogni nodo del pool di lettura.

Quando modifichi le impostazioni dei nodi del pool di lettura, ad esempio archiviazione, connettività o flag di configurazione del database, le modifiche vengono applicate automaticamente in modo uniforme a ogni nodo del pool di lettura.

Accedere a un pool di lettura tramite un singolo endpoint di lettura

Il pool di lettura è accessibile tramite un singolo endpoint di lettura con un indirizzo IP immutabile. Le connessioni effettuate tramite l'endpoint vengono reindirizzate automaticamente a uno dei nodi del pool di lettura. Quando vuoi che il pool di lettura venga fare lo scale in o verticalmente, le applicazioni precedentemente connesse a questo singolo endpoint di lettura non devono essere riconfigurate, anche se puoi creare nuovi nodi del pool di lettura nel pool di lettura o eliminare quelli precedenti.

Ogni nodo del pool di lettura ha anche il proprio indirizzo IP. Sebbene non consigliati come approccio efficiente per accedere ai dati, puoi utilizzare questi indirizzi IP per risolvere i problemi di rendimento dei singoli nodi del pool di lettura.

Per ulteriori informazioni su come recuperare le informazioni di connessione per il pool di lettura o i nodi del pool di lettura (indirizzi IP o una stringa di connessione), consulta Visualizzare le informazioni sul pool di lettura.

Replica

La replica del pool di lettura Cloud SQL viene implementata utilizzando i gruppi di disponibilità di scalabilità in lettura di SQL Server.

Per saperne di più, consulta Informazioni sulla replica.

Caratteristiche del pool di lettura

Si applicano le seguenti caratteristiche:

  • Un pool di lettura con due o più nodi è coperto dall'accordo sul livello del servizio (SLA).
  • I nodi del pool di lettura risiedono sempre nella stessa regione, come specificato dall'utente. Google Cloud alternates read pool node residency among all zones in the region.
  • Un'istanza principale può avere uno o più pool di lettura.
  • Le seguenti operazioni comportano tempi di inattività inferiori a un secondo:
    • Scalabilità orizzontale o verticale (aggiunta o rimozione di nodi del pool di lettura).
    • Aumento o riduzione delle dimensioni (modifica del tipo di macchina dei nodi nel pool).
    • Conversione di una replica di lettura a livello di zona esistente in un pool di lettura.
  • Un pool di lettura riceve la manutenzione prima dell'istanza principale, in modo simile alle repliche di lettura. Come le repliche di lettura, i pool di lettura ricevono la manutenzione durante il periodo di manutenzione dell'istanza principale.
  • Ogni nodo del pool di lettura ha le stesse metriche disponibili di una replica di lettura Cloud SQL.
  • Quando utilizzi gcloud o la console Google Cloud per descrivere i dettagli di un progetto, viene elencato il nome del pool di lettura, ma non i singoli nomi dei nodi del pool di lettura.

Limitazioni

Si applicano le seguenti limitazioni:

  • I pool di lettura sono disponibili solo per le istanze della versione Cloud SQL Enterprise Plus sulla nuova architettura di rete. L'istanza principale associata a un pool di lettura deve essere anche un'istanza Cloud SQL Enterprise Plus.
  • Puoi creare un massimo di sette repliche di lettura per istanza principale. Questo valore può includere qualsiasi numero combinato di repliche di lettura e conteggio dei nodi del pool di lettura in un'istanza del pool di lettura. Ad esempio, un'istanza principale potrebbe avere due repliche di lettura e un pool di lettura separato di cinque repliche di lettura (nodi del pool di lettura).
  • La scalabilità automatica del pool di lettura non è supportata per le istanze SQL Server.
  • Advanced disaster recovery non è compatibile con i pool di lettura. Le istanze principali non possono utilizzare sia i pool di lettura sia le repliche a cascata.
  • Il traffico viene gestito dai nodi del pool di lettura in base allo stato del database, ma indipendentemente dal ritardo di replica del nodo del pool di lettura. Il traffico può essere gestito da un nodo del pool di lettura in ritardo anche se è disponibile un altro nodo del pool di lettura che non è in ritardo. Un database è considerato integro se il processo del database è attivo e può rispondere alle query, ma non è previsto alcun requisito sull'aggiornamento dei dati pubblicati.
  • Non viene fornita alcuna garanzia in merito a una singola sessione logica che si connette a più nodi del pool di lettura nel pool di lettura. È possibile che le richieste successive in una sessione si connettano a un nodo del pool di lettura con una posizione di replica inferiore rispetto al nodo del pool di lettura che ha gestito una richiesta precedente, il che può far sembrare che lo stato del database torni indietro nel tempo.
  • I seguenti tipi di aggiornamenti non sono supportati:
    • Anche se i pool di lettura continuano a ricevere gli aggiornamenti di manutenzione di Cloud SQL, non puoi aggiornare il pool di lettura o la relativa istanza principale a una nuova versione principale del database.
    • Avvio o interruzione dei nodi del pool di lettura.
  • Oltre alle operazioni non supportate sulle repliche di lettura, le seguenti operazioni non sono supportate sui pool di lettura:
  • I certificati SSL/TLS con CA condivisa o gestita dal cliente non possono essere utilizzati con un pool di lettura.
  • Un pool di lettura non può essere replicato in un'altra istanza, ad esempio una replica in cascata o un altro pool di lettura.
  • Un pool di lettura deve essere replicato direttamente da un'istanza principale. Non può essere una replica a cascata.
  • Quando crei o scali un pool di lettura, devi attendere il completamento delle operazioni precedenti di creazione, fare lo scale in o fare lo scale out associate al pool di lettura. Questa limitazione si applica a qualsiasi altro pool di lettura associato alla stessa istanza principale. Se vuoi scalare più pool di lettura associati alla stessa istanza principale, devi attendere il completamento delle operazioni di scalabilità associate al primo pool di lettura prima di iniziare a scalare il pool di lettura successivo. Se invii richieste simultanee, potresti ricevere il seguente errore: Operation failed because another operation was already in progress..
  • Solo una replica zonale che si trova nella stessa regione del nodo principale può essere convertita per l'utilizzo in un pool di lettura.
  • I nodi del pool di lettura potrebbero riscontrare livelli variabili di ritardo della replica, il che può comportare letture incoerenti. Se la tua applicazione richiede una coerenza di lettura elevata, ti consigliamo di scalare verticalmente una singola replica di lettura anziché utilizzare un pool di lettura.
  • Cloud SQL ripara automaticamente i nodi del pool di lettura nelle seguenti condizioni:
    • Quando l'istanza non è disponibile.
    • Quando la replica è interrotta.

    In questi scenari, se crei ulteriori accessi dall'istanza principale, non potrai accedere utilizzando questi accessi dopo la ricreazione del nodo del pool di lettura. Assicurati che l'accesso che utilizzi per l'endpoint di lettura sia disponibile dall'istanza principale.

  • Microsoft non supporta la replica degli oggetti server.

    Gli oggetti a livello di server che crei su una replica di lettura devono essere creati e gestiti anche sull'istanza principale. Questi oggetti non vengono replicati automaticamente.

    Questo comportamento si applica nei seguenti scenari, anche se non è un elenco esaustivo:

    • Ripristino di un pool di lettura.
    • Conversione di una replica di lettura in un pool di lettura.
      • Gli oggetti a livello di server, come gli accessi, diventano inaccessibili.
      • Se crei un accesso che esiste nella replica di lettura originale, ma non nell'istanza principale, l'accesso non viene replicato nel nuovo nodo del pool di lettura.
    • Conversione di un pool di lettura in una replica di lettura.
      • Se crei un accesso su un pool di lettura e non sull'istanza principale, e poi disattivi il pool di lettura, l'accesso non esiste più.

    Alcuni esempi di oggetti a livello di server non replicati includono:

    • Accessi.
    • Configurazione del server collegato.
    • File di controllo del database creati da SQL Server Audit.
    • Sessioni XEvents e le relative impostazioni di configurazione.

    Per saperne di più, consulta la documentazione di Microsoft.

  • Il certificato Transparent Data Encryption (TDE) è bloccato per le operazioni di importazione ed esportazione.
  • Devi sempre importare ed esportare i certificati TDE dall'istanza principale. I certificati TDE verranno replicati automaticamente in tutte le repliche di lettura nel pool di lettura, indipendentemente dal tipo di replica.
  • Le operazioni di importazione ed esportazione di TDE non sono supportate. Importa sempre il certificato TDE dall'istanza principale.

Passaggi successivi