Questa pagina descrive e spiega come funziona lo spazio di archiviazione a più livelli in Spanner. Questa funzionalità è supportata sia nei database con il dialetto GoogleSQL sia nei database con il dialetto PostgreSQL.
Lo spazio di archiviazione a livelli di Spanner è una funzionalità di archiviazione completamente gestita che consente di scegliere se archiviare i dati su unità a stato solido (SSD) o unità disco rigido (HDD). Per impostazione predefinita, quando non utilizzi lo spazio di archiviazione a più livelli, i dati vengono archiviati su SSD. A seconda della frequenza con cui utilizzi o accedi ai dati, potresti prendere in considerazione l'utilizzo di un'archiviazione a più livelli e archiviare i dati sia su SSD che su HDD.
- Lo spazio di archiviazione SSD è la scelta più efficace (maggiori query al secondo) e più conveniente per la maggior parte dei casi d'uso. Dovresti utilizzarlo per archiviare dati attivi con un elevato throughput di lettura e scrittura e dati che richiedono accesso a bassa latenza.
- L'archiviazione su HDD è a volte appropriata per set di dati di grandi dimensioni che non sono sensibili alla latenza, a cui si accede di rado o se il costo dell'archiviazione è un fattore importante.
L'utilizzo dello spazio di archiviazione a più livelli ti consente di sfruttare sia lo spazio di archiviazione SSD, che supporta le elevate prestazioni dei dati attivi, sia lo spazio di archiviazione HDD, che supporta l'accesso infrequente ai dati a un costo inferiore.
Scegliere tra archiviazione SSD e HDD
Nella tabella seguente sono elencate le differenze e le somiglianze tra lo spazio di archiviazione SSD e HDD. In caso di dubbi, ti consigliamo di scegliere lo spazio di archiviazione SSD.
Archiviazione SSD | Archiviazione HDD | |
---|---|---|
Casi d'uso target | Dati che richiedono un'elevata velocità effettiva di scrittura e lettura e un accesso ai dati a bassa latenza | Set di dati di grandi dimensioni che non sono sensibili alla latenza o a cui si accede di rado |
Velocità effettiva prevista per nodo Configurazioni regionali |
Fino a 3500 QPS in scrittura Fino a 22.500 QPS in lettura |
Fino a 3500 QPS in scrittura Fino a 1500 QPS in lettura |
Velocità effettiva prevista per nodo Configurazioni a due regioni e più regioni |
Fino a 2700 QPS in scrittura Fino a 15.000 QPS in lettura |
Fino a 3500 QPS in scrittura Fino a 1000 QPS in lettura |
Operazioni supportate | Lettura, scrittura, aggiornamento ed eliminazione | Lettura, scrittura, aggiornamento ed eliminazione |
Vantaggi
Lo spazio di archiviazione a più livelli offre i seguenti vantaggi consentendoti di utilizzare sia lo spazio di archiviazione SSD sia quello HDD:
- Riduzione significativa del costo totale di proprietà: l'archiviazione su HDD offre un'opzione di costo inferiore per set di dati di grandi dimensioni che non sono sensibili alla latenza o a cui si accede raramente.
- Facilità di gestione: fornisce un servizio di definizione dei livelli completamente gestito senza la complessità di pipeline e logica di suddivisione aggiuntive.
- Esperienza unificata e coerente: fornisce accesso ai dati unificato e un singolo insieme di metriche per i dati caldi e freddi (mutabili)
- Miglioramento delle prestazioni: migliora le prestazioni delle query organizzando i dati in diversi gruppi di località, che forniscono località e isolamento dei dati nelle colonne. I dati nello stesso gruppo di località vengono archiviati fisicamente vicini.
Come funziona lo spazio di archiviazione a più livelli
Per impostazione predefinita, quando crei una nuova istanza, i dati vengono archiviati solo sullo spazio di archiviazione SSD. Analogamente, anche i dati delle istanze esistenti vengono archiviati solo su archiviazione SSD.
Se scegli di utilizzare l'archiviazione a livelli per archiviare alcuni dati nell'archiviazione su HDD, devi creare un gruppo di località, utilizzato per definire il criterio di archiviazione a livelli per i dati nello schema. Quando crei un gruppo di località, puoi definire il tipo di archiviazione, ssd
o
hdd
. Se vuoi, puoi anche definire il periodo di tempo per cui i dati vengono archiviati sullo spazio di archiviazione SSD prima di essere spostati nello spazio di archiviazione HDD. Una volta trascorso il tempo specificato,
Spanner esegue la migrazione dei dati allo spazio di archiviazione HDD durante il suo normale
ciclo di compattazione, che in genere si verifica nel corso di sette giorni dal
momento specificato. Questo è noto come criterio di archiviazione a più livelli basato sull'età. Quando utilizzi un criterio di archiviazione a più livelli in base alla data di creazione, il periodo di tempo minimo durante il quale i dati devono essere archiviati in SSD prima di essere spostati nell'archiviazione su HDD è di un'ora.
Una volta definiti i gruppi di località, quando crei le tabelle puoi impostare il criterio di archiviazione a più livelli a livello di database, tabella, colonna o indice secondario. Il criterio di archiviazione a più livelli determina come e dove vengono archiviati i dati. Per le istruzioni, vedi Creare e gestire i gruppi di località.
Backup e ripristino
Puoi eseguire il backup e il ripristino dei dati utilizzando i backup di Spanner.
Il backup contiene tutte le informazioni dello schema di archiviazione, tra cui
INFORMATION_SCHEMA.LOCALITY_GROUP_OPTIONS
, che
specifica il tipo di archiviazione di ciascun gruppo di località. Per ripristinare un backup che contiene gruppi di località in una nuova istanza, l'istanza di destinazione deve essere nella versione Spanner Enterprise o Spanner Enterprise Plus.
Data Boost
Puoi utilizzare Spanner Data Boost per accedere ai dati su unità di archiviazione SSD o HDD. L'esecuzione di query sui dati su archiviazione HDD comporta un costo più elevato a causa dell'aumento delle operazioni di I/O. Per ulteriori informazioni, consulta la sezione Prezzi.
Indici di ricerca
La ricerca a testo intero e gli indici vettoriali ereditano il gruppo di località impostato sull'oggetto database.
Osservabilità
Per lo spazio di archiviazione a più livelli sono disponibili le seguenti funzionalità di osservabilità.
Metriche di Cloud Monitoring
Spanner fornisce le seguenti metriche per aiutarti a monitorare l'utilizzo e i dati dello spazio di archiviazione a più livelli utilizzando Cloud Monitoring:
spanner.googleapis.com/instance/storage/used_bytes
(Spazio di archiviazione totale): mostra i byte totali di dati archiviati su unità SSD e HDD. Nella pagina Approfondimenti sul sistema della console Google Cloud relativa a database e istanze Spanner, è presente un menu a discesa per Tipo di archiviazione per questa metrica. Utilizza il menu a discesa per mostrare i byte totali di dati archiviati su Tutti, solo su HDD o solo su SSD.spanner.googleapis.com/instance/storage/combined/limit_bytes
: mostra il limite di archiviazione combinato di SSD e HDD.spanner.googleapis.com/instance/storage/combined/limit_bytes_per_processing_unit
: mostra il limite di archiviazione combinato di SSD e HDD per ogni unità di elaborazione.spanner.googleapis.com/instance/storage/combined/utilization
: mostra l'utilizzo dello spazio di archiviazione combinato di SSD e HDD rispetto al limite di archiviazione combinato.spanner.googleapis.com/instance/disk_load
: mostra l'utilizzo dell'HDD in percentuale. Se l'istanza raggiunge il 100% di utilizzo del disco, la latenza aumenta notevolmente.
Se hai query esistenti che filtrano le metriche esistenti in base a
storage_class:ssd
, devi rimuovere il filtro per visualizzare l'utilizzo dell'HDD.
Per scoprire di più sul monitoraggio delle risorse Spanner, consulta Monitora le istanze con gli approfondimenti del sistema e Monitora le istanze con Cloud Monitoring.
Schema di informazioni
INFORMATION_SCHEMA.LOCALITY_GROUP_OPTIONS
contiene l'elenco dei gruppi di località
e delle opzioni nel database Spanner. Include informazioni per il gruppo di località default
. Per ulteriori informazioni, consulta
locality_group_options
per i database con dialetto Google SQL
e locality_group_options
per i database con dialetto PostgreSQL.
Tabelle di statistiche integrate
Per i database che utilizzano lo archiviazione a più livelli sono disponibili le seguenti tabelle di statistiche integrate:
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
: mostra l'utilizzo dello spazio di archiviazione HDD e SSD per ogni tabella del database.SPANNER_SYS.TABLE_SIZES_STATS_PER_LOCALITY_GROUP_1HOUR
: mostra l'utilizzo dello spazio di archiviazione HDD e SSD per ogni gruppo di località nel database.
Per ulteriori informazioni, consulta Statistiche sulle dimensioni delle tabelle e Statistiche sulle query.
Prezzi
Non sono previsti costi aggiuntivi per l'utilizzo dello spazio di archiviazione a più livelli. 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. I dati archiviati su unità SSD e HDD vengono fatturati alle rispettive tariffe di archiviazione. Non ti viene addebitato alcun costo per lo spostamento dei dati tra lo spazio di archiviazione SSD e HDD. Per ulteriori informazioni, consulta la pagina Prezzi di Spanner.
Passaggi successivi
- Scopri di più sui gruppi di località.
- Scopri come creare e gestire i gruppi di località.
- Scopri di più sull'ottimizzazione delle query con il pushdown dei predicati timestamp.