如何下载在 BigQuery 中进行的所有查询?

Posted

技术标签:

【中文标题】如何下载在 BigQuery 中进行的所有查询?【英文标题】:How can I download all queries made in BigQuery? 【发布时间】:2021-03-22 21:47:00 【问题描述】:

我创建了一个小型 DataStudio 仪表板,它使用来自一个相当大的表的 BigQuery 数据 - 今天 4.5 GB,每天都在增加。

今天很成功,一天内我的平均 GCS 成本增加了五倍。如何下载已完成查询的完整列表,以便查看使用详情?

顺便说一句,如果您对如何降低查询成本有想法,请分享。我已经减少了用于构建结果的列的数量,并且正在考虑进一步减少它们的方法。

【问题讨论】:

【参考方案1】:

选项 1:

要查看您的查询历史记录,请点击 BigQuery 控制台中的查询历史记录标签。要查看查询的详细信息,请从查询历史列表中选择查询。

Cloud Console 中的作业和查询历史记录包括您在过去 6 个月内提交的所有加载、导出、复制和查询作业(最多 1000 个条目)。 1,000 个作业的限制在所有作业类型中是累积的。

https://cloud.google.com/bigquery/docs/bigquery-web-ui#viewing_job_and_query_history

选项 2:

如果您希望查看超过 1000 个查询,我们可以使用审核日志。在日志资源管理器中使用以下过滤器

resource.type="bigquery_resource"
protoPayload.methodName="jobservice.getqueryresults"

【讨论】:

是的,但是我一天内有几千个查询,并且只有最近的查询才能访问到项目历史 @MarceloSoares 请检查编辑后的答案

以上是关于如何下载在 BigQuery 中进行的所有查询?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 bigquery 标准 sql 中展平结构?

如何在 BigQuery 的新 SQL 查询中连接/使用已保存的查询

如何在 BigQuery 中安排脚本?

在 Python 中运行 BigQuery SQL 查询,如何进行身份验证?

如何清理 BigQuery 视图

如何在 Bigquery¿ 中查询自动日期?