gpt4 book ai didi

python-2.7 - 在 python 中从大型 BigQuery 表中获取数据

转载 作者:行者123 更新时间:2023-12-04 17:54:13 26 4
gpt4 key购买 nike

我有一个 BigQuery 表(> 500 万行)。

我需要批量获取这些数据并在 AppEngine、python 中对其进行处理。

从我知道的表中获取的唯一方法是在该表上运行 SELECT 查询,然后使用 token fetch_data 返回迭代结果。

它看起来像这样:

query = u"""\
SELECT url FROM %s
""" % (query_table)

query_job = client.run_async_query(str(uuid.uuid4()), query)

query_job.begin()

wait_for_job(query_job, 1)

query_results = query_job.results()

rows, total_rows, next_token = query_results.fetch_data(max_results=per_page, page_token=page_token)

这适用于较小的表,但对于像我这样的较大表,它要求允许大请求并指定目标表。但这对我来说毫无意义。为了简单地从一个表中获取数据,我必须将它复制到另一个表中吗?

最佳答案

您遇到的情况在 this documentation 中有描述.总而言之,除了一次可以获取多少数据的限制之外,还有一点是您的结果会变成“大结果”。这是当您的结果被压缩超过 128MB 时,如 here 所述.当您的结果被归类为大时,您只能将查询结果存储在 Big Query 的表中。

不幸的是,我不确定是否有一种很好的方法可以在不减少一次检索的行数的情况下执行您想要的操作。您可能需要做的是探索 exporting data documentation对于大查询。

关于python-2.7 - 在 python 中从大型 BigQuery 表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41743709/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com