數(shù)據(jù)處理-數(shù)據(jù)產(chǎn)品的視角

數(shù)據(jù)通過埋點收集上來(先前有介紹埋點技術(shù)谒撼、埋點通用的事件模型),需要進行數(shù)據(jù)處理。

數(shù)據(jù)處理的概念太過大,本文將介紹:

(1)數(shù)據(jù)采集后數(shù)據(jù)流的處理過程廷痘;

(2)數(shù)據(jù)處理中的關(guān)鍵知識點:數(shù)據(jù)倉庫

一、數(shù)據(jù)處理過程

數(shù)據(jù)從各種異構(gòu)的數(shù)據(jù)源中件已,處理笋额、匯總,最終展示為報表篷扩、儀表盤兄猩、動態(tài)數(shù)據(jù)分析查詢等等。

step1.異構(gòu)數(shù)據(jù)源

(1)通過數(shù)據(jù)采集到的服務端鉴未、客戶端用戶行為日志枢冤;

(2)用戶的歷史信息,定性信息(e.g.性別铜秆,職業(yè)的用戶畫像數(shù)據(jù))淹真,定量信息(e.g.近30天的某個興趣傾向程度);

(3)第三方等獲取的信息连茧;

step2.以上這信息大都需要二次加工核蘸、清洗,生成結(jié)構(gòu)化的數(shù)據(jù)梅屉;

(1)臟數(shù)據(jù)的清洗值纱、整合,如延遲數(shù)據(jù)的按照發(fā)生日歸納坯汤;

(2)生成用戶基礎(chǔ)數(shù)據(jù)虐唠、行為數(shù)據(jù)的基礎(chǔ)表,以提高數(shù)據(jù)的易用性惰聂;

(3)生成用戶&行為結(jié)構(gòu)化業(yè)務應用表疆偿,這部分數(shù)據(jù)直接服務于業(yè)務咱筛,貢獻于報表展示、數(shù)據(jù)查詢/分析/挖掘等杆故;

輕描淡寫的2個步驟迅箩,卻是數(shù)據(jù)存儲、合理化处铛、最大化利用的關(guān)鍵饲趋。

二、數(shù)據(jù)倉庫(Data Warehouse)

而剛剛描述中數(shù)據(jù)獲取撤蟆、數(shù)據(jù)存儲奕塑、提供給使用方都是數(shù)據(jù)倉庫系統(tǒng)的部分,其實體是我們常見的各種數(shù)據(jù)庫表家肯,如常見的hive龄砰,spark,Oracle等讨衣。

1.數(shù)據(jù)倉庫分層

為什么要做分層呢换棚?

a.更清晰的管理、追蹤數(shù)據(jù)(清洗的數(shù)據(jù)結(jié)構(gòu)反镇、明確的血緣關(guān)系)固蚤;

b.減少重復計算,通過建立通用的中間表歹茶,減少重復計算

c.分解數(shù)據(jù)處理過程颇蜡,將復雜的數(shù)據(jù)->業(yè)務應用,拆解成多個步驟辆亏,每一層只處理單一的步驟风秤,便于維護、定位問題扮叨;

d.更高效的訪問數(shù)據(jù)缤弦,避免用戶直接訪問基礎(chǔ)數(shù)據(jù);

數(shù)據(jù)分層具體是指彻磁?

緩沖層(Buffer):用于存儲每天的增量數(shù)據(jù)和變更數(shù)據(jù)碍沐,直接從kafka接收源數(shù)據(jù)。

