Google bigquery BigQuery结果响应太大

Google bigquery BigQuery结果响应太大,google-bigquery,Google Bigquery,我尝试使用python api在表中列出数据: tableDataList = tableDataCollection.list(**params).execute(http=http) 允许的参数: list(projectId=*, datasetId=*, tableId=*, pageToken=None, maxResults=None, startIndex=None) 我收到的错误是: apiclient.errors.HttpError: <HttpError 40

我尝试使用python api在表中列出数据:

tableDataList = tableDataCollection.list(**params).execute(http=http)
允许的参数:

 list(projectId=*, datasetId=*, tableId=*, pageToken=None, maxResults=None, startIndex=None) 
我收到的错误是:

apiclient.errors.HttpError: <HttpError 403 when requesting https://www.googleapis.com/bigquery/v2/projects/myproject/queries?alt=json returned "Response too large to return.">
但是,我仍然收到相同的错误:

响应极化:响应太大,无法返回


从错误消息来看,查询失败,而不是表数据列表调用

allowLargeResults允许查询生成任意大的输出结果。您可以在此处了解更多信息:您可以在configuration.query.allowLargeResults中进行设置。90MB的结果不需要它,但大于128MB的结果需要它。也许你的结果比你预期的要大?。您还需要为allowLargeResults设置一个显式的目标表


查询完成后,应该可以按照您所描述的那样列出结果。如果您仍然有问题,如果您提供您的工作id,我们可以查看个人详细信息。

如果我删除查询中的排序,似乎可以:

query = """
    SELECT *
    FROM [mydataset.{0}]
    WHERE delta > {1}
    --ORDER BY delta ASC
""".format(TABLE_ID, int(delta))

嗯,这很奇怪。。。BigQuery不够大?

显式目标
mmm。。。我会调查的,谢谢你的提示。@JordanTigani这里发生了什么事?如果你写信给一张桌子,订单就没有意义了。如果order by在子查询中,请共享您的查询,我们将尝试帮助您优化。@N.N.有趣的是,至少我认为这不会影响我的增量使用。谢谢。您对分类数据的具体要求是什么?如果您只对前N个结果感兴趣,那么应该有一个限制,允许您的查询在执行时不会出现结果太大的异常。
query = """
    SELECT *
    FROM [mydataset.{0}]
    WHERE delta > {1}
    --ORDER BY delta ASC
""".format(TABLE_ID, int(delta))