Panoramica del partizionamento geografico

Questa pagina introduce e spiega come funziona il partizionamento geografico Spanner.

Spanner offre configurazioni di istanze regionali e multiregionali, che ti consentono di replicare i tuoi dati in diverse posizioni geografiche. Il partizionamento geografico ti consente di segmentare ulteriormente e archiviare righe nella tabella di database in diverse configurazioni di istanza.

Vantaggi e casi d'uso

I vantaggi del partizionamento geografico includono:

  • Riduce la latenza di scrittura e di lettura elevata consentendoti di archiviare i dati nella stessa posizione geografica della query.

  • Ottimizza i costi per i carichi di lavoro globali asimmetrici (ad esempio, utilizzando una partizione us-central1 con 10 nodi e una partizione asia-south1 con 2 nodi).

Di seguito sono riportati alcuni casi d'uso comuni:

  • Dati relativi agli utenti: partiziona geograficamente i dati relativi agli utenti per elaborarli e archiviarli in una regione più vicina all'utente.

  • Dati localizzati: informazioni specifiche per la località, come traffico ed eventi speciali.

Come funziona il partizionamento geografico

Tutte le istanze Spanner hanno una partizione dell'istanza principale denominata partizione default. Se non crei partizioni aggiuntive, tutti gli oggetti del database vengono archiviati nella partizione predefinita, che si trova nella stessa posizione della configurazione dell'istanza.

Se vuoi eseguire il partizionamento dei dati in un database, devi creare altre partizioni di Compute Engine nella tua istanza. Queste partizioni create dall'utente hanno le proprie (a livello di regione o più regioni) e il numero di nodi. Crea il database come faresti normalmente: con cui il database può interagire le partizioni create nella stessa istanza. Poi, creare posizionamenti nel database associati con la partizione. Infine, puoi creare tabelle di posizionamenti che hanno un attributo chiave di posizionamento. Devi utilizzare la chiave di posizionamento nelle tue istruzioni DML per specificare la partizione in cui si trovano i dati delle righe. Se crei tabelle senza posizionamento nel database, Spanner archivia questi dati nella partizione predefinita.

Per istruzioni su come utilizzare le partizioni, vedi creare e gestire le partizioni.

Considerazioni importanti

Prima di creare partizioni, posizionamenti e tavole di posizionamento, tieni presente quanto segue:

  • Posizione della partizione: seleziona con attenzione le regioni di partizione che offrono i maggiori vantaggi per la tua applicazione.

    Sebbene sia possibile creare partizioni in un'istanza con una configurazione di istanze regionali, ti consigliamo di creare partizioni in un'istanza con una configurazione di istanze multiregionali in modo che la posizione predefinita della partizione sia anche in una configurazione multiregionale.

    Inoltre, seleziona una località di partizione predefinita multiregionale che abbia regioni di lettura/scrittura e di sola lettura che coprono tutte le giurisdizioni richieste dalla tua applicazione. Poi, crea partizioni aggiuntive (che possono essere regionali) con regioni leader corrispondenti a quelle della partizione predefinita multiregionale.

  • Numero di partizioni: troppe partizioni possono comportare un overhead, mentre un numero troppo ridotto potrebbe non offrire vantaggi sufficienti. Puoi creare un massimo di dieci partizioni di Compute Engine per istanza.

Limitazioni

Durante l'anteprima si applicano le seguenti limitazioni. e sono soggetti a modifica o rimozione al momento della release GA o dopo:

  • Non puoi creare una partizione dell'istanza utilizzando una configurazione a due regioni.
  • Per ogni partizione, la capacità di calcolo deve essere almeno un nodo (1000 di elaborazione).
  • Per una determinata istanza, non puoi creare più di una partizione dell'istanza che utilizza la stessa configurazione dell'istanza di base. Ad esempio, all'interno test-instance, non puoi creare due partizioni, partition-1 e partition-2 che utilizzano entrambi us-central1 come configurazione della partizione.
  • Per ogni nodo della tua partizione, puoi posizionare un massimo di 100 milioni righe dei posizionamenti. Puoi visualizzare il numero di righe dei posizionamenti che sono state posizionate in ciascuna delle partizioni nella pagina Partizioni della console Google Cloud.
  • Per ogni nodo nella partizione dell'istanza di destinazione, Spanner può spostare circa 10 righe di posizionamento al secondo.
  • Non puoi creare partizioni nelle istanze di prova gratuita o con dimensioni granulari più piccole di un nodo (1000 unità di elaborazione).
  • Non puoi creare backup per le istanze con partizioni.
  • Non puoi utilizzare le chiavi di crittografia gestite dal cliente per le istanze con partizioni.
  • Non puoi creare partizioni di istanze in un'istanza con gestore della scalabilità automatica gestito abilitato.
  • Non puoi spostare la partizione in una configurazione dell'istanza diversa.
  • Non puoi spostare un'istanza con partizioni. Puoi spostare singole righe in partizioni diverse, quindi non è necessario spostare l'istanza.
  • L'utilizzo delle partizioni non garantisce i requisiti di conformità e normativi.
  • I stream di modifiche non supportano i dati partizionati.
  • Per utilizzare il partizionamento geografico, devi creare un nuovo database vuoto e impostare il valore Opzione opt_in_dataplacement_preview per true. Per scoprire di più, consulta Creare e gestire le partizioni.
  • Se utilizzi un'istruzione DML INSERT o DELETE per una tabella dei posizionamenti, questa deve essere l'unica istruzione nella transazione.

Controllo dell'accesso con IAM

Devi avere l'spanner.instancePartitions.create, spanner.instancePartitions.update e spanner.instancePartitions.delete autorizzazioni per creare e gestire le partizioni. Se devi solo visualizzare partizioni, devi avere l'spanner.instancePartitions.list o Autorizzazione spanner.instancePartitions.get. Per ulteriori informazioni, vedi Panoramica IAM.

Per informazioni su come concedere le autorizzazioni IAM di Spanner, consulta Applicare le autorizzazioni IAM.

Monitoraggio

Spanner fornisce diverse metriche per aiutarti a monitorare le tue partizioni. Dopo aver creato un'altra partizione, viene visualizzato un altro filtro a discesa per Partitioni nella pagina Approfondimenti di sistema della console Google Cloud. La selezione predefinita è mostrare le metriche per tutte le partizioni. Puoi utilizzare il menu a discesa per filtrare le metriche in base a uno specifico della partizione di testo.

Per saperne di più sul monitoraggio delle risorse Spanner, consulta Monitora le istanze con Cloud Monitoring.

Prezzi

Non è previsto alcun costo aggiuntivo per l'utilizzo del partizionamento geografico. Ti vengono addebitati i prezzi standard di Spanner per la quantità di capacità di calcolo utilizzata dalla tua istanza e la quantità di spazio di archiviazione utilizzata dal tuo database.

Per ulteriori informazioni, consulta i prezzi di Spanner.

Passaggi successivi