2023年12月6日發(作者:犟龜讀后感)

DBT(Databuildtool)框架概述
DBT(Data build tool)情況簡述:
1,ELT(數據抽取, 數據加載, 數據轉換) 數據處理流程,dbt框架主要用于做T(官方只認T)和L的工作,主要依賴配置文件的定義,實現數據的L和T;
例如:配置文件內配置數據文件路徑 ,數據文件格式(列名稱),數據探測類型(unique,not_null,accepted_values等),數據處理轉換模板;
dbt框架基于配置文件對數據做自動化處理:將數據文件加載到數據倉庫,探測數據規范性,將數據做轉換處理,生成可以用來分析的數據集;
2,配置文件有兩類,.yml,.sql , .yml用于定義項目信息,數據連接信息,數據格式,數據探測類型信息;.sql用于定義數據處理轉換邏輯;
3,整個數據處理流程按層次進行劃分:數據加載層、數據預處理層、數據集市層,配置文件在每個層次都存在,用于定義所在層的配置;
4,數據處理過程產出文檔:原始數據載入數據倉庫后,根據.yml定義的數據探測類型,對數據做質量探查,并產出數據探查描述信息,附圖1;
整個數據處理完畢,能夠生成數據模型報告/數據地圖,描述數據定義及模型間血緣關系,附圖2,附圖3;
DBT優勢:
1,如官網述,開發只用關注邏輯代碼的開發,不用關注表及視圖的創建,不用關注代碼執行順序,DBT框架自動實現這些工作;
2,DBT框架已定義一套數據開發流程及規范,可以約束項目的規范性;
3,DBT框架已抽象出的通用功能,可以降低工作復雜度及重復性編碼工作,如:數據探查,將探查的內容,在配置文件定義,DBT自動輸出探查結果,避免開發代碼,降低數據探查難
度;
DBT不足:
1,DBT目前只能從文件讀原始數據,如,CSV文件;
2,支持的數據倉庫種類偏少,如:Postgres,Presto,Spark等,若使用其他數據倉庫,需開發DBT插件;
3,數據邏輯處理代碼,需根據.sql配置文件的格式定義,實際的項目中,數據代碼達到上百行,在.sql配置文件格式的規范下,代碼管理復雜度會提升,復雜的項目.sql配置文件數量會很
多,帶來代碼梳理及管理上的復雜度;
4,實際項目數據對象的字段會比較多,.yml配置文件定義字段,會比比較繁瑣;
github地址:
本文發布于:2023-12-06 17:19:48,感謝您對本站的認可!
本文鏈接:http://www.newhan.cn/zhishi/a/170185438938887.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:DBT(Databuildtool)框架概述.doc
本文 PDF 下載地址:DBT(Databuildtool)框架概述.pdf
| 留言與評論(共有 0 條評論) |