Memecahkan masalah transfer data

Halaman ini menjelaskan cara memecahkan masalah saat Anda mentransfer atau memuat data ke BigQuery. Anda dapat mengatasi error umum terkait BigQuery Data Transfer Service, koneksi jaringan di seluruh Google Cloud, Amazon Web Services (AWS), Cloud SQL, dan jaringan Virtual Private Cloud (VPC), serta tugas pemuatan data CSV dari Cloud Storage.

Memecahkan masalah konfigurasi transfer

Untuk mengetahui informasi tentang cara menyelesaikan masalah BigQuery Data Transfer Service, lihat Memecahkan masalah konfigurasi transfer.

Jika Anda menyiapkan atau menjalankan transfer dari sumber data eksternal atau partner, lihat Memecahkan masalah penyiapan transfer pihak ketiga.

Mendiagnosis tugas dengan tampilan INFORMATION_SCHEMA

Anda dapat membuat kueri tampilan INFORMATION_SCHEMA.JOBS untuk mendiagnosis tugas pemuatan yang gagal atau lambat dan mentransfer kueri secara hampir real time. Jika tugas pemuatan atau kueri transfer gagal, periksa kolom error_result dan errors untuk mengidentifikasi penyebab utama, seperti ketidakcocokan skema, batas kuota, atau error izin.

Contoh berikut mengkueri INFORMATION_SCHEMA.JOBS untuk mengambil detail error tugas pemuatan yang gagal selama 24 jam terakhir:

SELECT
  job_id,
  creation_time,
  user_email,
  error_result.reason AS error_reason,
  error_result.message AS error_message,
  errors
FROM
  `region-REGION`.INFORMATION_SCHEMA.JOBS
WHERE
  job_type = 'LOAD'
  AND state = 'DONE'
  AND error_result IS NOT NULL
  AND creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
ORDER BY
  creation_time DESC;

Ganti <var>REGION</var> dengan nama region set data, seperti us atau europe-west1.

Memecahkan masalah koneksi jaringan transfer

Saat Anda mentransfer data dari penyedia cloud eksternal atau instance database pribadi, perutean jaringan atau aturan firewall dapat memblokir konektivitas. Gunakan bagian berikut untuk memecahkan masalah lampiran VPN dan koneksi jaringan pribadi.

AWS-Google Cloud VPN dan lampiran jaringan

Jika Anda mengalami masalah saat menyiapkan lampiran jaringan, lakukan hal berikut:

  • Pastikan koneksi VPN sudah aktif dan berjalan di konsol AWS dan konsol Google Cloud .
  • Periksa log VPN untuk mengetahui error atau paket yang terputus.
  • Pastikan tabel pemilihan rute di AWS dan Google Cloud dikonfigurasi dengan benar.
  • Pastikan port yang diperlukan terbuka di grup keamanan AWS dan aturan firewall Google Cloud .

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi lampiran VPN, lihat Membuat lampiran jaringan dan VPN AWS-Google Cloud .

Akses instance Cloud SQL

Jika Anda mengalami masalah saat menyiapkan konfigurasi jaringan, lakukan hal berikut:

  • Pastikan peering VPC dibuat dan rute dikonfigurasi dengan benar.
  • Pastikan aturan firewall mengizinkan traffic di port yang diperlukan.
  • Periksa log proxy Cloud SQL untuk mengetahui error dan pastikan proxy berjalan dengan benar.
  • Pastikan network attachment dikonfigurasi dan terhubung dengan benar.

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi akses database pribadi, lihat Menghubungkan ke instance Cloud SQL.

Memecahkan masalah pemuatan file CSV

Saat Anda memuat data CSV dari Cloud Storage ke BigQuery, tugas dapat gagal karena kesalahan pemformatan, batas ukuran file, atau masalah deteksi otomatis skema. Gunakan bagian berikut untuk mengatasi error umum saat memuat CSV.

Memecahkan masalah error penguraian

