我正在使用group_concat/string_agg(可能是varchar),并希望确保bigquery不会删除任何数据连接。bigquery输出中的group_concat/string_agg的最大限制是多少?
1
A
回答
3
如果特定查询的内存不足,BigQuery将不会丢弃数据;你会得到一个错误。你应该尽量保持你的行大小低于100MB,因为除此之外你会开始犯错。你可以尝试用这样一个例子创建一个大的字符串:
#standardSQL
SELECT STRING_AGG(word) AS words FROM `bigquery-public-data.samples.shakespeare`;
有164656行此表中,而这个查询(面积约为一兆字节)创建了1168286个字符的字符串。你会开始看到一个错误,如果你运行需要多一些百兆的顺序执行的单个节点上查询,但:
#standardSQL
SELECT STRING_AGG(CONCAT(word, corpus)) AS words
FROM `bigquery-public-data.samples.shakespeare`
CROSS JOIN UNNEST(GENERATE_ARRAY(1, 1000));
这将导致一个错误:
Resources exceeded during query execution.
如果您单击UI中的“说明”选项卡,则可以看到,在构建STRING_AGG
的结果时,阶段1期间发生故障。在这种情况下,该字符串的长度将是3,303,599,000个字符,或者大小约为3.3 GB。
1
添加到艾略特的答案 - 如何解决:
这个查询(长尾)失败:
#standardSQL
SELECT STRING_AGG(CONCAT(word, corpus)) AS words
FROM `bigquery-public-data.samples.shakespeare`
CROSS JOIN UNNEST(GENERATE_ARRAY(1, 1000));
但是你可以限制连接起来以获得一个有效的解决方案串的数量:
#standardSQL
SELECT STRING_AGG(CONCAT(word, corpus) LIMIT 10) AS words
FROM `bigquery-public-data.samples.shakespeare`
CROSS JOIN UNNEST(GENERATE_ARRAY(1, 1000));
相关问题
- 1. JAX-WS的SOAP响应的最大大小限制是多少?
- 2. Internet Explorer中最大文件大小上传限制是多少?
- 3. Windows Mobile 10中的最大地理围栏限制是多少?
- 4. 来自bigquery REST API的响应的最大限制是什么?
- 5. mysql int 11的最大限制是多少?
- 6. Textattribute“Tracking”的限制/最大值是多少?
- 7. sqlite中varchar数据类型的最大大小限制是多少?
- 8. mq_unlink的限制是多少?
- 9. 课堂大小限制是多少?
- 10. 安卓音频输出端通常的最大输出频率是多少?
- 11. c#中的列表<string>的最大数据限制是多少?
- 12. JavaScript中递归的限制是多少?
- 13. 表单文章中字段的大小限制是多少?
- 14. Flash Player 11中可用的舞台大小限制是多少?
- 15. WP7 Marketplace中XAP文件大小的限制是多少?
- 16. Android 2.2的每个应用程序的最大内存限制是多少?
- 17. BigQuery中的列数限制?
- 18. 限制BigQuery中的GROUP BY
- 19. TYPO3的最低权限是多少?
- 20. 最大长度是多少?
- 21. 限制haml输入的最大值
- 22. 使用Facebook Graph API时,限额的最大值是多少?
- 23. memcached中的最大密钥长度和最大值是多少?
- 24. Javascript - 受科学记数法限制的最大数量是多少?
- 25. 发送GCM消息到Android设备的每日最大限制是多少?
- 26. 堆栈大小的最大使用限制是否有限制?
- 27. textarea的实际限制是多少?
- 28. WCF超时的最大值是多少?
- 29. ListProperty的最大长度是多少?
- 30. unsigned int的最大值是多少?
有没有一种方法可以检查处理查询(任何报告或类似“解释”)时不同节点使用的数据量? – divyum
您需要等待查询完成,然后查看“解释”选项卡,因为执行策略可能随着它的运行而改变。 –
我检查了解释标签,它只给出了输入和输出行的数量,而不是节点数据统计。 – divyum