在Airflow中运行dbt转换时BigQuery表找不到的问题求助
问题排查与解决方法
核心问题定位
报错信息中明确提到的项目ID是airflow-project-446808,但你的profile.yml配置文件里指定的项目是airtube-390719——dbt正在错误的Google Cloud项目中查找retail.raw_invoices表,这是导致404错误的直接原因。
具体解决步骤
修正profile.yml的项目配置
将profile.yml中的project字段修改为报错中的正确项目ID:retail: target: dev outputs: dev: type: bigquery method: service-account keyfile: /usr/local/airflow/include/gcp/service_account.json project: airflow-project-446808 # 替换为正确的项目ID dataset: retail threads: 1 timeout_seconds: 300 location: US验证数据源定义
检查dbt的数据源配置文件(通常是models/sources.yml),确保retail数据源的项目ID与实际一致:sources: - name: retail project: airflow-project-446808 dataset: retail location: US tables: - name: raw_invoices - name: country确认Airflow的dbt配置加载
确保Airflow执行dbt任务时使用的是修改后的profile.yml,避免因配置文件路径错误或多配置冲突导致加载旧配置。可以在Airflow任务中添加打印dbt配置的步骤,验证项目ID是否正确加载。检查表的实际存在性
通过BigQuery控制台执行以下SQL,确认表确实存在于指定项目、数据集和区域:SELECT * FROM `airflow-project-446808.retail.raw_invoices` LIMIT 10;
内容的提问来源于stack exchange,提问作者Shruti Patel
相关产品推荐
相关产品推荐

