為什麼我們需要 dbt?我們真的需要它嗎? 今天又在 Medium 看到這篇 No, Data Engineers Don’t NEED dbt.,在談論到底需...
在 BigQuery 的費用監控中,其實大部分都是運算費用居多,儲存費用是占比很小的。 不過我們還是有監控資料表的靜態資訊,看看容量大、又長時間沒有人更新的資料...
接著來討論這整段 pipeline 的費用監控。如果看了這整個系列的文章,應該會看到蠻多地方在討論費用的部分,為了省錢,雖然沒有到無所不用其極,但也是在開發上付...
接著來講我們在 CI/CD 中做的最後一個操作 —— Deploy dbt docs to GitHub Pages。 dbt docs 的功能跟設定挺單純的,...
延續前面討論幾項讓 dbt 與下游結合更緊密的功能,還有一個功能 —— Semantic Layer,定位是 data mart 的下游,負責讓團隊可以定義關鍵...
延續上一篇的主題,來討論兩個我們尚未納入運用的功能:analysis & exposure。 Analysis analyses: - name:...
複習一下之前討論過的,均一目前的資料架構跟服務,在 dbt 與 BigQuery 的轉換、運算與儲存之後,下游有幾個不同情境的運用,其中最大宗的運用即是我們的視...
接著我想來討論一下,在 CI/CD 流程中,我們在 CI 跟 CD 分別做了什麼不同的操作。 這邊主要可以用環境來區分,在 CI 時,也就是 PR 建立時,我們...
CI/CD 是一個穩健的資料系統中必備的要素。能確保系統穩定性與高效率的開發,雖然需要額外的心力來維護,但開發起來絕對比過去我們時常直接把東西丟上 produc...
不同人有不同的 coding style,但為了保持整體專案的一致性,我們會建立一些原則,確保大家的程式碼有一定程度的共通性。 SQL 其實有蠻多流派,像是 B...
在系統開發中,管理開發環境至關重要。我們需要確保在開發與測試階段進行的所有操作不會影響正式環境的資料。 然而,許多團隊在系統建置初期,常常忽略這一點,因為能夠在...
要在 dbt 的開發流程中進行除錯,老實說,比 BigQuery 麻煩許多。畢竟除了 BigQuery 之外,其他的工具都是 call BigQuery 的 A...
前言 建立 Data Pipeline 過程中,常常會需要不同的工具輔助,除了確認資料品質和轉換邏輯,開發效率也會因此提升,像今天要介紹的 dbt Power...
在資料工程的世界裡,要做好資料治理、管控資料品質,確保數據的「新鮮度」是非常重要的。 為了管理數據的新鮮度,dbt 提供了 freshness checks 功...
我們盡可能地把 Airflow 的開發與 dbt 的工作流程做更清楚的隔離。 我們組織的需求大概就是日更、週更、月更的資料流,原先我們使用 BigQuery 時...
dbt 的模型,如何用 airflow 來做任務排程工作? dbt 官方有提供文件說明: Airflow + dbt Cloud Install the db...
dbt core setup,可以先照著官方文件按部就班的前進。基本上就是 pip install, authentication 還有一些環境的設定。 在這個...
前言 昨天已經透過 dbt 將資料轉換並存到 Postgres DB,那我們後續該如何確認資料內容呢?有兩種方式,GUI 和 CLI 工具,一起看下去吧! ㄧ...
我們改用 dbt core 了! 理由一:要錢了 先不講一些高大上的價值跟理由,一開始急著要研究這個轉移,最關鍵的還是看到這個方案: 免費的 develope...
接著來說說實現 incremental model 省錢的路途上,遇到的問題吧。 首先是 is_incremental 內的寫法,dbt 推薦了一個做法,可以用...
incremental models!(文件) 簡單來說就是從原本的 create or replace table 變成 insert into table,...
什麼是開發完成?在小組織營運中,身上總是同時有三五個專案在跑,雖然 dbt 重構是蠻大的一道題目,也不可能讓他永無止盡地做下去,必須有個清楚的 ending 才...
(要跟大家說聲抱歉,今天太累了,先不繼續整理 GitLab 歷史與功能發展,今天讓我用其他 GitLab 相關話題來喘息一下。) 這幾年因為開始進入 Data...
在 yaml file 中,除了前面說到的資料表、欄位說明之外,還有另一項重要的任務,就是測試(文件)。 老實說,我們的測試還不算太完整,雖然拿了很多後端的概念...
上一篇談我們怎麼做文件開發,這篇從管理的角度切入。 要多長有多長,越長越好 從進到這個組織開始,我感覺一直在嘗試沒碰過的領域跟專案,搭著 AI 的浪潮,文件跟...
前面花了蠻多力氣講述欄位名稱要怎麼統一樣式,為的就是整齊、好辨認。 今天就來談談如何寫好文件!先從開發工具開始講起: 我們使用的是 dbt core,在 vsc...
從 staging 到 marts 這幾個階段分別要做什麼轉換,過去有蠻多人討論過的,這邊挑一篇讓大家參考(連結)。 今天想來談談看了文件的切分方法之後,實作時...
上一章談完模型命名的重要,足以讓我們不看 sql code 就知道模型裡面寫了什麼。接著來談談模型內容的命名。 首先是欄位的部分,最基本的是統一格式,提一些實用...
前兩天提到 dbt 將資料庫由上游至下游分成了 staging, intermediate, marts,今天來說說在各階段中模型命名時遇到的難題。 真的不要小...
前面說完了我們評估新工具的歷程,接下來就要開始實作啦!其實如果對 dbt 不是很熟悉的人,或許前幾篇前情提要,更適合在整個系列的最後回頭來看。 要把所有的 s...