BigQuery查询历史记录:获取性能计数器/指标

问题描述 投票:0回答:2

获取历史查询指标的最佳做法是什么?假设有3个用户,他们在一天内分别运行了3个,4个,5个查询(通过JDBC / ODBC)。我如何获得这些查询的列表以及其他元数据信息,例如。价格,扫描的数据量,插槽,开始/结束时间,返回的行等...

我是否也可以获得与这些查询等效的解释/执行计划?

我看到某处我可以尝试使用CLI:

  • 列出所有查询作业:bq ls -j -q
  • 获取特定工作的数据:bq show --format=prettyjson -j <Job ID>

或者API可能会给我更多信息?

但最终这里最好/推荐的做法是什么?

例如在AWS RedShift中我可以使用视图/元表,如STL_QUERYSTL_QUERYTEXTSTL_CONNECTION_LOGSVL_QUERY_SUMMARY视图等...我想知道是否有类似的机制使用SQL来访问和过滤该信息?

google-bigquery query-performance metrics performancecounter
2个回答
1
投票

......或者API可能会给我更多信息?

您可以使用Jobs: listJobs: get分别列出在指定项目中启动的作业,并返回有关特定作业的信息。

如果Jobs.get调用成功,此方法将在响应正文中返回Jobs resource,您可以在其中找到您在问题中提到的所有详细信息


0
投票

你可以使用BigQuery webUI获取所有信息,记住有1000个记录的限制但是它给你一个类似于AWS选项的优雅方式。

这是您设置选项以查看所有用户作业的方法:

enter image description here

使用搜索框,您可以在搜索中应用过滤器

enter image description here

单击右侧的箭头可提供一些高级选项:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.