操作數(shù)據(jù)層(ODS):該層級的數(shù)據(jù)衷蜓,最接近數(shù)據(jù)源的原始面貌(內(nèi)容和粒度與原始數(shù)據(jù)一致)累提,通常是數(shù)據(jù)源直接經(jīng)過ETL后,存儲于此磁浇。從原始數(shù)據(jù)到ODS層斋陪,不建議做復雜的數(shù)據(jù)清洗,以免破壞原始數(shù)據(jù),引起不必要的排查成本无虚。建議僅進行(a)將json記錄的日志缔赠,映射到各字段中;(b)作弊數(shù)據(jù)的清洗;(c)數(shù)據(jù)轉(zhuǎn)碼:將編碼映射成具有真實含義的值(d)數(shù)據(jù)標準化友题,e.g.把所有的日期都格式化成YYYY-MM-DD的格式嗤堰;(e)異常值修復; e.g.視頻播放表:(包含用戶id度宦、視頻id踢匣、播主、播放時間等)戈抄。該原數(shù)據(jù)日志為服務端上報的json格式符糊,經(jīng)歷字段解析、作弊數(shù)據(jù)清洗呛凶、異常播放時長的數(shù)據(jù)后,產(chǎn)生該表行贪。

明細數(shù)據(jù)層(DWD):基于業(yè)務過程建模漾稀,即對ODS層做一些業(yè)務層面的數(shù)據(jù)清洗和規(guī)范化的操作;

匯總數(shù)據(jù)層(DWS):依據(jù)業(yè)務需求對ODS層的數(shù)據(jù)進行了匯總;

應用數(shù)據(jù)層(ADS):基于業(yè)務需要進行的統(tǒng)計數(shù)據(jù)建瘫,e.g.各類型視頻的播放統(tǒng)計崭捍。

維度表(DIM):存放基礎(chǔ)信息,如用戶屬性表-性別啰脚、年齡等等殷蛇。

除了固定為分層外,當然還有臨時表(TEM)橄浓。

各層級數(shù)據(jù)表的關(guān)系:如下

各層級數(shù)據(jù)表

阿里/華為的數(shù)據(jù)倉庫數(shù)據(jù)分級:操作數(shù)據(jù)層(ODS粒梦,Operational Data Store)、明細數(shù)據(jù)層(DWD荸实,Data Warehouse Detail)匀们、匯總數(shù)據(jù)層(DWS, Data Warehouse Summary)和應用數(shù)據(jù)層(ADS,Application Data Store)准给,維度表(DIM泄朴,); 操作數(shù)據(jù)層露氮、明細數(shù)據(jù)層祖灰、匯總數(shù)據(jù)層都是公共數(shù)據(jù)層。

2.數(shù)據(jù)倉庫每張表的搭建畔规,主要依賴于這個表在整個數(shù)據(jù)倉庫中的作用和相關(guān)意義局扶。

(1)首先要清楚這個表為了解決什么問題而存在的?

如果是ODS層的表,是否將原數(shù)據(jù)的有意義字段均清洗過來?

如果是DWD層的表详民,是否清晰延欠、明確的記錄了業(yè)務層面的明細數(shù)據(jù)?

如果是DWS層的表沈跨,是否能夠有效由捎、便利的服務于業(yè)務方向統(tǒng)計需求?

如果是ADS層的表饿凛,是否能夠得到業(yè)務需要的統(tǒng)計數(shù)據(jù)狞玛?

如果是DIM層的表,是否全面記錄了后續(xù)分析或統(tǒng)計需要用的各個維度涧窒?

(2)什么角色使用心肪,表是否足夠易用?是否內(nèi)容冗余纠吴?是否安全硬鞍?

業(yè)務線的同學是否能夠通過幾條簡單的SQL語句,拿到數(shù)據(jù)結(jié)果戴已?

可以通過單張表格統(tǒng)計到數(shù)據(jù)還是需要多表關(guān)聯(lián)獲裙谈谩?

單張表是不是內(nèi)容冗余糖儡,是否會影響查詢效率伐坏?

多表關(guān)聯(lián)時,是否會有業(yè)務理解上的坑握联,e.g.多表間的字段是一對一桦沉,一對多,還是多對多金闽,如何讓使用者清晰的理解纯露?

表中是否涉及敏感的字段,比如金額等代芜,使用群體是否有足夠的權(quán)限獲取這些信息苔埋?

以上都是我們設(shè)計數(shù)據(jù)表時需要考慮的。

3.元數(shù)據(jù)管理

