Carica i dati di esempio

Questo documento fornisce istruzioni su come caricare una piccola quantità di dati in formato file CSV in Spanner. Puoi caricare dati di esempio prima di eseguire una migrazione dei dati di produzione per testare schemi, query e applicazioni.

Prima di iniziare

  1. Installa Google Cloud CLI o utilizza Cloud Shell, che ha tutti gli strumenti necessari preinstallati.

  2. Per ottenere le autorizzazioni necessarie per esportare i dati di BigQuery in Spanner, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:

    • Esporta i dati da una tabella BigQuery: Visualizzatore dati BigQuery (roles/bigquery.dataViewer)
    • Esegui un job di esportazione: Utente BigQuery (roles/bigquery.user)
    • Scrivi i dati in una tabella Spanner: Utente database Spanner (roles/spanner.databaseUser)

    Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

    Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Carica i dati di esempio in Spanner

Le seguenti istruzioni vengono eseguite utilizzando il flusso di lavoro di ETL inverso BigQuery e Google Cloud CLI.

  1. Imposta un progetto predefinito su gcloud CLI utilizzando il seguente comando:

     gcloud config set project PROJECT_ID
  2. Esporta i dati di origine nel formato file CSV. Valuta la possibilità di utilizzare pg_dump per i database PostgreSQL o mysqldump per gli strumenti dei database MySQL per convertire i dati di esempio nel formato file CSV.

  3. Carica i dati in BigQuery utilizzando i seguenti comandi bq:

    1. Creare un set di dati BigQuery.

      bq mk BQ_DATASET
    2. Carica i dati in batch in una nuova tabella BigQuery.

      bq load \
      --source_format=CSV \
      --autodetect \
      --allow_quoted_newlines \
      BQ_DATASET.BQ_TABLE /path/to/file

      In alternativa, puoi caricare i dati in blocco da un file Cloud Storage.

      bq load \
      --source_format=CSV \
      --autodetect \
      --allow_quoted_newlines \
      BQ_DATASET.BQ_TABLE gs://BUCKET/FILE
  4. Crea uno schema Spanner corrispondente a BQ_TABLE importato utilizzando il seguente comando:

     gcloud spanner databases ddl update SPANNER_DATABASE \
     --instance=SPANNER_INSTANCE \
     --ddl="CREATE TABLE SPANNER_TABLE ..."

    Per ulteriori informazioni, consulta la sezione Aggiornare lo schema di Spanner.

  5. Esporta i dati da BigQuery a Spanner utilizzando il seguente comando:

       bq --use_legacy_sql=false 'EXPORT DATA OPTIONS(
         uri="https://spanner.googleapis.com/projects/PROJECT_ID/instances/SPANNER_INSTANCE/databases/SPANNER_DATABASE"
         format='CLOUD_SPANNER'
         spanner_options="""{ "table": "SPANNER_TABLE" }"""
         ) AS
         SELECT *
         FROM BQ_DATASET.BQ_TABLE;'
     

Passaggi successivi