首页 > 解决方案 > 查看 BigQuery 表/数据集的历史元数据

问题描述

有没有办法查看 BigQuery 表的历史信息?例如,如果我想检查表格的大小是如何变化的?

尝试:
无,因为我不知道这是否可行。

标签: sqlgoogle-bigquerymetadatadatabase-metadata

解决方案


具体取决于您想要获取的信息,有多种方法可以完成此操作:

时间旅行

问题评论中所述,要获取过去 7 天给定时间的数据集状态,您可以使用time travel

指标

要了解上传的行或数据集中使用的存储,您可以使用 GCP 指标,特别是上传存储的行字节

对表进行分区

另一种可能性是按摄取时间对表进行分区。这将在您的表中创建一个名为 的伪列_PARTITIONTIME,并且您将能够根据摄取时间运行查询(根据分区表的边界限制,精确到一小时)。

如果对表进行分区,则可以使用如下查询查询每小时插入的行:

SELECT _PARTITIONTIME as insert_time,
count(1) as count,
FROM `project-id.dataset-id.table-id` 
GROUP BY _PARTITIONTIME
ORDER BY 1 DESC

如果您想知道某个时间点有多少行,可以运行另一个查询,如下所示:

SELECT COUNT(1) as count
FROM `project-id.dataset-id.table-id`
WHERE _PARTITIONTIME < TIMESTAMP("2016-04-15 08:00:00")

分区表文档中的更多示例。


推荐阅读