Data Engineering Zoomcamp 如何将 dbt Cloud 连接到 BigQuery 并完成连接验证

发布时间:2026/9/12 1:44:27

Data Engineering Zoomcamp 如何将 dbt Cloud 连接到 BigQuery 并完成连接验证 Data Engineering Zoomcamp 如何将 dbt Cloud 连接到 BigQuery 并完成连接验证【免费下载链接】data-engineering-zoomcampData Engineering Zoomcamp is a free 9-week course on building production-ready data pipelines. Join the course here 项目地址: https://gitcode.com/GitHub_Trending/da/data-engineering-zoomcampData Engineering Zoomcamp 的第 4 周Analytics Engineering提供两条并行的学习环境默认的本地 DuckDB dbt Core以及可选的 BigQuery dbt Cloud。如果你走 BigQuery 这条路线需要把 dbt Cloud 项目连接到你在第 3 周Data Warehouse创建的 GCP 项目中并完成连接验证之后才能在 dbt Cloud 的 Studio IDE 里开发模型。这条路径的前提是你已经完成 Module 3: Data Warehouse即已创建 GCP 项目、启用 BigQuery API、创建了带 BigQuery 权限的服务账号并把数据加载到了nytaxi数据集。确认 BigQuery 侧的前提条件连接 dbt Cloud 之前先核对三样东西服务账号权限、JSON 密钥文件、以及nytaxi数据集里的表与位置。检查服务账号与 JSON 密钥你手上应该已经有第 3 周下载的服务账号 JSON 密钥文件且该服务账号具备以下角色BigQuery Data EditorBigQuery Job UserBigQuery User如果没有密钥文件或需要重新下载按以下路径操作在 Google Cloud Console 中进入IAM AdminService Accounts也可以直接在搜索框输入 Service Accounts在列表中找到你的服务账号其邮箱形如service-account-nameproject-id.iam.gserviceaccount.com。如果还没有服务账号点击 CREATE SERVICE ACCOUNT输入名称文档示例为dbt-bigquery-service-account点击CREATE AND CONTINUE添加角色BigQuery Admin或至少上述三个角色BigQuery Data Editor、BigQuery Job User、BigQuery User然后CONTINUEDONE点击服务账号名称进入详情切换到KEYS标签页点击ADD KEYCreate new key密钥类型选择JSON点击CREATEJSON 密钥文件会自动下载到本地。下载得到的 JSON 文件结构类似下面这份文档示例其中的值在你自己的文件中是真实的{ type: service_account, project_id: your-project-id, private_key_id: ..., private_key: -----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n, client_email: service-account-nameproject-id.iam.gserviceaccount.com, ... }这个文件包含访问 GCP 资源的凭据文档明确要求保存在安全位置绝不能提交到 Git 或公开分享。它会在后面的连接步骤中直接上传给 dbt Cloud。加载第 4 周使用的出租车数据并核验表注意Module 4 使用的数据与 Module 3 不同——这里是2019 和 2020 年全年的 yellow 与 green 出租车行程数据而不是第 3 周的 2024 年 yellow 数据。按你在 Module 3 学到的方式把这两类数据加载到 BigQuery 的nytaxi数据集中。文档同时强调数据要从 DataTalksClub 的 nyc-tlc-data 仓库下载而不是 NYC TLC 官网因为官网数据被回溯更新过与作业答案所依据的数据不一致。加载完成后到 BigQuery Console 核验在左侧 Explorer 面板展开你的项目应能看到nytaxi数据集展开它应看到green_tripdata和yellow_tripdata两张表。记下数据集的位置第 3 周创建nytaxi数据集时你选定了位置例如US、EU、us-central1。检查方式在 BigQuery Console 中点击nytaxi数据集在数据集详情里查看Data location。dbt Cloud 连接配置中要求填同样的位置这是后面连接设置里必须匹配的一项。注册 dbt Platform 并创建项目dbt Platform 是 dbt 的云端开发环境带 Web IDE、调度和协作功能。dbt 提供免费的Developer plan课程文档认为这足以学习 dbt 和跟完课程。创建项目打开Account settings右上角齿轮图标点击 New Project项目名填写taxi_rides_ny点击Continue。配置 BigQuery 连接点击Continue后dbt Cloud 会提示你配置数据仓库连接。如果界面没有自动跳到连接配置页可以从Account settingsProjectstaxi_rides_nyConnection进入。上传服务账号 JSON连接类型选择BigQuery点击Upload a Service Account JSON file选择上一步准备好的服务账号 JSON 密钥文件dbt 会自动从中提取你的 GCP project ID 和认证凭据。填写连接参数参数取值说明Datasetdbt_proddbt 创建数据集的基础 schema 名模型会被组织成dbt_prod_stagingstaging、dbt_prod_intermediateintermediate、dbt_prod_marts最终分析表Location与nytaxi数据集相同例如US、EU或us-central1必须与nytaxi数据集位置一致该项在界面上可能位于Optional Settings或Advanced Settings取决于 UI 版本Timeout300秒文档指定的超时设置Maximum Bytes Billed可留空留空为不限制也可设为10000000001 GB之类的上限来防止查询失控完成连接验证点击Test Connection成功时界面会显示提示Connection test succeeded点击Continue进入下一步。看到这条成功提示就说明 dbt Cloud 已经能凭上传的 JSON 密钥访问你的 BigQuery 项目连接配置本身没有再需要处理的问题。配置代码仓库并验证开发环境设置代码仓库dbt Cloud 需要一个 Git 仓库来存放项目代码文档给出两个选项课程场景下任选其一Let dbt Manage the Repository让 dbt 托管仓库——文档标注为对初学者推荐Connect Your Own GitHub Repository连接你自己的 GitHub 仓库——文档标注为对生产环境推荐。验证开发环境已创建dbt Cloud 在项目设置时自动创建一个 Development 环境无需手动创建。验证方式打开顶部导航栏的DeployEnvironments应看到已列出的Development环境。文档对环境的说明Development 环境是你的个人工作区使用你的个人凭据创建形如dbt_your_name的临时 schema例如dbt_john_smith改动只影响你自己Deployment生产环境使用服务账号凭据创建dbt_prod_staging、dbt_prod_marts等生产 schema供定时任务使用。可选调整开发凭据如果需要修改开发阶段 dbt 连接 BigQuery 的方式或调整开发 schema点击左下角个人资料图标 Your ProfileCredentials选择与你项目关联的凭据在这里可以更新Development Schemadbt 会自动建议dbt_your_name这样的名字它与生产 schemadbt_prod相互独立Target Name保持默认的dev即可。确认一切就绪完成连接和仓库配置后点击Start developing in the Studio IDE如果看不到这个入口就进入顶部导航的Develop。dbt Cloud 会初始化工作区可能需要一分钟左右IDE 加载完成后你就有了一个可以在里面开发 dbt 模型的新项目。此时整条路径的落地状态是Test Connection显示 Connection test succeeded、DeployEnvironments中能看到 Development 环境、Studio IDE 可以正常打开。边界与限制位置必须一致dbt Cloud 连接里的 Location 如果与nytaxi数据集的位置不匹配连接配置就是错的先回 BigQuery Console 核对数据集的 Data location。密钥安全服务账号 JSON 含 GCP 凭据文档明确禁止提交到 Git 或公开分享。数据范围本模块的 dbt 模型基于 2019–2020 年的 yellow/green 数据与你第 3 周加载的 2024 年 yellow 数据不是同一批不要误用第 3 周的表直接跑本模块的模型。课程默认路径是本地 DuckDB dbt Core见 本地安装指南BigQuery dbt Cloud 是文档给出的并行选项两者概念互通参见 dbt Core vs dbt Cloud。如果你使用 dbt Fusion 相关的新版工具链文档注明 BigQuery 在其支持的适配器范围内而 DuckDB 暂不支持。【免费下载链接】data-engineering-zoomcampData Engineering Zoomcamp is a free 9-week course on building production-ready data pipelines. Join the course here 项目地址: https://gitcode.com/GitHub_Trending/da/data-engineering-zoomcamp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/12 1:39:26

