You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BigQuery中获取Parquet文件的‘Last modified’信息

获取BigQuery外部Parquet文件的最后修改时间

BigQuery外部表自带的元数据没法跟踪底层Parquet文件的最后修改时间,给你几个可行的解决办法:

方法一:用gsutil命令行批量导出文件信息

用Google Cloud的gsutil工具直接列出存储桶里Parquet文件的详细数据,其中包含修改时间:

gsutil ls -l gs://你的存储桶路径/*.parquet

输出内容会有文件大小、修改时间和完整路径,把这些结果存成CSV后加载到BigQuery的一个辅助表,之后就能和外部表的_FILE_NAME字段关联,查询每个文件的修改时间。

方法二:用BigQuery外部函数直接调用GCS API

通过外部函数对接GCS的接口,在BigQuery里直接获取文件元数据:

  1. 先创建一个HTTP触发的Cloud Function,功能是接收GCS文件路径,返回其最后修改时间
  2. 在BigQuery中创建外部函数指向这个Cloud Function:
CREATE OR REPLACE FUNCTION `你的项目ID.数据集名.get_gcs_last_modified`(file_path STRING)
RETURNS TIMESTAMP
REMOTE WITH CONNECTION `你的项目ID.区域名.连接名称`
OPTIONS (endpoint = '你的Cloud Function访问URL');
  1. 查询外部表时直接调用该函数:
SELECT
  _FILE_NAME,
  `你的项目ID.数据集名.get_gcs_last_modified`(_FILE_NAME) AS last_modified_time
FROM `你的项目ID.数据集名.外部表名称`

方法三:定期同步GCS元数据到BigQuery

用Cloud Scheduler定期触发Cloud Function,遍历存储桶里的Parquet文件,把文件名和最后修改时间同步到BigQuery的专用表,后续查询时直接关联这个表和外部表即可。

内容的提问来源于stack exchange,提问作者Rub moy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 03:31:11