Puoi importare ed esportare una grande quantità di dati in o da Spanner utilizzando uno dei seguenti metodi:
- Importa o esporta qualsiasi database Spanner utilizzando Dataflow.
- Esporta qualsiasi database Spanner in un bucket Cloud Storage utilizzando i formati di file Avro o CSV.
- Importa i dati da file Avro o CSV in un nuovo database Spanner.
Casi d'uso
Puoi utilizzare l'importazione e l'esportazione di Spanner per i seguenti casi d'uso:
- Caricamento collettivo: puoi importare i dati in blocco in Spanner.
Backup e archiviazione a lungo termine: puoi esportare il database in qualsiasi momento e archiviarlo in una posizione del bucket Cloud Storage a tua scelta per il backup o l'archiviazione a lungo termine. Inoltre, puoi utilizzare il recupero point-in-time per esportare un database da un timestamp passato specifico. Se cerchi tecniche di ripristino di emergenza che offrano un ripristino più rapido, ma con periodi di conservazione più brevi, valuta la possibilità di utilizzare i backup o il recupero point-in-time (PITR).
Copia di database in progetti di sviluppo o test: puoi esportare un database da un progetto di produzione e poi importarlo nel progetto di sviluppo o test per utilizzarlo per test di integrazione o altri esperimenti.
Importazione per l'analisi: puoi esportare un database per importare in blocco i dati operativi in servizi di analisi come BigQuery. BigQuery può importare automaticamente i dati in formato Avro da un bucket Cloud Storage, semplificando l'esecuzione di analisi sui dati operativi. Se vuoi utilizzare BigQuery per l'analisi in tempo reale dei dati di Spanner senza copiarli o spostarli, puoi utilizzare le query federate Spanner.
Confrontare l'importazione e l'esportazione con il backup e il ripristino
L'importazione e l'esportazione di Spanner sono simili al backup e al ripristino sotto molti aspetti. La seguente tabella descrive le somiglianze e le differenze tra i due per aiutarti a decidere quale utilizzare.
Backup e ripristino | Importazione ed esportazione | |
---|---|---|
Coerenza dei dati | Sia i backup che i database esportati sono coerenti dal punto di vista transazionale ed esterno. | |
Impatto sulle prestazioni | I backup non influiscono sul rendimento di un'istanza. Spanner esegue i backup utilizzando job dedicati che non utilizzano le risorse del server di un'istanza. | L'esportazione viene eseguita come attività a media priorità per ridurre al minimo l'impatto sul rendimento del database. Per saperne di più, consulta Priorità delle attività. |
Formato di archiviazione | Utilizza un formato proprietario criptato progettato per un ripristino rapido. | Supporta i formati file CSV e Avro. |
Portabilità | Crea i backup nella stessa istanza del database di origine. Dopo aver creato un backup, puoi copiarlo in un'istanza in un progetto o una regione diversi se hai bisogno di un backup tra regioni o tra progetti. Puoi quindi ripristinare un backup come nuovo database in qualsiasi istanza dello stesso progetto. L'istanza in cui esegui il ripristino deve avere la stessa configurazione dell'istanza in cui è archiviato il backup. |
I database esportati si trovano in Cloud Storage e i dati possono essere migrati a qualsiasi sistema che supporti CSV o Avro. |
Conservazione | I backup possono essere conservati per un massimo di un anno. | I database esportati vengono archiviati in Cloud Storage, dove vengono conservati per impostazione predefinita finché non vengono eliminati. Puoi personalizzare le policy di ciclo di vita e conservazione. |
Prezzi | I backup vengono fatturati al tuo progetto Spanner in base allo spazio di archiviazione utilizzato per unità di tempo. Per maggiori dettagli, consulta la sezione Prezzi. | La fatturazione per l'importazione e l'esportazione è più complessa a causa dell'utilizzo di Cloud Storage e Dataflow. Per ulteriori informazioni, consulta Prezzi dell'esportazione e dell'importazione di database. |
Ora di ripristino | Il ripristino avviene in due operazioni: ripristino e ottimizzazione. L'operazione di ripristino offre un rapido time-to-first-byte perché il database monta direttamente il backup senza copiare i dati. Al termine dell'operazione di ripristino, il database è pronto per l'uso, anche se la latenza di lettura potrebbe essere leggermente superiore durante l'ottimizzazione. Per saperne di più, consulta Come funziona il ripristino. | L'importazione è più lenta. Devi attendere che tutti i dati vengano scritti nel database. |
Confrontare i formati di file
La seguente tabella confronta le differenze di funzionalità tra i formati di file Avro e CSV durante l'importazione e l'esportazione dei dati di Spanner.
Capacità | Formato Avro | Formato CSV |
---|---|---|
Importare o esportare un intero database | Sì | No |
Possibilità di esportare solo le tabelle selezionate in un database | Sì | Sì |
Possibilità di importare tabelle esportate in precedenza | Sì | Sì |
Esportare a un timestamp precedente | Sì | Sì |
Importa o esporta utilizzando Google Cloud CLI | Sì | Sì |
Importare o esportare utilizzando Dataflow | Sì | Sì |
Importare o esportare utilizzando Spanner | Sì | No |
File Avro
Quando esegui l'esportazione nel formato Avro, puoi specificare un elenco di tabelle da esportare. Tutte le tabelle secondarie esportate in questo modo devono essere accompagnate dalle tabelle principali. Spanner mantiene l'intero schema del database nei file esportati.
Quando importi dal formato Avro, Spanner ricrea l'intero schema del database esportato, incluse tutte le tabelle. Le tabelle incluse nell'esportazione originale ricevono tutti i dati esportati; tutte le altre tabelle rimangono vuote.
La pagina Spanner della console Google Cloud offre opzioni di importazione ed esportazione in formato Avro limitate. Ad esempio, non puoi impostare le opzioni di rete e sottorete. Per un insieme più ampio di opzioni, utilizza Dataflow.
Limitazioni
Non puoi esportare e importare gruppi di località nel formato Avro.
File CSV
Puoi esportare una sola tabella Spanner alla volta in formato CSV. Quando esporti, lo schema non viene esportato, ma solo i dati.
Prima di importare da file CSV, devi creare un file manifest JSON.
Prezzi
Non ci sono addebiti aggiuntivi da parte di Spanner per l'utilizzo degli strumenti di esportazione o importazione; vengono addebitate le tariffe standard per l'archiviazione dei dati quando si importa un database su Spanner. Tuttavia, ci sono altri possibili addebiti associati all'importazione e all'esportazione di database. Per ulteriori informazioni, consulta Prezzi dell'esportazione e dell'importazione di database.
Passaggi successivi
- Esportare database da Spanner in Avro
- Importare file Avro Spanner
- Importare ed esportare dati in formato CSV
- Importare dati da database non Spanner