日日碰狠狠躁久久躁96avv-97久久超碰国产精品最新-婷婷丁香五月天在线播放,狠狠色噜噜色狠狠狠综合久久 ,爱做久久久久久,高h喷水荡肉爽文np肉色学校

睿治

智能數據治理平臺

睿治作為國內功能最全的數據治理產品之一,入選IDC企業數據治理實施部署指南。同時,在IDC發布的《中國數據治理市場份額》報告中,連續四年蟬聯數據治理解決方案市場份額第一。

實時數倉實戰項目(數倉分層)

時間:2022-01-02來源:小鎮姑娘瀏覽數:544

實時數倉如何做數據分層

? ? ? ?我不喜歡搞什么花里胡哨的詞匯,讓粉絲聽著撓頭,我就想用大白話分享我自己的建設思路和方案。

? ? ? ?在開始分享之前,我想給兄弟們說一下數倉建設的方法論:“因地制宜,以業務為中心”。

? ? ? ?我們需要思考:業務需求是什么?你該如何用最優的方式去支持?

? ? ? ?我們需要明白:你的架構的好壞,不是你自己認為好就是好,也不是你同事認為好就是好,而是要經得起業務的考驗,這點認知就是年薪30萬的sqlboy(自嗨)和年薪100萬+(業務口碑)的sqlboy的認知差別。尤其是到了互聯網大倉。一個公司高p前100名,20%是技術,80%是業務,為什么會出現這種情況?大家自己思考,業務才是爸爸,一定要認清現實,越往高p走,技術越菜,大部分走向了管理崗位,所以不管你做什么事情都要往業務的角度上思考,業務都不賺錢了,要你技術有啥用。

? ? ? ?下面我就開始拿離線數倉和實時數倉的架構做個對比講解,方便大家易懂。(所有的分層都是為了更高效的解決業務問題,不能說不這么玩就不合理,看業務場景吧)

離線數倉架構圖

? ? ? ?For業務實時數倉架構圖

? ? ? ?1.ODS:操作數據層 Operation Data Store

? ? ? ?ODS層屬于操作數據層,是直接從業務系統采集過來的最原始的數據,包含了所有業務的變更過程,數據粒度也是最細的。

? ? ? ?離線:hive

? ? ? ?實時:kafka(實時數倉,要求時效性,基本上都是讀取kafka)

? ? ? ?2.DWD: 明細數據層 Data Warehouse Detail

? ? ? ?數據明細詳情,去除空值,臟數據,超過極限范圍的明細解析。是在ODS層基礎上,根據業務過程建模出來的實時事實明細層,對于訪問日志這種數據,會回流到離線系統供下游使用,最大程度地保證實時和離線數據ODS層和DWD層一致。對ODS層數據進行清洗(去除空值,臟數據,超過極限范圍的數據,行式存儲改為列存儲,改壓縮格式)

? ? ? ?DWD層創建基礎明細表

? ? ? ?明細表用于存儲ODS層原始表轉換過來的明細數據。

? ? ? ?離線:hive

? ? ? ?實時:kafka(實時數倉,復雜的計算邏輯和臟數據提前在flink內部完成,還有緯度退化能在flink內完成盡量在flink內實現,當然也可以把緯度數據同步到doris內,在doris內部做實時join也可以,都可以,根據不同情況制定方案,比如:這個緯度多個報表都需要查詢,個人建議同步到doris內,如果緯度不經常用到,可以直接通過flink關聯。還有一種業務場景就是給算法同學提供模型訓練數據:如果要求的指標就是簡單的sum,count可以直接在flink內產出,關聯緯度信息寫入到kv,復雜的模型訓練指標,可以直接從doris實時查詢結果數據,然后再傳輸給模型,根據sla的要求制定技術方案。)

? ? ? ?3.DWS:匯總數據層 data warehouse service

? ? ? ?服務層—留存-轉化-GMV-復購率-日活 、點贊、評論、收藏;輕度聚合對DWD訂閱明細層數據后,會在實時計算任務中計算各個維度的匯總指標。如果維度是各個垂直業務線通用的,則會放在實時通用匯總層,作為通用的數據模型使用。目標:統計當日、當周、當月活動的每個設備明細

? ? ? ?離線:hive

? ? ? ?實時:doris(一般都是在doris內創建聚合表,創建rollup表或者物化視圖,這樣做的好處是在doris內部提前預聚合,查詢的時候直接命中結果數據,提高實時查詢性能,如果設置本地join,兩個表按照join的字段提前創建colocate join,這樣做的好處是相同的uuid分桶在一起,在join的時候可以減少網絡傳輸,相同的key直接在本地磁盤拉取就可以了。)

? ? ? ?下圖就是本地colocate?join vs shuffle join的性能測試報表

? ? ? ?4.DIM 公共維度層

? ? ? ?實時維表層的數據基本上都是從離線維表層導出來的,抽取到在線系統中供實時應用調用。

? ? ? ?離線:hive

? ? ? ?實時:doris/kv(個人建議doris和kv根據業務情況選擇,如果你們的緯度數據只是你們本地業務報表使用,可以存在Doris內,因為方便制作報表數據,如果你們的緯度數據其他合作團隊也想用,建議寫入到kv中,或者給他們binlog日志,讓他們自己解析也可以。)

? ? ? ?5.ADS:應用數據層 Application Data Store

? ? ? ?做分析處理同步到RDS數據庫里邊個性化維度匯總層,對于不是特別通用的統計維度數據會放在這一層中,這里計算只有自身業務才會關注的維度和指標。目標:當日、當周、當月活躍設備數

? ? ? ?離線:hive/mysql

? ? ? ?實時:doris (目前我接觸的實時的場景,80%都是直接查詢dws層,多個表join產出數據,基本3s內就可以產出結果,如果時間太長,我們在dws層做一個分鐘級別調度,比如5分鐘做個結果表,也就是ads層,實時查詢的時候直接查詢ads層,這樣的好處是提升業務體驗,不好的地方就是你要確保調度的穩定性還有就是數據的時效性問題。)

(部分內容來源網絡,如有侵權請聯系刪除)
立即申請數據分析/數據治理產品免費試用 我要試用
customer

在線咨詢

在線咨詢

點擊進入在線咨詢