Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google bigquery 每个查询组按分解_Google Bigquery - Fatal编程技术网

Google bigquery 每个查询组按分解

Google bigquery 每个查询组按分解,google-bigquery,Google Bigquery,我正在128GB表上运行以下查询,表中有2.2亿行: select id, count(*) as cnt from logs.nobids_05 group each by 1 having cnt > 1 limit 10; 它失败,出现“查询执行期间超出资源”错误 此表中的id应该是唯一的,我想检查是否确实如此 有没有办法运行此查询 我知道后面的算法可能会生成一个临时哈希表,其大小与原始表相似。bigquery(dremel)是否仍然对每个查询可以创建的临时数据量有限制 您

我正在128GB表上运行以下查询,表中有2.2亿行:

select id, count(*) as cnt 
from logs.nobids_05 
group each by 1 
having cnt > 1 
limit 10;
它失败,出现“查询执行期间超出资源”错误

此表中的id应该是唯一的,我想检查是否确实如此

有没有办法运行此查询

我知道后面的算法可能会生成一个临时哈希表,其大小与原始表相似。bigquery(dremel)是否仍然对每个查询可以创建的临时数据量有限制


您对解决办法有什么建议吗?

现在已经解决了。您不应再看到此查询超出了资源,许多其他查询也不应再遇到此问题。如果仍然存在问题,请ping线程

背景:

使用GROUPBY时,BigQuery会猜测GROUPBY操作中涉及的数据大小(从技术上讲,它关心键的基数)。有时这很容易,有时则不然


为此设置的配置阈值太小;也就是说,对于一个给定的查询,我们没有为它提供足够的资源,以使GROUPBY操作能够成功

不幸的是,添加目标表和设置allow_large_结果没有帮助。通过运行“SELECT count(distinct id)-count(id)FROM..”查询,我成功地验证了我们是否只有不同的值。它返回了大的非零值,所以我仍然需要原始查询,以便调试重复。各位,您是否考虑过为MapReduce公开一个最小的接口?即使是某种python接口,映射器接收protobuf对象(根据GC模式)并将reducer输出到GCS,也会非常有用。我们已经推出了一个修复程序,请重试。顺便说一句,BigQuery为Hadoop和其他客户端提供了一个连接器,可以从数据的分片访问中获益: