Python 如何将dryRun参数发送到pandas.read_gbq函数

Python 如何将dryRun参数发送到pandas.read_gbq函数,python,pandas,google-bigquery,Python,Pandas,Google Bigquery,在运行bigquery加载到pandas dataframe之前,我想从bigquery获得查询大小的估计值。 如何在函数中使用参数?据我所知,您确实无法这样做 如果检查pandas的工作方式,您将看到它只更新作业的查询设置 dryRun在查询定义之外,实际上处于同一级别 我不知道为什么会这样,也许熊猫gbq的创作者不想让熊猫直接取代你在BQ中可以运行的所有类型的工作。尽管如此,我已经在他们的存储库中开始了这项工作,您可以按照它查看他们在这项工作中的输入 作为一种可能的解决方法,我建议使用官方的

在运行bigquery加载到pandas dataframe之前,我想从bigquery获得查询大小的估计值。
如何在函数中使用参数?

据我所知,您确实无法这样做

如果检查pandas的工作方式,您将看到它只更新作业的查询设置

dryRun在查询定义之外,实际上处于同一级别

我不知道为什么会这样,也许熊猫gbq的创作者不想让熊猫直接取代你在BQ中可以运行的所有类型的工作。尽管如此,我已经在他们的存储库中开始了这项工作,您可以按照它查看他们在这项工作中的输入

作为一种可能的解决方法,我建议使用官方的python API与GCP进行交互,具体来说,您可以使用BigQuery客户端。安装它应该很容易:

pip install --upgrade google-cloud-bigquery
然后你可以跑:

from google.cloud.bigquery import Client
import os
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'path/to/your/key.json'

query = """your query"""
bc = Client()

job = client.run_sync_query(query)
job.use_legacy_sql = False
job.dryRun = True

job.run()

print(job.total_bytes_processed)

当运行df=gbq.read\u gbqquery,private\u key=cred,project\u id=project,dialent='standard',kwargs={'dryRun':True}时,如果为**kwargs传递{'dryRun':True}会发生什么情况?gbq.read\u gbqquery,private\u key=cred,project\u id=project,dialent='standard',“干跑”:True@FelipeHoffa假设你的意思是dryRun=True,我还是能得到数据谢谢@willian fuks!