Dataform报错:EU仓库下US区域数据集未找到,依赖表编译失败
问题解决方法
1. 显式指定表的区域配置
你的表配置里未声明location字段,可能默认 fallback到了US区域,导致Dataform尝试在US查找数据集。给每个表的config添加区域声明:
修改simple_table:
config { type: "table", description: "", location: "EU" } SELECT 1 AS number UNION ALL SELECT 2 AS number
修改dependent_table:
config { type: "table", description: "", location: "EU" } SELECT * FROM ${ref("simple_table")}
2. 确认项目级默认区域设置
即便修改了仓库位置,仍需检查Dataform项目全局配置:
- 进入项目设置,找到Default dataset location,确认设置为
EU - 核对Default database和Default dataset对应的BigQuery资源确实位于EU区域
3. 清理缓存并重新编译
Dataform可能缓存了旧的区域配置,执行以下操作:
- 使用CLI的话,运行
dataform clean清理本地缓存,再执行dataform run - 使用UI的话,点击顶部「清理缓存」按钮,重新编译工作流
4. 验证BigQuery数据集位置
确认你的*****:dataform数据集实际在EU区域创建:
- 打开BigQuery控制台,找到该数据集查看位置属性
- 如果数据集在US区域,需删除后重新在EU创建(BigQuery数据集位置不可修改)
内容的提问来源于stack exchange,提问作者Pierre Honoré
相关产品推荐
相关产品推荐

