Pengantar pemecahan masalah

Dokumen ini memberikan ringkasan alat diagnostik, antarmuka telemetri, dan resource dokumentasi yang tersedia untuk membantu Anda memecahkan masalah di BigQuery.

Saat Anda mengalami kegagalan kueri, bottleneck performa, error izin, batas kuota, atau masalah penyerapan data, BigQuery menyediakan alat bawaan untuk membantu Anda mengidentifikasi penyebab utama dan menyelesaikan masalah dengan cepat.

Alur kerja pemecahan masalah

Untuk memecahkan masalah di BigQuery secara efektif, pertimbangkan kriteria diagnostik berikut:

  1. Identifikasi gejala dan mode kegagalan. Tinjau hasil tugas Anda untuk menentukan apakah masalahnya adalah kegagalan yang sulit (seperti kode error atau kegagalan tugas), penurunan performa (seperti kueri lambat atau kekurangan slot), penolakan izin, atau perbedaan biaya yang tidak terduga.
  2. Periksa detail eksekusi tugas. Gunakan Google Cloud konsol penjelajah tugas, grafik eksekusi kueri, atau alat command line untuk memeriksa waktu tingkat tahap, alokasi slot, dan detail error. Anda juga dapat meminta Gemini Cloud Assist untuk menyelidiki masalah Anda.
  3. Analisis telemetri dan metadata. Buat kueri tampilan skema informasi atau periksa Cloud Audit Logs untuk mengorelasikan perilaku tugas dengan pertentangan resource, batas reservasi, atau perubahan administratif.
  4. Terapkan mitigasi yang ditargetkan. Gunakan panduan pemecahan masalah khusus kategori atau fungsi SQL defensif untuk mengatasi penyebab yang mendasarinya.

Membedakan pemecahan masalah dari pengoptimalan

Saat Anda menggunakan BigQuery, penting untuk membedakan antara pemecahan masalah, pengoptimalan performa, dan praktik terbaik:

  • Pemecahan masalah. Berfokus pada diagnosis dan penyelesaian kegagalan yang tidak terduga, error runtime, pipeline yang rusak, kehabisan kuota, atau perilaku yang tidak diinginkan yang mencegah tugas selesai dengan sukses.
  • Pengoptimalan performa. Berfokus pada peningkatan kecepatan eksekusi, latensi, atau efisiensi resource kueri dan workload yang sudah berjalan dengan sukses. Untuk mengetahui informasi selengkapnya, lihat Mengoptimalkan performa kueri.
  • Praktik terbaik. Berfokus pada pola arsitektur dan desain untuk pemodelan data, penyimpanan, keamanan, dan pengelolaan biaya. Untuk mengetahui informasi selengkapnya, lihat Pengantar praktik terbaik.

Alat diagnostik

Bagian berikut menjelaskan beberapa antarmuka BigQuery dan alat otomatis untuk membantu Anda mendiagnosis masalah di seluruh workload.

Alat visual dan konsol

Alat berikut membantu Anda memecahkan masalah BigQuery dari Google Cloud konsol.

  • Penjelajah Tugas. Telusuri, filter, dan periksa tugas yang lalu dan yang sedang berjalan di seluruh project atau organisasi tanpa menulis kueri SQL. Anda dapat melihat pesan error, penggunaan slot, linimasa eksekusi, dan metadata tugas. Untuk mengetahui informasi selengkapnya, lihat Memantau tugas di Penjelajah Tugas.
  • Grafik eksekusi kueri. Periksa rencana eksekusi visual tahap demi tahap untuk kueri. Grafik eksekusi membantu Anda mengidentifikasi bottleneck seperti tumpahan shuffle ke disk, tahap terikat komputasi, kecondongan data, atau penundaan input/output. Untuk mengetahui informasi selengkapnya, lihat Mendapatkan insight performa kueri.
  • Query Insights dan diagram resource. Lihat grafik real-time dan historis penggunaan slot, konkurensi tugas, dan alokasi reservasi untuk mendiagnosis batasan kapasitas. Untuk mengetahui informasi selengkapnya, lihat Menggunakan diagram resource administratif.
  • Gemini Cloud Assist di BigQuery. Dapatkan analisis kontekstual yang dibantu AI untuk kueri yang gagal dan bottleneck performa. Gemini Cloud Assist menjelaskan kode error, menandai sintaksis SQL yang bermasalah, dan menyarankan langkah-langkah perbaikan langsung di Google Cloud konsol. Untuk mengetahui informasi selengkapnya, lihat Memecahkan masalah kueri menggunakan Gemini Cloud Assist.

Alat diagnostik command line dan otomatis

Alat berikut dapat membantu Anda mendiagnosis masalah BigQuery dari antarmuka command line.

  • alat command line bq. Periksa struktur error mendetail, ID permintaan, dan metadata tugas menggunakan perintah bq show -j <var>JOB_ID</var> atau dengan menambahkan flag --format=prettyjson ke perintah kueri. Untuk mengetahui informasi selengkapnya, lihat Memecahkan masalah perintah CLI.
  • Alat gcpdiag Jalankan diagnostik otomatis dari command line untuk mendeteksi masalah konfigurasi umum Google Cloud , termasuk celah izin IAM, batasan jaringan, dan error akun layanan. Untuk mengetahui informasi selengkapnya, lihat Memecahkan masalah kegagalan kueri menggunakan gcpdiag.

