一、為什么要進行大數(shù)據(jù)開發(fā)與管理
在通信技術(shù)的大力發(fā)展下,互聯(lián)網(wǎng)、終端數(shù)字設(shè)備與傳感器不斷普及,進而呈現(xiàn)用戶數(shù)量穩(wěn)步增長,數(shù)據(jù)量井噴型增長。2021年*互聯(lián)網(wǎng)統(tǒng)計發(fā)展報告顯示*網(wǎng)民規(guī)模達10.11億,數(shù)字化應(yīng)用日漸豐富,涉及生活服務(wù)、文娛內(nèi)容、醫(yī)療教育等領(lǐng)域,預(yù)計2025年全球每天產(chǎn)生的數(shù)據(jù)量將達到491EB。
在此背景下,通過管理大數(shù)據(jù),挖掘其中的價值為用戶提供更好的體驗與服務(wù)成為了當(dāng)下的熱門研究點之一。
用戶通過線上/線下行為產(chǎn)生的數(shù)據(jù)推動功能服務(wù)優(yōu)化,更好的服務(wù)又反饋服務(wù)于用戶,例如:
- 通過采集用戶消費記錄提取特征,計算與用戶偏好匹配度更高的商品進行推薦;
- 通過分析用戶群體行為特征進行未來行為發(fā)展預(yù)測等。
這樣的形式讓"數(shù)據(jù)"與"服務(wù)"相輔相成形成良性循環(huán),但這兩者是無法直接連通的,中間存在各種問題,例如:
- 數(shù)據(jù)來源不同、數(shù)據(jù)類型眾多
- 數(shù)據(jù)質(zhì)量參差不齊
- 數(shù)據(jù)可能重復(fù)或缺失
- 不同的服務(wù)需要的數(shù)據(jù)不同,如何提供數(shù)據(jù)支撐使成本*低
- 海量數(shù)據(jù)耗費存儲資源
為了解決這類問題,需要構(gòu)建"中間服務(wù)"——大數(shù)據(jù)開發(fā)及管理,通過提供統(tǒng)一的數(shù)據(jù)采集、處理與管理服務(wù)使數(shù)據(jù)達到"高質(zhì)量""高效率""輕體量"的狀態(tài)。
二、大數(shù)據(jù)開發(fā)與管理分幾步
大數(shù)據(jù)開發(fā)與管理平臺可分為模塊:數(shù)據(jù)采集、整合計算、數(shù)據(jù)管理、數(shù)據(jù)安全與數(shù)據(jù)應(yīng)用。
1. 數(shù)據(jù)采集
目的:將多源異構(gòu)數(shù)據(jù)匯聚至數(shù)據(jù)湖中,等待下一步處理。
要做什么:
- 日志數(shù)據(jù):對于日志數(shù)據(jù)可根據(jù)未來的分析需求與留痕需求進行埋點采集,通過使用User Track、Aplus.JS或一些自動化埋點工具結(jié)合相應(yīng)規(guī)范進行采集。
- 其他數(shù)據(jù)庫:對于其他數(shù)據(jù)庫來源的數(shù)據(jù)需要根據(jù)對方數(shù)據(jù)庫的參數(shù)進行配置建立采集任務(wù),同時需要配置存儲庫表參數(shù)。
- 意外處理:對于以上兩類數(shù)據(jù),在采集過程中可能存在一些意外情況需要處理,例如:一些短時間內(nèi)來自同一IP的高頻訪問可能是網(wǎng)絡(luò)攻擊,不能視為正常操作采集日志;在零點左右采集日志時可能發(fā)生數(shù)據(jù)漂移的情況;數(shù)據(jù)為null(無效值)需要剔除等。在圖中列舉了一些意外處理情況。
2. 整合計算
目的:對采集來的數(shù)據(jù)進行清洗、質(zhì)檢等操作。
要做什么:
- 模型設(shè)計:根據(jù)上層應(yīng)用/分析需求進行數(shù)據(jù)模型設(shè)計,這里涉及三個維度的模型:維表(針對某一事物的描述,例如:會員數(shù)據(jù)、商品數(shù)據(jù)、店鋪數(shù)據(jù))、事實表(某一業(yè)務(wù)過程的描述,例如:商品收藏數(shù)據(jù)、下單數(shù)據(jù))、指標數(shù)據(jù)(基于維表或事實表中的原子指標產(chǎn)生的派生指標,結(jié)合了時間周期、限定詞等描述信息)。模型設(shè)計不僅要定義每個表中的字段還需要定義字段規(guī)則、更新時間等參數(shù)。
- 數(shù)據(jù)清洗/質(zhì)量檢測:根據(jù)字段映射關(guān)系與模型設(shè)計中的字段規(guī)則對數(shù)據(jù)進行清洗,根據(jù)清洗情況出具相應(yīng)的質(zhì)量檢測報告。
- 任務(wù)調(diào)度:根據(jù)計算資源、實時性等因素對計算任務(wù)進行合理調(diào)度分配。
3. 數(shù)據(jù)管理
目的:對原始數(shù)據(jù)、經(jīng)過處理的數(shù)據(jù)等資源進行分層管理,合理配置存儲資源。
要做什么:
- 分層管理:對于不同階段產(chǎn)生的數(shù)據(jù)需要分別進行管理,以便每一步處理留痕方便后續(xù)歷史追溯。主要分為5部分:ODS(Operation Data Store 數(shù)據(jù)源頭層)、DWD(Data Warehouse Details 數(shù)據(jù)細節(jié)層)、DWS(Data Warehouse Service 數(shù)據(jù)服務(wù)層)、ADS(ApplicationData Service 應(yīng)用數(shù)據(jù)服務(wù))、DIM(Dimension 維表層)。
- 存儲成本管理:由于數(shù)據(jù)產(chǎn)生量巨大,同時還伴隨需保留中間處理結(jié)果,所以存儲成本需要進行相應(yīng)控制,控制方式有4種:數(shù)據(jù)治理、數(shù)據(jù)壓縮、數(shù)據(jù)生命周期管理、模型優(yōu)化。
4. 數(shù)據(jù)應(yīng)用
目的:將處理好的數(shù)據(jù)對外提供展開應(yīng)用。
要做什么:
- 應(yīng)用支撐:對于需要數(shù)據(jù)支撐的系統(tǒng)與模塊提供服務(wù)。首先,需要對各維度進行模型構(gòu)建,例如:商品、用戶、會員等。建立描述完整的寬表;其次,需要梳理數(shù)據(jù)域、業(yè)務(wù)流程、各項原子指標與派生指標,定義各項指標口徑,選擇合適的模型構(gòu)建方法(例如:雪花模型、星型模型)進行關(guān)聯(lián)構(gòu)建,構(gòu)建好的專題庫(也可稱之為業(yè)務(wù)塊)向上提供服務(wù)。
- 開放接口:組織數(shù)據(jù)資產(chǎn)中的部分字段為接口,定義請求與相應(yīng)參數(shù)并將其開放至數(shù)據(jù)市場中,用戶可根據(jù)需求進行訂閱申請。
5. 數(shù)據(jù)安全
目的:保證數(shù)據(jù)安全可追溯。
要做什么:
- 日志審計:對關(guān)鍵操作進行數(shù)據(jù)埋點,采集日志數(shù)據(jù)進行審計。
- 安全預(yù)警:構(gòu)建預(yù)警模型,配置關(guān)鍵性指標報警等級與閾值,預(yù)警后相關(guān)人員會通過各類渠道收到通知。
- 數(shù)據(jù)脫敏: 在涉及安全數(shù)據(jù)或者一些商業(yè)性敏感數(shù)據(jù)的情況下,需要對某些敏感信息通過脫敏規(guī)則進行數(shù)據(jù)的變形實現(xiàn)隱私保護。
- 簽章水印:對圖片、視頻等文件進行可見/不可見水印加密并根據(jù)業(yè)務(wù)需求進行簽章明確權(quán)責(zé)。