Google BigQuery 无法处理更大的结果集,出现“响应太大而无法返回”或“查询执行期间资源超出”

2023-12-04

我目前正在 C# 应用程序中处理大型表(~105M 记录)。

  1. 当使用“Order by”或“Order Each by”子句查询表时,我收到“查询执行期间超出资源”错误。

  2. 如果我删除“Order by”或“Order Each by”子句,那么我会得到响应太大而无法返回错误。

这是两个场景的示例查询(我正在使用维基百科公共表)

  1. SELECT Id,Title,Count(*) FROM [publicdata:samples.wikipedia] 按 Id 对 EACH 进行分组,标题按 Id 排序,标题描述

  2. SELECT Id,Title,Count(*) FROM [publicdata:samples.wikipedia] 按 Id、标题对 EACH 进行分组

这是我的问题

  1. Big Query 响应的最大大小是多少?
  2. 我们如何选择查询请求中而不是“导出方法”中的所有记录?

1. Big Query Response 的最大大小是多少?

正如上面提到的配额政策查询最大响应大小:10 GB 压缩(返回大型查询结果时无限制)

2. 如何选择查询请求中而不是“导出方法”中的所有记录?

如果您计划运行可能返回更大结果的查询,您可以设置allowLargeResults真实地在你的作业配置.

返回大结果的查询将需要更长的时间来执行,即使结果集很小,并且会受到额外的限制:

  • 您必须指定目标表。
  • 您不能指定顶级 ORDER BY、TOP 或 LIMIT 子句。这样做会抵消使用allowLargeResults 的好处,因为无法再并行计算查询输出。
  • 仅当与 PARTITION BY 子句结合使用时,窗口函数才能返回大型查询结果。

详细了解如何分页以获得结果here并还从BigQuery 分析书籍,从第 200 页开始的页面,其中解释了如何乔布斯::getQueryResults正在与maxResults参数和int的阻塞模式。

Update:

查询结果大小限制 - 有时,很难知道 10 GB 的压缩内容是什么 数据手段。

当您在 BigQuery 中运行普通查询时,响应大小限制为 10 GB 的压缩数据。有时,很难知道 10 GB 的压缩内容是什么 数据手段。它被压缩了 2 倍吗? 10 倍?结果被压缩在 它们各自的列,这意味着压缩比往往非常高 好的。例如,如果您有一列是国家/地区名称,则 可能只有几个不同的值。当你只有几个不同的 值,这意味着没有很多独特的信息,并且该列 通常会压缩得很好。如果您返回加密的数据块,它们将 可能无法很好地压缩,因为它们大多是随机的。 (上面链接的书第 220 页对此进行了解释)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google BigQuery 无法处理更大的结果集,出现“响应太大而无法返回”或“查询执行期间资源超出” 的相关文章