Jika terjadi masalah saat mengurai file CSV, resource errors tugas pemuatan akan diisi dengan detail error.

Umumnya, error ini mengidentifikasi awal baris yang bermasalah dengan offset byte. Untuk file yang tidak dikompresi, Anda dapat menggunakan gcloud storage dengan argumen --recursive untuk mengakses baris yang relevan.

Misalnya, Anda menjalankan perintah bq load dan menerima error:

bq load
    --skip_leading_rows=1 \
    --source_format=CSV \
    mydataset.mytable \
    gs://my-bucket/mytable.csv \
    'Number:INTEGER,Name:STRING,TookOffice:STRING,LeftOffice:STRING,Party:STRING'

Error dalam output mirip dengan yang berikut ini:

Waiting on bqjob_r5268069f5f49c9bf_0000018632e903d7_1 ... (0s)
Current status: DONE
BigQuery error in load operation: Error processing job
'myproject:bqjob_r5268069f5f49c9bf_0000018632e903d7_1': Error while reading
data, error message: Error detected while parsing row starting at position: 1405.
Error: Data between close quote character (") and field separator.
File: gs://my-bucket/mytable.csv
Failure details:
- gs://my-bucket/mytable.csv: Error while reading data,
error message: Error detected while parsing row starting at
position: 1405. Error: Data between close quote character (") and
field separator. File: gs://my-bucket/mytable.csv
- Error while reading data, error message: CSV processing encountered
too many errors, giving up. Rows: 22; errors: 1; max bad: 0; error
percent: 0

Berdasarkan error sebelumnya, ada error format dalam file. Untuk melihat konten file, jalankan perintah gcloud storage cat:

gcloud storage cat 1405-1505 gs://my-bucket/mytable.csv --recursive

Outputnya mirip dengan hal berikut ini:

16,Abraham Lincoln,"March 4, 1861","April 15, "1865,Republican
18,Ulysses S. Grant,"March 4, 1869",
...

Berdasarkan output file, masalahnya adalah tanda kutip yang salah tempat dalam "April 15, "1865.

File CSV yang dikompresi

Proses debug error penguraian lebih sulit untuk file CSV yang dikompresi, karena offset byte yang dilaporkan mengacu pada lokasi dalam file yang tidak dikompresi. Perintah gcloud storage cat berikut mengalirkan file dari Cloud Storage, mendekompresi file, mengidentifikasi offset byte yang sesuai, dan mencetak baris dengan error format:

gcloud storage cat gs://my-bucket/mytable.csv.gz | gunzip - | tail -c +1406 | head -n 1

Outputnya mirip dengan hal berikut ini:

16,Abraham Lincoln,"March 4, 1861","April 15, "1865,Republican

Memecahkan masalah error kuota

Gunakan informasi di bagian ini untuk memecahkan masalah error kuota atau batas yang terkait dengan memuat file CSV ke BigQuery.

Jika memuat file CSV besar menggunakan perintah bq load dengan flag --allow_quoted_newlines, Anda mungkin mengalami error ini.

Pesan error

Input CSV files are not splittable and at least one of the files is larger than
the maximum allowed size. Size is: ...

Resolusi

Untuk mengatasi error kuota ini, lakukan tindakan berikut:

  • Tetapkan flag --allow_quoted_newlines ke false.
  • Bagi file CSV menjadi potongan-potongan kecil yang masing-masing berukuran kurang dari 4 GB.

Untuk mengetahui informasi selengkapnya tentang batas yang berlaku saat Anda memuat data ke BigQuery, lihat Memuat tugas.

Memecahkan masalah deteksi otomatis skema

Saat mendeteksi skema secara otomatis untuk file CSV, Anda mungkin mengalami error berikut:

Error: Error while reading data, error message: CSV processing encountered too many errors, giving up.

Error ini dapat terjadi saat file CSV Anda memiliki baris header dengan nilai string, dan BigQuery tidak mendeteksinya sebagai header. Anda dapat menggunakan opsi --skip_leading_rows untuk melewati baris header.