ASP.NET Web Forms学生成绩系统实战指南

简介:本资源是一套完整的ASP.NET学生成绩信息管理系统实战项目,面向.NET初学者、高校计算机专业学生及教育信息化开发人员,解决校园成绩管理流程数字化、权限可控、数据可统计的核心需求。压缩包共177个文件,9.15MB,涵…

2026/9/12 2:34:35

三步跑通大模型推理加速:TensorRT-LLM 实战指南

三步跑通大模型推理加速:TensorRT-LLM 实战指南 【免费下载链接】TensorRT-LLM TensorRT LLM provides users with an easy-to-use Python API to define Large Language Models (LLMs) and supports state-of-the-art optimizations to perform inference efficien…

2026/9/12 2:34:35

开源音乐播放器定制开发与合法技术方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/12 2:34:35

Spark交通大数据实时分析实战:轨迹清洗、OD矩阵与特征工程

简介:本资源是一套基于Apache Spark构建的交通数据分析系统完整实现,面向计算机、电子信息工程及数学等专业的本科生与研究生,适用于课程设计、期末大作业及毕业设计等实践场景,聚焦交通流统计、实时车速监测、异常事件预警等典型…

2026/9/12 2:29:35

基于YOLOv5与Dlib的疲劳驾驶检测系统:从目标框选到PERCLOS判定

简介:这份基于YOLOv5、dlib与OpenCV的疲劳驾驶检测完整项目,面向正在准备毕业设计或课程设计的计算机专业学生,也适合需要实战练习的开发者。整套方案包含算法源代码、预训练权重文件与详细文档,从人脸关键点定位、眼部纵横比计算…

2026/9/12 2:05:33

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/10 11:16:38

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/12 0:04:17

MATLAB仿生优化框架:长鼻浣熊算法多策略融合实现

简介:本资源是一份面向智能优化算法研究者与MATLAB初学者的仿生智能算法实践代码包,聚焦于长鼻浣熊优化算法(COA)的多策略改进与性能验证。针对传统COA易陷局部最优、收敛精度不足等问题,作者融合Circle映射初始化提升…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 JavaWeb 的校园一卡通管理系统的设计与实现 基于 JavaWeb 的校园卡业务管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 Java 的图书馆借阅管理平台的搭建与实现 基于 Java 的图书馆综合管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/10 12:32:02

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/10 15:19:50

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/10 15:49:53

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码