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

时间:2019-04-23 18:47:20

标签: google-bigquery query-performance metrics performancecounter

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

我还能为这些查询获得等效的解释/执行计划吗?

我看到可以尝试使用CLI的地方:

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

还是API可以给我更多信息?

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

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

2 个答案:

答案 0 :(得分:1)

  

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

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

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

答案 1 :(得分:0)

您可以使用BigQuery webUI来获取所有信息,请记住限制为1000条记录,但是它给您提供了一种类似于AWS选项的优雅方式。

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

enter image description here

然后使用搜索框可以对搜索应用过滤器

enter image description here

点击右侧的箭头会提供一些高级选项:

enter image description here