BigQuery作业日志分析:SCRIPT与steps是否代表同一ETL执行?
BigQuery中SCRIPT类型作业与子步骤记录的关系
你观察到的两类记录属于同一ETL执行的不同层级记录:
SCRIPT类型的记录是整个ETL脚本执行的整体汇总,它会聚合所有子步骤的指标(比如总执行时长、总计费GB数、总Slot时间等),代表整个脚本作业的全貌。- 拆分后的不同
statement_types子查询记录是脚本执行过程中单个SQL语句/操作的独立记录,每个子步骤对应脚本里的一条具体执行逻辑(比如CREATE TABLE、SELECT、INSERT等),它们的指标是各自步骤的单独统计。
之所以你看到两者指标相近,大概率是因为你的ETL脚本核心逻辑只有一个主要执行步骤,或者多个子步骤的指标总和刚好接近整体脚本的统计值(注意如果有多个子步骤,整体SCRIPT的指标应该是子步骤的累加,可能你没注意到细微差异)。
在做性能和成本估算时:
- 如果要统计整个ETL pipeline的单次/每日整体表现,直接用
SCRIPT类型的记录即可,避免重复计算子步骤的数据。 - 如果要做细粒度的性能排查(比如定位脚本里哪个步骤耗时最长、成本最高),则需要分析各个子步骤的记录。
内容的提问来源于stack exchange,提问作者Keith Cozart
相关产品推荐
相关产品推荐

