iT邦幫忙

2023 iThome 鐵人賽

DAY 2
1

現在我們要開始用 dbt 了,看官方文件介紹後可以發現 dbt 產品有分 dbt Cloud 和 dbt Core,dbt Cloud 洋洋灑灑介紹9行,還有一個專頁深入介紹各項特色。相對 dbt Core 介紹只有兩行,大意是 dbt Core 是個開源且可以用 command line 執行的 data transformation 工具。官方都那麼推薦 dbt Cloud 優點了,我應該就直接用了吧?

我的建議是,依據你的公司部門職責功能以及成本限制來決定,以下是四個考量的面向

1.你的資料部門在公司的定位

  • 部門偏資料分析導向,負責資料下游邏輯的轉換,部分資料排程

    → 優先適合先用 dbt Cloud

  • 部門偏資料工程部門,需要管理 data pipeline

    → 適合先研究 dbt Core,因為 dbt Cloud 的排程需在 dbt 雲端設定執行,會與團隊本來的排程管理器脫鉤

2.團隊成員背景

  • 團隊成員熟 command line 和開源工具執行,能夠讀懂文件說明甚至有能力 debug

  • 團隊或其他部門是否建置過基礎環境,例如: VM, Docker, Kubernates…等

  • 開發及管理過 CI/CD 流程

    →以上條件滿足越多,你的團隊越適合使用 dbt Core,因為以上情境使用 dbt Core 都會碰到

3.時間成本

  • 團隊是否需特定期限內上限 dbt 轉移專案。如果你有時程限制或只是前期研究,使用 dbt Cloud 可以快速開始工作,因為它提供了一個即插即用的平台和UI介面,容易快速上手
  • 若有足夠的時間來配置 dbt Core,使用 dbt Core 可以完整融入原先 data pipeline

4.預算成本

  • 因為使用 dbt cloud 需要費用(收費方式),一個團隊月費100 美金加上需要跑的 model 數量,若每天跑1,000個 model,一個月需要再加上$150 美金((1,00030-15,000免費 model) 0.01/model = 150)
  • 若使用開源 dbt Core 可以免費跑 model 的數量,只需負擔雲端平台的執行費用

整體來說,我的心得是第一和第二點的決定性最大,因為若沒經驗,從頭建立 dbt Core 執行環境和 CI/CD 流程並非容易的事

dbt 分享目錄


上一篇
為何我們選擇使用 dbt ?
下一篇
dbt 核心功能指令有哪些? 要怎麼使用?
系列文
如何借助 dbt 優化當代資料倉儲及資料工程師的水肥之路分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言