iT邦幫忙

2023 iThome 鐵人賽

DAY 2
2
AI & Data

dbt: 告別過時的SQL開發流程系列 第 2

DAY 02 - dbt Cloud 準備工作:BigQuery、GitHub

  • 分享至 

  • xImage
  •  

本系列文選用 BigQuery 以及 GitHub。
因此在正式開始之前,今天我們要先把帳號及準備好。


BigQuery

建立 Google 帳號

申請 Google 帳號:Create a Google Account

大家應該都有 gmail 帳號,如果不需要重新申請的話,可以直接跳過這一步。
不過如果是工作上使用,可以用公司信箱申請 Google 帳號,較方便管理。
在申請帳號的時候選 Use your existing email 就可以使用現有的信箱了。
https://ithelp.ithome.com.tw/upload/images/20230803/20159575BGntxutM2z.png

建立 GCP 專案並測試 BigQuery

登入 Google 帳號,並建立GCP專案
https://ithelp.ithome.com.tw/upload/images/20230803/2015957542vnwI2EL4.png

登入 BigQuery,Project 就選剛剛建立的專案。
選 COMPOSE A NEW QUERY
https://ithelp.ithome.com.tw/upload/images/20230803/20159575e2vHAaxK1q.png

測試看看是否能成功執行以下語法

select * from `dbt-tutorial.jaffle_shop.customers`;
select * from `dbt-tutorial.jaffle_shop.orders`;
select * from `dbt-tutorial.stripe.payment`;

https://ithelp.ithome.com.tw/upload/images/20230803/20159575quz5BDsqIS.png

產BigQuery Credential

APIs & Services -> Credentials

  • Select an API -> BigQuery API
  • What data will you be accessing? -> Application data
  • Are you planning to use this API with Compute Engine, Kubernetes Engine, App Engine, or Cloud Functions? -> No, I'm not using them.
    https://ithelp.ithome.com.tw/upload/images/20230803/20159575niXfRxcx5p.png

建立 Service Account 並授予權限
https://ithelp.ithome.com.tw/upload/images/20230803/201595750hcSJmbbhL.png

https://ithelp.ithome.com.tw/upload/images/20230803/201595759fkjQ0ASH0.png

Grant users access to this service account -> 跳過
https://ithelp.ithome.com.tw/upload/images/20230803/20159575VBrbxJpVxP.png

完成後,前一步驟建立的 Service Account 會出現在 Credentials

https://ithelp.ithome.com.tw/upload/images/20230803/20159575n1QbxxC5A2.png

點進去該Service Account後,KEYS -> Add Key -> Create new key -> JSON
https://ithelp.ithome.com.tw/upload/images/20230803/20159575b2hbFs3cIQ.png

產出的 JSON 檔會自動下載到本機。
請保留該檔案,明天會用到。


GitHub

申請帳號:Join GitHub
如果已經有帳號的話,可以跳過這一步。
https://ithelp.ithome.com.tw/upload/images/20230803/20159575gDoljFVvRZ.png

登入 GitHub:Sign in to GitHub
https://ithelp.ithome.com.tw/upload/images/20230803/20159575N8wqPkFJJ6.png

建一個新的 repository:Create a new repository
輸入 Repository name (例如:dbt-demo)
只要建立空白專案即可,其他選項都不需要勾選。
https://ithelp.ithome.com.tw/upload/images/20230803/20159575UTe2Bildud.png

建立完成後,下圖處點選 SSH,該 URL 明天會用到。
我的是:git@github.com:olycats/dbt-demo.git
https://ithelp.ithome.com.tw/upload/images/20230803/201595751Z4fLNmI1g.png


題外話:dbt Cloud 支援的資料平台

dbt Cloud 只有支援少數資料平台。
如果需要的資料平台沒支援,可以考慮改用 dbt Core,有更多社群維護的 adaptor 可以選擇。

dbt Cloud 目前支援的有

  • Snowflake
  • PostgreSQL
  • BigQuery
  • Redshift
  • Databricks
  • Apache Spark
  • Starburst
    https://ithelp.ithome.com.tw/upload/images/20230803/201595755eWfXVTdPY.png

因為 BigQuery 容易上手,有免費額度可以使用,所以本系列文章跟隨官方 QuickStart,採用 BigQuery 作為範例。


今日小結&明日預告

今天產了 BigQuery Credential (Json檔) 以及拿到了 GitHub repo 的 SSH URL,請保留至明日使用。

明天的主題:申請 dbt 帳號 & 建立 dbt 專案。

參考資料


歡迎加入 dbt community
對 dbt 或 data 有興趣 👋?歡迎加入 dbt community 到 #local-taipei 找我們,也有實體 Meetup 請到 dbt Taipei Meetup 報名參加


上一篇
DAY 01 - 前言
下一篇
DAY 03 - dbt Cloud 入門 (1) - 申請帳號、建立專案
系列文
dbt: 告別過時的SQL開發流程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言