query ອາດຈະສຳເລັດ ແຕ່ຍັງລົ້ມເຫຼວໄດ້ເມື່ອດາວໂຫຼດຜົນລັບເຂົ້າ pandas. ຫ້ອງສະໝຸດ BigQuery Python ສາມາດໃຊ້ client ຂອງ BigQuery Storage API ແຍກຕ່າງຫາກສຳລັບການດາວໂຫຼດນັ້ນ.

interface RowIterator.to_dataframe ອະທິບາຍ create_bqstorage_client ເຊິ່ງຄ່າເລີ່ມຕົ້ນແມ່ນ true, ແລະ argument bqstorage_client. ອ່ານການຕັ້ງຄ່າເຫຼົ່ານັ້ນຄຽງກັບ dependencies ທີ່ມີຢູ່ໃນແອັບພລິເຄຊັນ. ຄວາມສຳເລັດໃນເສັ້ນທາງ query ປົກກະຕິບໍ່ໄດ້ພິສູດວ່າເສັ້ນທາງການດາວໂຫຼດທາງເລືອກມີການສະໜັບສະໜູນ proxy ຫຼືການຕັ້ງຄ່າແບບດຽວກັນ.

ຂັ້ນຕອນສິ່ງທີ່ຕ້ອງກວດ
ການໄດ້ມາເຊິ່ງ credentialການຂົນສົ່ງ credential ແລະ endpoint ຂອງ identity
ການສົ່ງ ແລະ ການ poll queryເສັ້ນທາງ request ຂອງ client BigQuery
ການດາວໂຫຼດຜ່ານ Storage APIclient ຂອງ Storage API ແລະ ການຂົນສົ່ງຂອງມັນ

ສຳລັບການປຽບທຽບແບບຄວບຄຸມ, ຕົວເລືອກ create_bqstorage_client=False ທີ່ມີເອກະສານກ່າວເຖິງ ຫຼີກລ້ຽງການສ້າງ client ເພີ່ມເຕີມນັ້ນໂດຍອັດຕະໂນມັດ. ສິ່ງນີ້ຊ່ວຍລະບຸວ່າເສັ້ນທາງໃດລົ້ມເຫຼວ. ມັນເປັນການເລືອກການຂົນສົ່ງທີ່ມີຜົນກະທົບຕໍ່ປະສິດທິພາບ, ບໍ່ແມ່ນຫຼັກຖານວ່າ proxy ເອງໄດ້ຮັບການແກ້ໄຂ.

ຖ້າແອັບພລິເຄຊັນສະໜອງ client ຂອງ Storage API ຂອງຕົນເອງ, ຕັ້ງຄ່າ client ນັ້ນຢ່າງຕັ້ງໃຈ. ຢ່າສົມມຸດວ່າວັດຖຸ HTTP ທີ່ກຳນົດເອງທີ່ຕິດກັບ client ອື່ນຈະຕັ້ງຄ່າມັນຄືນໃໝ່.

ຕົວຢ່າງເກົ່າກ່າວເຖິງການຈັດຕັ້ງ httplib2 ທີ່ລ້າສະໄໝ ຫຼື hooks ຂອງ constructor ແບບ private. ຈັບຄູ່ການເຊື່ອມຕໍ່ກັບລຸ້ນຂອງຫ້ອງສະໝຸດທີ່ຕິດຕັ້ງໄວ້, ແລະ ຮັກສາຂັ້ນຕອນທີ່ລົ້ມເຫຼວໄວ້ໃນລາຍງານ. ຂໍ້ຜິດພາດໃນການແປງເປັນ DataFrame ແລະ ການເຊື່ອມຕໍ່ເຄືອຂ່າຍທີ່ຖືກປະຕິເສດ ແມ່ນຜົນໄດ້ຮັບທີ່ແຕກຕ່າງກັນ ເຖິງແມ່ນວ່າຈະເກີດຂຶ້ນໃນການເອີ້ນ method ດຽວກັນ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