from google.cloud import bigquery as bq
import google_auth_oauthlib.flow
query = '''select ... from ...'''
bigquery_client = bq.Client()
table = bq.query.QueryResults(query=query,client=bigquery_client)
table.use_legacy_sql = False
table.run()
# transfer bigquery data to pandas dataframe
columns=[field.name for field in table.schema]
rows = table.fetch_data()
data = []
for row in rows:
data.append(row)
df = pd.DataFrame(data=data[0],columns=columns)
我想加载超过1000万行到python,它在几个星期前工作正常,但现在它只返回100,000行。任何人都知道可靠的方法来做到这一点?从bigquery向python载入大量数据
我也尝试了async_query.py,并使用rows = query_job.results()。fetch_data(max_results = 1000000)。但似乎他们在某处放置了100,000上限。有没有办法覆盖上限?或更有效的方式来执行python计算bigquery。 – vortex
只是想知道,你有没有在你的WebUI或CLI中运行这个查询来查看它是否返回你期望的总行数? –
我已经在我的CLI中运行了,行数只有100,000。所以截断可以在table.run()或table.fetch_data()。 – vortex