查询可以成功完成,但在把结果下载到 pandas 时仍然失败。BigQuery Python 库可能为该下载使用一个独立的 BigQuery Storage API 客户端。

RowIterator.to_dataframe 接口记录了 create_bqstorage_client(默认值为 true)以及 bqstorage_client 参数。请把这些设置与应用中实际存在的依赖一起阅读。普通查询路径上的成功,并不能证明可选的下载传输具有相同的代理支持或配置。

阶段需要检查什么
获取凭据凭据的传输方式与身份端点
提交查询并轮询BigQuery 客户端的请求路径
通过 Storage API 下载Storage API 客户端及其传输方式

为了进行受控对比,文档中记录的 create_bqstorage_client=False 选项可避免自动创建那个额外客户端。这有助于判断是哪条路径失败。这是一种带有性能影响的传输选择,而不是代理本身已被修复的证据。

如果应用自行提供 Storage API 客户端,请有意识地配置该客户端。不要以为挂在另一个客户端上的自定义 HTTP 对象会重新配置它。

较早的示例讨论已过时的 httplib2 实现或私有构造函数钩子。请让集成方式与已安装库的版本相匹配,并在报告中保留失败阶段。DataFrame 转换错误与被拒绝的网络连接是不同的结果,即使它们发生在同一次方法调用中。

相关文章