Memuat data sampel

Dokumen ini memberikan petunjuk tentang cara memuat sejumlah kecil data dalam format file CSV ke Spanner. Anda dapat memuat data sampel sebelum melakukan migrasi data produksi untuk menguji skema, kueri, dan aplikasi.

Sebelum memulai

  1. Instal Google Cloud CLI atau menggunakan Cloud Shell, yang memiliki semua alat yang diperlukan sudah terinstal di dalamnya.

  2. Untuk mendapatkan izin yang diperlukan untuk mengekspor data BigQuery ke Spanner, minta administrator untuk memberi Anda peran IAM berikut pada project Anda:

    • Mengekspor data dari tabel BigQuery: Penampil Data BigQuery (roles/bigquery.dataViewer)
    • Menjalankan tugas ekspor: Pengguna BigQuery (roles/bigquery.user)
    • Menulis data ke tabel Spanner: Pengguna Database Spanner (roles/spanner.databaseUser)

    Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

    Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui perintah peran atau setelan standar lainnya peran tertentu.

Memuat data sampel ke Spanner

Petunjuk berikut dilakukan menggunakan ETL balik BigQuery alur kerja dan Google Cloud CLI.

  1. Tetapkan project default di gcloud CLI menggunakan perintah berikut:

     gcloud config set project PROJECT_ID
  2. Ekspor data sumber dalam format file CSV. Pertimbangkan untuk menggunakan pg_dump untuk Database PostgreSQL atau mysqldump alat database MySQL untuk mengonversi data sampel ke dalam format CSV format file.

  3. Muat data ke BigQuery dengan menggunakan perintah bq berikut:

    1. Membuat set data BigQuery.

      bq mk BQ_DATASET
    2. Batch memuat data ke dalam tabel BigQuery baru.

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

      Atau, Anda dapat memuat data secara batch dari file Cloud Storage.

      bq load \
      --source_format=CSV \
      --autodetect \
      --allow_quoted_newlines \
      BQ_DATASET.BQ_TABLE gs://BUCKET/FILE
  4. Membuat skema Spanner yang cocok dengan kolom yang diimpor BQ_TABLE dengan menggunakan perintah berikut:

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

    Untuk informasi selengkapnya, lihat Memperbarui skema Spanner.

  5. Ekspor data dari BigQuery ke Spanner menggunakan perintah berikut:

       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;'
     

Langkah selanjutnya