Sebuah kueri dapat selesai dengan sukses dan tetap gagal saat mengunduh hasilnya ke pandas. Pustaka BigQuery Python dapat memakai klien BigQuery Storage API terpisah untuk pengunduhan itu.

Antarmuka RowIterator.to_dataframe mendokumentasikan create_bqstorage_client, yang secara bawaan bernilai true, dan argumen bqstorage_client. Bacalah pengaturan itu bersama dependensi yang ada di aplikasi. Keberhasilan pada jalur kueri biasa tidak membuktikan bahwa transport pengunduhan opsional memiliki dukungan atau konfigurasi proxy yang sama.

TahapApa yang perlu diperiksa
Perolehan kredensialTransport kredensial dan endpoint identitas
Mengirim dan memantau kueriJalur permintaan klien BigQuery
Mengunduh melalui Storage APIKlien Storage API dan transportnya

Untuk perbandingan terkendali, opsi terdokumentasi create_bqstorage_client=False menghindari pembuatan klien tambahan itu secara otomatis. Itu dapat membantu mengenali jalur mana yang gagal. Ini pilihan transport dengan implikasi kinerja, bukan bukti bahwa proxy itu sendiri telah diperbaiki.

Jika aplikasi menyediakan klien Storage API sendiri, konfigurasikan klien itu secara sengaja. Jangan mengasumsikan objek HTTP khusus yang terpasang pada klien lain akan mengonfigurasinya ulang.

Contoh lama membahas implementasi httplib2 yang usang atau kait konstruktor privat. Sesuaikan integrasi dengan generasi pustaka yang terpasang, dan pertahankan tahap kegagalan dalam laporan. Kesalahan konversi DataFrame dan koneksi jaringan yang ditolak adalah hasil berbeda meskipun terjadi pada pemanggilan metode yang sama.

Artikel terkait