業務數倉總結

2021-10-25 00:05:40 字數 1194 閱讀 2041

講課,備課,開發

業務資料倉儲的總結:

一 表實體

訂單表:

使用者表:

商品分類:

交易流水:

二.表分類

實體表維度表

事務性事實表

週期性事實表

三.同步策略

全量新增

新增和變化 create_time 和operate_time ===cannal

正規化:1正規化:屬性不可切割

2正規化:不能存在部分函式依賴

3正規化:不能存在傳遞依賴

四。建模方式

星型模型:外圍只有一層維度

雪花:外圍有多層維度

五.sqoop 匯入匯出問題

hive底層儲存null 為\n

匯出資料時:–input-null-string 和 --input-null-non-string

匯入資料時:–null-string 和 --null-non-string

sqoop匯入資料的一致性問題:

場景一:sqoop匯出mysql有四個任務,其中有兩個任務失敗

開發報表顯示的時候不一致

–staging-table 引數

先把資料匯入某個中間(臨時)表,在最終匯出到目標表

–clear-staging-table |清理臨時表

解決資料一致性問題

多個map任務的時候,也可以

採用–staging-table的方式解決資料一致性問題

sqoop底層執行的任務是:只有map階段,沒有reduce階段

六 指標計算

sum(if())組合函式 case when 函式

拉鍊表:1.create_time,operate_time獲取新增和變化的資料,如果沒有就用cannal

2.用臨時拉鍊表解決hive中資料不能更新的問題

azkaban: 每天跑多少job? 2006 (1000-2000)

多少指標 100-200 import-ods-dwd-dws-ads-export

多少task:100(5-8) 5000+個

map reduce

azkaban掛掉:成功或者失敗都會發郵件

等級高 重要指標

資料清洗 -- 維度退化  

使用者維度-商家維度-訂單維度

複購率-漏斗分析

數倉分層總結

數倉分層 ods層 1 保持教據原貌不做任何修改,備份 2 建立分割槽表,防止後續的全表掃瞄 3 採用lzo壓縮,並建立索引 切片 4 建立外部表 多人共用 內部表 自己使用的臨時表 dwd層 1 數倉維度建模 星型模型 維度退化 商品表 品類表 spu表 分類 二級分類 一級分類 商品表 省份 地...

mongodb取數至數倉總結

目的 使用mongoexport工具將mongo表資料抽到hive倉庫中 t 1 並進行初步清洗 遇到的問題 1 抽數的科學記數法問題 2 json格式巢狀導致列錯亂的問題 通常做法 1 使用如下命令將資料匯出csv格式 source etc profile mongoexport host xx ...

實時數倉與脫機數倉總結 一

精選30 雲產品,助力企業輕鬆上雲!主要內容 數倉基本概念 數倉架構演變 實時數倉和脫機數倉的區別 數倉基本概念 首先說一下資料倉儲的概念,以下簡稱數倉。數倉的發展 數倉有兩個環節 乙個是數倉的建設 另乙個數倉的應用。早期的數倉 傳統數倉 目前 數倉的架構演變 脫機數倉和實時數倉 接下來我會分別介紹...