Ένα ερώτημα μπορεί να ολοκληρωθεί με επιτυχία και παρ' όλα αυτά να αποτύχει κατά τη λήψη του αποτελέσματός του στο pandas. Η βιβλιοθήκη BigQuery Python μπορεί να χρησιμοποιήσει ξεχωριστό πελάτη BigQuery Storage API για αυτή τη λήψη.

Η διεπαφή RowIterator.to_dataframe τεκμηριώνει το create_bqstorage_client, που από προεπιλογή είναι true, και ένα όρισμα bqstorage_client. Διαβάστε αυτές τις ρυθμίσεις μαζί με τις εξαρτήσεις που υπάρχουν στην εφαρμογή. Η επιτυχία στη συνηθισμένη διαδρομή ερωτήματος δεν αποδεικνύει ότι το προαιρετικό κανάλι λήψης έχει την ίδια υποστήριξη ή διαμόρφωση proxy.

ΣτάδιοΤι πρέπει να ελεγχθεί
Απόκτηση διαπιστευτηρίωνΤο κανάλι μεταφοράς διαπιστευτηρίων και το τελικό σημείο ταυτότητας
Υποβολή και ερώτηση κατάστασης ερωτήματοςΗ διαδρομή αιτήματος του πελάτη BigQuery
Λήψη μέσω Storage APIΟ πελάτης Storage API και το κανάλι μεταφοράς του

Για ελεγχόμενη σύγκριση, η τεκμηριωμένη επιλογή create_bqstorage_client=False αποφεύγει την αυτόματη δημιουργία αυτού του πρόσθετου πελάτη. Αυτό μπορεί να βοηθήσει στον εντοπισμό της διαδρομής που αποτυγχάνει. Είναι επιλογή καναλιού μεταφοράς με επιπτώσεις στην απόδοση, όχι απόδειξη ότι ο ίδιος ο proxy επισκευάστηκε.

Αν η εφαρμογή παρέχει τον δικό της πελάτη Storage API, διαμορφώστε αυτόν τον πελάτη σκόπιμα. Μην υποθέσετε ότι ένα προσαρμοσμένο αντικείμενο HTTP που είναι συνδεδεμένο σε άλλον πελάτη θα τον επαναδιαμορφώσει.

Παλαιότερα παραδείγματα συζητούν παρωχημένες υλοποιήσεις httplib2 ή ιδιωτικά άγκιστρα κατασκευαστή. Αντιστοιχίστε την ενσωμάτωση με τη γενιά βιβλιοθήκης που είναι εγκατεστημένη και διατηρήστε το στάδιο αποτυχίας στην αναφορά. Ένα σφάλμα μετατροπής σε DataFrame και μια απορριφθείσα σύνδεση δικτύου είναι διαφορετικά αποτελέσματα ακόμη και όταν συμβαίνουν στην ίδια κλήση μεθόδου.

Σχετικά άρθρα