元數(shù)據(jù)及應用也是數(shù)據(jù)倉庫的重要組成部分蜒犯。它是描述數(shù)據(jù)的數(shù)據(jù)(data about data)组橄,描述數(shù)據(jù)的屬性信息;可以幫助數(shù)據(jù)倉庫管理員和數(shù)據(jù)倉庫的開發(fā)人員非常方便地找到他們所關(guān)心的數(shù)據(jù)罚随。

元數(shù)據(jù)記錄了哪些信息玉工?

(a)數(shù)據(jù)的表結(jié)構(gòu):字段信息、分區(qū)信息淘菩、索引信息等遵班;

(b)數(shù)據(jù)的使用&權(quán)限:空間存儲屠升、讀寫記錄、修改記錄狭郑、權(quán)限歸屬腹暖、審核記錄等其他信息;

(c)數(shù)據(jù)的血緣關(guān)系信息:血緣信息簡單的說就是數(shù)據(jù)的上下游關(guān)系翰萨,數(shù)據(jù)從哪里來到哪里去脏答?

在數(shù)據(jù)排查是可以明確的知道數(shù)據(jù)在哪個環(huán)節(jié)出了問題,從而快速定位問題亩鬼。

也可以通過血緣關(guān)系殖告,建立起生產(chǎn)這些數(shù)據(jù)的任務之間的依賴關(guān)系,進而輔助調(diào)度系統(tǒng)的工作調(diào)度雳锋,或者用來判斷一個失敗或錯誤的任務可能對哪些下游數(shù)據(jù)造成影響等等黄绩。

(d)數(shù)據(jù)的業(yè)務屬性信息:記錄這張表的業(yè)務用途,各個字段的具體統(tǒng)計口徑玷过、業(yè)務描述爽丹、歷史變遷記錄、變遷原因等辛蚊。

這部分數(shù)據(jù)多是業(yè)務方手動填寫粤蝎,但卻是表使用過程中必須的信息,建議可以設(shè)計在建表/修改表的過程中嚼隘,強迫建表人員填寫/維護相關(guān)信息。

4.離線數(shù)據(jù)倉庫&實時數(shù)據(jù)倉庫

根據(jù)數(shù)據(jù)實時性袒餐,數(shù)據(jù)倉庫可以分為離線數(shù)據(jù)倉庫飞蛹、實時數(shù)據(jù)倉庫。離線數(shù)據(jù)倉庫主要記錄t+1以上的數(shù)據(jù)灸眼,以天卧檐、周、月數(shù)據(jù)計算為主焰宣。實時數(shù)據(jù)倉庫是隨著人們對實時數(shù)據(jù)展示霉囚、分析、算法的需求而出現(xiàn)的匕积。

學習過程中參考:http://www.mdjs.info/2018/04/07/datatalk/usage-of-ods/#more

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盈罐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子闪唆,更是在濱河造成了極大的恐慌盅粪,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件悄蕾,死亡現(xiàn)場離奇詭異票顾,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門奠骄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來豆同,“玉大人,你說我怎么就攤上這事含鳞∮靶猓” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵民晒,是天一觀的道長精居。 經(jīng)常有香客問我,道長潜必,這世上最難降的妖魔是什么靴姿? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮磁滚,結(jié)果婚禮上佛吓,老公的妹妹穿的比我還像新娘。我一直安慰自己垂攘,他們只是感情好维雇,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著晒他,像睡著了一般吱型。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上陨仅,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天津滞,我揣著相機與錄音,去河邊找鬼灼伤。 笑死触徐,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的狐赡。 我是一名探鬼主播撞鹉,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼颖侄!你這毒婦竟也來了鸟雏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤览祖,失蹤者是張志新(化名)和其女友劉穎崔慧,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體穴墅,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡惶室,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年温自,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片皇钞。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡悼泌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出夹界,到底是詐尸還是另有隱情馆里,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布可柿,位于F島的核電站鸠踪,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏复斥。R本人自食惡果不足惜营密,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望目锭。 院中可真熱鬧评汰,春花似錦、人聲如沸痢虹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽奖唯。三九已至惨缆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間丰捷,已是汗流浹背坯墨。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瓢阴,地道東北人畅蹂。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓健无,卻偏偏與公主長得像荣恐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子累贤,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容