Tampilan metadata dan telemetri

Tampilan skema informasi memungkinkan Anda membuat kueri metadata real-time dan historis tentang tugas, kapasitas, penyerapan streaming, dan set data menggunakan SQL standar. Tampilan ini mencakup hal berikut:

Untuk mengetahui informasi selengkapnya, lihat Pengantar BigQuery INFORMATION_SCHEMA.

Cloud Monitoring dan Cloud Audit Logs

  • Cloud Audit Logs. Tinjau log audit Aktivitas Admin dan Akses Data untuk melacak siapa yang memulai operasi tertentu, memeriksa identitas pemanggil, dan mendiagnosis error PERMISSION_DENIED. Untuk mengetahui informasi selengkapnya, lihat Referensi logging audit BigQuery.
  • Cloud Monitoring. Lacak metrik seperti penggunaan slot, durasi eksekusi kueri, dan byte yang diupload, serta konfigurasi kebijakan pemberitahuan untuk memberi tahu tim Anda saat batas atau kuota terlampaui. Untuk mengetahui informasi selengkapnya, lihat Memantau BigQuery menggunakan Cloud Monitoring.

Fungsi SQL defensif dan pernyataan proses debug

Untuk mencegah kueri gagal secara tidak terduga karena error data runtime, gunakan hal berikut:

  • Ekspresi aman. Gunakan SAFE_CAST(), SAFE_DIVIDE(), SAFE_OFFSET(), dan SAFE_ORDINAL() untuk menampilkan NULL, bukan menghasilkan error runtime saat jenis data atau batas array tidak cocok. Sebagian besar fungsi skalar mendukung awalan SAFE.. Untuk mengetahui informasi selengkapnya, lihat Fungsi proses debug dan SAFE. awalan.
  • Pernyataan SQL. Gunakan pernyataan ASSERT dalam transaksi atau skrip multi-pernyataan untuk menerapkan kondisi validasi data dan gagal dengan pesan error kustom sebelum operasi hilir dieksekusi. Untuk mengetahui informasi selengkapnya, lihat Pernyataan proses debug.

Memecahkan masalah berdasarkan kategori masalah

Pilih kategori dari bagian berikut untuk melihat kode error mendetail, penyebab utama, dan panduan penyelesaian langkah demi langkah.

Performa dan eksekusi kueri

Mendiagnosis kueri yang gagal dijalankan, waktu tunggu habis, mengalami batasan resource, atau mengalami penundaan yang tidak terduga.

Identity and Access Management (IAM) dan keamanan

Mendiagnosis kegagalan kontrol akses, penetapan peran yang tidak ada, dan blokir kebijakan tata kelola data.

Kuota, batas kapasitas, dan reservasi

Mengatasi masalah saat workload melampaui batas layanan BigQuery atau alokasi kapasitas.

Penyerapan, streaming, dan transfer data

Mendiagnosis kegagalan saat memuat data, streaming rekaman, atau menyinkronkan sumber eksternal.

Sumber data eksternal dan kueri gabungan

Mendiagnosis error konektivitas, autentikasi, dan eksekusi saat membuat kueri data di luar BigQuery.

Perbedaan penagihan dan biaya

Menyelidiki tagihan yang tidak terduga dan perbedaan penagihan di seluruh komputasi dan penyimpanan.

Mitigasi kehilangan data

Untuk memulihkan data historis yang diubah atau dihapus, atau untuk mempertahankan kelangsungan bisnis selama gangguan regional, gunakan alat pemulihan dari bencana dan retensi data berikut:

  • Memulihkan data. Membuat kueri atau memulihkan data tabel yang diubah atau dihapus dalam jangka waktu perjalanan waktu Anda. Untuk mengetahui informasi selengkapnya, lihat Memulihkan data.
  • Perjalanan waktu. Mempertahankan data yang diperbarui atau dihapus dalam set data selama periode retensi data yang dikonfigurasi untuk membantu melindungi dari modifikasi yang tidak disengaja. Untuk mengetahui informasi selengkapnya, lihat Perjalanan waktu.
  • Failover regional. Mempromosikan replika sekunder ke peran utama selama gangguan regional saat menggunakan pemulihan dari bencana yang dikelola BigQuery. Untuk mengetahui informasi selengkapnya, lihat Failover regional.

Menggunakan API

Saat Anda berinteraksi dengan BigQuery secara terprogram, gunakan resource berikut untuk mengoptimalkan latensi permintaan dan mengelola alur kerja upload:

  • Tips performa API. Ikuti praktik terbaik untuk melakukan panggilan API, seperti mengelola kumpulan koneksi, menggunakan operasi batch, dan menangani percobaan ulang. Untuk mengetahui informasi selengkapnya, lihat Tips performa API.
  • Upload API. Memecahkan masalah dan mengelola penyerapan data menggunakan permintaan upload yang dapat dilanjutkan dan multipart REST API. Untuk mengetahui informasi selengkapnya, lihat Upload API.

Langkah berikutnya