Google bigquery bigquery表的上次访问日期

Google bigquery bigquery表的上次访问日期,google-bigquery,Google Bigquery,有没有办法在BigQuery中获取表的“上次访问”日期?我发现了同样的问题 但无法发表评论或回复,所以我再次询问 这张桌子在哪里?->来自fh bigquery.audit.cloudaudit\u googleapis\u com\u data\u access\u 201811* 我的bQ项目ID是“test-247020”,而我的数据集名称是BabyName 我该怎么做 非常感谢你的帮助 正在更新我正在使用的查询: WITH tables AS ( SELECT FORMAT("

有没有办法在BigQuery中获取表的“上次访问”日期?我发现了同样的问题

但无法发表评论或回复,所以我再次询问

这张桌子在哪里?->来自
fh bigquery.audit.cloudaudit\u googleapis\u com\u data\u access\u 201811*

我的bQ项目ID是“test-247020”,而我的数据集名称是BabyName

我该怎么做

非常感谢你的帮助


正在更新我正在使用的查询:

 WITH tables AS (
  SELECT FORMAT("%s.%s.%s", table.projectId, table.datasetId, table.tableId) table
    , MAX(timestamp) last_access
  FROM (
    SELECT timestamp
      , protopayload_auditlog.servicedata_v1_bigquery.jobCompletedEvent.job.jobStatistics.referencedTables  
    FROM `test-247020.BabyName.cloudaudit_googleapis_com_data_access`
  ), UNNEST(referencedTables) table
  GROUP BY 1
)

SELECT * 
FROM tables

您需要首先导出日志。

谷歌云平台提供了不同的方法来检索有关BigQuery作业和数据集/表的信息

1-BigQuery web UI:

在的左侧面板上,可以找到“查询历史记录”,其中显示了与针对不同数据集测试的查询相关的执行详细信息。如果作业按日期排序,则最后一个将显示在顶部。此外,“项目历史记录”选项卡将以前的信息扩展到整个项目。这样,就可以看到特定用户执行的查询

2-堆栈驱动程序日志记录:

在检查来自不同Google云平台产品的日志时非常有用。 通过以下操作,可以检索:

通过选择“最后一小时”和“跳到现在”选项,最后访问的数据将显示在日志面板的底部

还可以将给定数据集的特定Stackdriver配置记录到BigQuery中。这将创建一个新表,其中包含针对所选数据集执行的查询的日志信息。每次更新此类导出时,都会将新日志加载到logs表中

3-云壳:

获取上次访问的表的信息的另一种方法是使用中的
bq
。下面的bash脚本将以JSON格式检索与最后一个查询相关的所有数据

#!/bin/bash

# Get the jobID of the last executed query
LAST_JOB_ID=$(bq ls -j -a | grep query | head -1 | awk '{print $1}')

echo Query $LAST_JOB_ID job info
# retrieving the job_ID info in json format
bq show --format=prettyjson -j $LAST_JOB_ID
在字段“referencedTables”中可以找到相应的数据集名称、projectID和表名:

"referencedTables": [
        {
          "datasetId": "DATASET”,
          "projectId": "PROJECTID",
          "tableId": "TABLE"
        }
      ]

再读一遍那个答案
"referencedTables": [
        {
          "datasetId": "DATASET”,
          "projectId": "PROJECTID",
          "tableId": "TABLE"
        }
      ]