随机推荐

  • 卷曲 cookie 处理

    是否有可能使用 cURL 时 并非每个用户都使用相同的 cookie 因为我存储得到的 cookie 很酷 但是这个 cookie 会被每个人使用 而且应该如此 因为它是一个登录 cookie Charlie 这是 cookie 工作原理的
  • 语法错误:当前未启用对实验性语法“jsx”的支持

    我无法使用我创建的 npm 组件包 我已经成功发布了该包 但是当我在新代码中使用它时 它显示此错误 SyntaxError home trinendra Desktop react test node modules iconbox1 in
  • SSIS:创建具有不同行格式的平面文件

    我想创建一个平面文件输出 其中行的格式不同 文件有标题行 中间数据行 页脚行 文件如下所示 H deptcode123 deptNameXYZ totalemp300 E Sam Johnson address1 empCode1 many
  • window.open() 中的 name 参数是什么

    请有人告诉我这个窗口的名称是什么window open 是标题名称还是java脚本语言中的某个ID windowName 为新窗口指定的名称 该名称可用于再次引用该窗口 打开窗口后 您会想用它做各种各样的事情 例如移动它然后你就可以做
  • 如何使用面板上的图形类绘制多色文本?

    我想在面板上绘制以下文本 这是一个多颜色的文本 我找到了这个article关于绘制彩色文本 我用单词替换了字符 但它不起作用 我使用FillPath DrawPath来绘制文本 my code private void Form1 Pain
  • 将递归Python代码转换为非递归版本

    除非我们开始增加 unique 和 n symbols 和长度 否则此处提供的代码将有效 例如 在我的计算机上 n symbols 512 length 512 distinct 300 最终会出现此错误RecursionError 比较中
  • Windows批处理文件将X个文件从一个文件夹移动到另一个文件夹

    如果文件少于 20 个 我尝试使用批处理文件以 30 个块为单位移动文件 DataLoc 我修改了代码一个先前的问题 问题在于FMove文件的部分 无论我在里面放什么for线 它给了我一个错误 我希望这个有 HoldLoc 值 但由于我遇到
  • Javascript 对象和 JSON 对象有什么区别

    谁能用一个例子告诉我 Javascript 对象和 JSON 对象之间的区别 JavaScriptobject是 Javascript 中的一种数据类型 仅在 Javascript 中才有意义 你经常会看到 Javascript对象字面量像
  • 即使在postgres中使用listen_addresses ='*',远程登录也不起作用

    我想使用远程主机登录 postgres 我已经使用listen addresses 配置了postgresql conf文件 我已经配置了 pg hba conf 文件 host all all 0 0 0 0 0 md5 但我仍然无法登录
  • CSS3 标签朝右并使用位置或:after

    我正在尝试在 CSS 中构建这个形状 但我不知道如何将三角形 考虑到我有一个矩形作为标签的 主体 一个三角形作为尖端 朝右 因为我正在处理位置 所以当标签都可以具有不同的大小时 如何让三角形出现在矩形之后 我就是搞不出来 您可以检查小提琴
  • 在网络浏览器中输入 google.com 后按 Enter 键后会发生什么

    当我在网络浏览器中输入 google com 后按 Enter 键后 到底发生了什么 第一个数据包去往何处以及从那里去往何处 我想要详细信息 所以请有人帮助我 您是否尝试过研究输出traceroute www google com从命令行
  • 我不明白 Delphi 中的 Application.ProcessMessages 正在做什么[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我是德尔福的新手 我的主管向我解释说 Application ProcessMessages 可以防止应用程序冻结并分配一些额外的计算时间 但是在这个命令的文档中总是解释一些关于
  • 有没有办法修改 Jersey 生成的 XML 响应以包含样式表信息?

    在 JAXB 中 这是可能的 使用编组器对象 我不知道如何使用泽西岛做到这一点 我想知道是否有一种方法可以以某种方式注入类似的东西 在生成的 xml 响应中 请参阅 XmlHeader 注释 将其附加到您的资源方法中 例如这样 GET Pr
  • 纸张元素导入在 python 中不起作用

    Paper 元素无法在 python django 环境中导入 并且 出现导入错误 Uncaught TypeError Failed to resolve module specifier polymer polymer polymer
  • 适用于 .NET Core 的 Windows 窗体设计器和 WPF 设计器

    我最近听说 NET Core NET Core 3 0 的alpha版本支持Windows Forms和WPF 但是 Visual Studio 设计器 和 Visual Studio 不支持 NET Core版本Windows 窗体和 W
  • 为什么 Java 同步不能按预期工作?

    我试图弄清楚同步方法是如何工作的 根据我的理解 我创建了两个线程T1 and T2这将调用相同的方法addNew 由于该方法是同步的 难道它不应该先为一个线程执行 for 循环的所有迭代 然后再为另一个线程执行吗 输出不断变化 有时打印正确
  • 安卓 pdf 阅读器

    我想使用 Android pdf 库http andpdf sourceforge net 但我有同样的错误 日志 ST file no file selected not found ST reading page 1 zoom 1 0
  • Matlab,使用if语句比较数组

    我在网上搜索试图找到我遇到的这个问题的答案 我有一个类似于以下的数组 A 2 4 6 8 3 5 7 9 1 4 6 9 row median 5 6 5 col median 2 4 6 9 我想根据这些值创建一个中值图 所以我创建了数组
  • 4.0 设备上的 Android 菜单按钮

    如果我的目标 SDK 设置为 11 并且我使用的是 Theme Holo NoActionBar 有什么方法可以让我的菜单出现 我将 Theme Holo 用于较大的屏幕 例如平板电脑 但纯粹是为了节省屏幕空间 我不想在智能手机上显示操作栏
  • Google BigQuery 无法处理更大的结果集,出现“响应太大而无法返回”或“查询执行期间资源超出”

    我目前正在 C 应用程序中处理大型表 105M 记录 当使用 Order by 或 Order Each by 子句查询表时 我收到 查询执行期间超出资源 错误 如果我删除 Order by 或 Order Each by 子句 那么我会得