
如何設(shè)計(jì)企業(yè)級大數(shù)據(jù)分析平臺_數(shù)據(jù)分析師考試
傳統(tǒng)企業(yè)的OLAP幾乎都是基于關(guān)系型數(shù)據(jù)庫,在面臨“大數(shù)據(jù)”分析瓶頸,甚至實(shí)時數(shù)據(jù)分析的挑戰(zhàn)時,在架構(gòu)上如何應(yīng)對?本文試擬出幾個大數(shù)據(jù)OLAP平臺的設(shè)計(jì)要點(diǎn),意在拋磚引玉。
突破設(shè)計(jì)原則
建設(shè)企業(yè)的大數(shù)據(jù)管理平臺(Big Data Management Platform),第一個面臨的挑戰(zhàn)來自歷史數(shù)據(jù)結(jié)構(gòu),以及企業(yè)現(xiàn)有的數(shù)據(jù)庫設(shè)計(jì)人員的觀念、原則。數(shù)據(jù)關(guān)系、ACID在關(guān)系數(shù)據(jù)庫幾十年的統(tǒng)治時期是久得人心,不少開發(fā)人員都有過為文檔、圖片設(shè)計(jì)數(shù)據(jù)表,或?qū)⑽臋n、圖片序列化為二進(jìn)制文件存入關(guān)系數(shù)據(jù)庫的經(jīng)歷。在BDMP之上,我們需要對多種不同的格式的數(shù)據(jù)進(jìn)行混合存儲,這就必須意識到曾經(jīng)的原則已經(jīng)不再適用——One size dosen’t fit all,新的原則——One size fits a bunch.
以下是我列出的一些NoSQL數(shù)據(jù)庫在設(shè)計(jì)上的模式:
文檔數(shù)據(jù)庫:數(shù)據(jù)結(jié)構(gòu)是類JSON,可以使用嵌入(Embed)或文檔引用(Reference)的方式來為兩個不同的文檔對象建立關(guān)系;
列簇?cái)?shù)據(jù)庫:基于查詢進(jìn)行設(shè)計(jì),有寬行(Wild Rows)和窄行(Skinny Rows)的設(shè)計(jì)決策;
索引數(shù)據(jù)庫:基于搜索進(jìn)行設(shè)計(jì),在設(shè)計(jì)時需要考慮對對每個字段內(nèi)容的處理(Analysis)。
搜索和查詢的區(qū)別在于,對返回內(nèi)容的排序,搜索引擎?zhèn)戎赜谖谋痉治龊完P(guān)鍵字權(quán)重的處理上,而查詢通常只是對數(shù)據(jù)進(jìn)行單列或多列排序返回即可。
數(shù)據(jù)存儲的二八原則
不少企業(yè)在解決海量數(shù)據(jù)存儲的問題上,要么是把關(guān)系數(shù)據(jù)庫全部往Hadoop上一導(dǎo)入,要么是把以前的非結(jié)構(gòu)化數(shù)據(jù)如日志、點(diǎn)擊流往NoSQL數(shù)據(jù)庫中寫入,但最后往往發(fā)現(xiàn)前者還是無法解決大數(shù)據(jù)分析的性能瓶頸,后者也無法回答數(shù)據(jù)如何發(fā)揮業(yè)務(wù)價值的問題。
在數(shù)據(jù)的價值和使用上,其實(shí)也存在著二八原則:
20%的數(shù)據(jù)發(fā)揮著80%的業(yè)務(wù)價值;
80%的數(shù)據(jù)請求只針對20%的數(shù)據(jù)。
目前來看,不管是數(shù)據(jù)存儲處理、分析還是挖掘,最完整和成熟的生態(tài)圈還是基于關(guān)系型數(shù)據(jù)庫,比如報(bào)表、聯(lián)機(jī)分析等工具;另外就是數(shù)據(jù)分析人員更偏重于查詢分析語言如SQL、R、Python數(shù)據(jù)分析包而不是編程語言。
企業(yè)大數(shù)據(jù)平臺建設(shè)的二八原則是,將20%最有價值的數(shù)據(jù)——以結(jié)構(gòu)化的形式存儲在關(guān)系型數(shù)據(jù)庫中供業(yè)務(wù)人員進(jìn)行查詢和分析;而將80%的數(shù)據(jù)——以非結(jié)構(gòu)化、原始形式存儲在相對廉價的Hadoop等平臺上,供有一定數(shù)據(jù)挖掘技術(shù)的數(shù)據(jù)分析師或數(shù)據(jù)工程師進(jìn)行下一步數(shù)據(jù)處理。經(jīng)過加工的數(shù)據(jù)可以以數(shù)據(jù)集市或數(shù)據(jù)模型的形式存儲在NoSQL數(shù)據(jù)庫中,這也是后面要講到的“離線”與“在線”數(shù)據(jù)。
理解企業(yè)的數(shù)據(jù)處理需求
數(shù)據(jù)庫到數(shù)據(jù)倉庫,是事務(wù)型數(shù)據(jù)到分析型數(shù)據(jù)的轉(zhuǎn)變,分析型數(shù)據(jù)需要包括的是:分析的主題、數(shù)據(jù)的維度和層次,以及數(shù)據(jù)的歷史變化等等。而對大數(shù)據(jù)平臺來說,對分析的需求會更細(xì),包括:
查詢:快速響應(yīng)組合條件查詢、模糊查詢、標(biāo)簽
搜索:包括對非結(jié)構(gòu)化文檔的搜索、返回結(jié)果的排序
統(tǒng)計(jì):實(shí)時反映變化,如電商平臺的在線銷售訂單與發(fā)貨計(jì)算出的庫存顯示
挖掘:支持挖掘算法、機(jī)器學(xué)習(xí)的訓(xùn)練集
針對不同的數(shù)據(jù)處理需求,可能需要設(shè)計(jì)不同的數(shù)據(jù)存儲,還需要考慮如何快速地將數(shù)據(jù)復(fù)制到對應(yīng)的存儲點(diǎn)并進(jìn)行合適的結(jié)構(gòu)轉(zhuǎn)換,以供分析人員快速響應(yīng)業(yè)務(wù)的需求。
離線數(shù)據(jù)與在線數(shù)據(jù)
根據(jù)不同的企業(yè)業(yè)務(wù),對“離線”的定義其實(shí)不一樣,在這里離線數(shù)據(jù)特指在業(yè)務(wù)場景中適用于“歷史數(shù)據(jù)”的部分。常見的歷史數(shù)據(jù)查詢分析一般來自于特定時間段,設(shè)計(jì)上需要考慮的是將數(shù)據(jù)存入歷史庫中時,建立時間索引。另一種情況是某種業(yè)務(wù)問題的定位或分析,在數(shù)據(jù)量巨大的情況下,基于Hadoop或Spark等框架編寫分析算法并直接在平臺上運(yùn)行,可以大大節(jié)約數(shù)據(jù)導(dǎo)出導(dǎo)入、格式轉(zhuǎn)換與各種分析工具對接的時間。
在線數(shù)據(jù)處理按照存儲和分析的先后順序,可分為批處理(先存儲后分析)和流處理(先分析后存儲)兩類。Cassandra數(shù)據(jù)庫的設(shè)計(jì)采用上數(shù)據(jù)追加寫入模式,可以支持實(shí)時批處理;流式計(jì)算平臺則有Apache Storm、Yahoo S4等開源框架,商業(yè)平臺有Amazon Kenisis(部署在云端)。企業(yè)的實(shí)時分析需求往往有特定的應(yīng)用場景,需要對業(yè)務(wù)和現(xiàn)行系統(tǒng)有深入的理解才能設(shè)計(jì)出一個合理的架構(gòu)。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計(jì)劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計(jì)劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點(diǎn)數(shù)據(jù)的科學(xué)計(jì)數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點(diǎn)數(shù)據(jù)時的科學(xué)計(jì)數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計(jì)” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計(jì)模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計(jì)模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10