首页 > 解决方案 > 无法返回超出 API 限制的行

问题描述

当我从 BigQuery UI 运行查询或在 Dataflow 中使用它时,我遇到了以下错误。该表有很多列,一些是记录、普通字符串、整数和嵌套列。三列是我在其中存储 JSON 数据的字符串。最初,如错误所示,我认为是因为某些行大小超过了 BigQuery 最大限制,所以我尝试检查 3 个 JSON 列,发现一行列的字节长度为 4599,其余的都在 3000 左右。我尝试仅选择该行(大行)并将其插入另一个表中,但该行没有给出任何问题并从查询中正确选择,所以这证明我的理论是错误的,这是因为行大小,否则单行会有也给出了那个错误。

我从查询的整体结果中排除了该行并运行了查询,所以一切都工作了一段时间,但后来相同的查询再次给出了行超出限制错误。

我想知道为什么会出现这个错误以及我如何每次都重现它。它是否与 BigQuery 的整体使用有关,因为每当出现此错误时,BigQuery 都忙于处理繁重的负载。

我什至将结果导出到另一个表中,但是如果我查询该表,那么我也会收到此错误。

错误:-

failed to establish a connection due to 400 GET https://www.googleapis.com/bigquery/v2/projects/******: API limit exceeded: Unable to return a row that exceeds the API limits. To retrieve the row, export the table.

如果有人知道,请提供帮助。

标签: google-cloud-platformgoogle-bigquery

解决方案


推荐阅读