BigQuery Transfer Job文件数限制与配额不符问题咨询
解答
核心原因是你混淆了两类作业的配额限制:
- 你看到的1000万文件上限,是**普通BigQuery加载作业(Load Job)**的配额,这类作业通常是一次性触发的加载任务。
- 你使用的**Cloud Storage到BigQuery传输作业(Transfer Job)**属于定时批量同步任务,它有独立的运行限制:单次传输运行(Transfer Run)的默认最大文件数就是10,000个,这个限制和加载作业的配额不通用。
解决建议
针对你的Hive分区场景,可以尝试以下方案:
- 拆分传输作业:创建多个传输作业,每个作业使用更具体的通配符(比如指定某一级分区的具体取值),确保单次传输匹配的文件数不超过10,000。
- 改用加载作业+触发器:通过Cloud Function监听Cloud Storage的文件上传事件,触发BigQuery加载作业,这样就能利用加载作业的1000万文件配额。
- 合并小文件:提前将多个小CSV文件合并为大文件,既减少单次处理的文件数量,也能提升BigQuery的加载效率。
内容的提问来源于stack exchange,提问作者YFl
相关产品推荐
相关产品推荐

