一、系統(tǒng)結(jié)構(gòu)
流程:源數(shù)據(jù)層—>數(shù)據(jù)加工層—>數(shù)據(jù)倉(cāng)庫(kù)層—>數(shù)據(jù)應(yīng)用層—>數(shù)據(jù)訪問(wèn)層
左側(cè):結(jié)構(gòu)化數(shù)據(jù)(Mysql)(研究)
右側(cè):非結(jié)構(gòu)化數(shù)據(jù)(Hadoop)(不研究)
二、目標(biāo)|群體
目標(biāo):熟悉數(shù)據(jù)倉(cāng)庫(kù)的框架結(jié)構(gòu)、概念和步驟
群體:適合數(shù)據(jù)倉(cāng)庫(kù)的入門(mén)數(shù)據(jù)分析小白群體
排版:極簡(jiǎn)
三、分析步驟
1、結(jié)構(gòu)化數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)
流程:數(shù)據(jù)源—>ETL—>數(shù)據(jù)倉(cāng)庫(kù)(數(shù)據(jù)集市)|數(shù)據(jù)倉(cāng)庫(kù)服務(wù)器—>OLAP服務(wù)器—>數(shù)據(jù)應(yīng)用(高級(jí)報(bào)表、多維分析、數(shù)據(jù)挖掘)
數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng):由數(shù)據(jù)源、集成工具(ETL)、數(shù)據(jù)倉(cāng)庫(kù)與數(shù)據(jù)倉(cāng)庫(kù)服務(wù)器、OLAP服務(wù)器、元數(shù)據(jù)與元數(shù)據(jù)管理工具、數(shù)據(jù)集市和前臺(tái)分析工具等組成。
2、數(shù)據(jù)源
數(shù)據(jù)源:外部數(shù)據(jù)、操作型數(shù)據(jù)庫(kù)、訂單系統(tǒng)、商家系統(tǒng)、客戶系統(tǒng)、客服系統(tǒng)等
3、數(shù)據(jù)存儲(chǔ)和管理
ETL(Extract - Transform - Load ):數(shù)據(jù)抽取(Extracting)、清洗(Cleaning)、轉(zhuǎn)換(Transformation)、加載(Load)工具,簡(jiǎn)稱為ETL工具,完成數(shù)據(jù)的集成。
數(shù)據(jù)抽取:就是從數(shù)據(jù)源中選擇數(shù)據(jù)倉(cāng)庫(kù)需要的數(shù)據(jù)。數(shù)據(jù)抽取的技術(shù)難點(diǎn)在于要針對(duì)不同平臺(tái)、不同結(jié)構(gòu)、不同廠商的數(shù)據(jù)庫(kù),設(shè)計(jì)不同的抽取工具。
數(shù)據(jù)清洗:為了保證數(shù)據(jù)的質(zhì)量,對(duì)抽取得到的數(shù)據(jù)要進(jìn)行清洗,例如,消除不一致性(同名異義、異名同義等)、統(tǒng)一計(jì)量單位、估算默認(rèn)值,等等。
數(shù)據(jù)轉(zhuǎn)換:是將清洗后的數(shù)據(jù)按照數(shù)據(jù)倉(cāng)庫(kù)的主題進(jìn)行組織。
數(shù)據(jù)加載,就是將數(shù)據(jù)裝入數(shù)據(jù)倉(cāng)庫(kù)中。
ELT:(Extract - Load- Transform ):方法與ETL相反。
數(shù)據(jù)庫(kù)(DB):簡(jiǎn)而言之可視為電子化的文件柜,存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作。
操作數(shù)據(jù)存儲(chǔ)(ODS:Operational Data Store):是數(shù)據(jù)倉(cāng)庫(kù)體系結(jié)構(gòu)中的一個(gè)可選部分,ODS具備數(shù)據(jù)倉(cāng)庫(kù)的部分特征和OLTP系統(tǒng)的部分特征,它是“面向主題的、集成的、當(dāng)前或接近當(dāng)前的、不斷變化的”數(shù)據(jù)。
數(shù)據(jù)倉(cāng)庫(kù)(DW):面對(duì)主題、集成、不可更新、隨時(shí)間不斷變化的數(shù)據(jù)集合,用以更好地支持企業(yè)或組織的決策分析處理。
數(shù)據(jù)倉(cāng)庫(kù)服務(wù)器(data warehouse server),負(fù)責(zé)管理數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù),存儲(chǔ)企業(yè)級(jí)的數(shù)據(jù),為整個(gè)企業(yè)的數(shù)據(jù)分析提供一個(gè)完整的、統(tǒng)一的視圖。一般由關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)擴(kuò)展而成。
數(shù)據(jù)集市:是一種小型的數(shù)據(jù)倉(cāng)庫(kù)。它通常有較少的主題域,因此細(xì)節(jié)數(shù)據(jù)以及歷史數(shù)據(jù)都較少,是部門(mén)級(jí)的。數(shù)據(jù)集市面向部門(mén)級(jí)的應(yīng)用,一般只能為某個(gè)部門(mén)的管理人員服務(wù),因此也稱之為部門(mén)級(jí)數(shù)據(jù)倉(cāng)庫(kù)。
數(shù)據(jù)集市:從屬型數(shù)據(jù)集市和獨(dú)立型數(shù)據(jù)集市,“自上而下“地建立數(shù)據(jù)倉(cāng)庫(kù)是從屬型數(shù)據(jù)集市,“自下向上”地建立數(shù)據(jù)倉(cāng)庫(kù)是獨(dú)立型數(shù)據(jù)集市。
企圖由數(shù)據(jù)集市直接升級(jí)為數(shù)據(jù)倉(cāng)庫(kù)的做法,實(shí)際上是避開(kāi)了數(shù)據(jù)倉(cāng)庫(kù)建設(shè)中必須面對(duì)的核心問(wèn)題:組織問(wèn)題和設(shè)計(jì)問(wèn)題。一個(gè)完全由數(shù)據(jù)集市簡(jiǎn)單疊加而成的“數(shù)據(jù)倉(cāng)庫(kù)”,不可能成為真正有用的決策分析平臺(tái)。首先,數(shù)據(jù)集市設(shè)計(jì)中的不全面性導(dǎo)致了它不可能具有數(shù)據(jù)倉(cāng)庫(kù)所需要的長(zhǎng)期穩(wěn)定的體系結(jié)構(gòu)。同時(shí),這種簡(jiǎn)單疊加的“數(shù)據(jù)倉(cāng)庫(kù)”不僅會(huì)影響企業(yè)原有的業(yè)務(wù)系統(tǒng),而且也會(huì)影響先期建立的數(shù)據(jù)集市,任何一方的輕微變動(dòng)都可能給其他系統(tǒng)帶來(lái)自底向上的一系列大的變動(dòng)。
4、分析和挖掘引擎
OLAP服務(wù)器(Online Analytical Processing:在線數(shù)據(jù)分析程序):對(duì)分析需要的數(shù)據(jù)按照多維數(shù)據(jù)模型進(jìn)行再次重組,以支持用戶多角度、多層次的數(shù)據(jù)分析。其具體實(shí)現(xiàn)可以分為:ROLAP、MOLAP、HOLAP以及特殊SQL服務(wù)器。
元數(shù)據(jù):是整個(gè)數(shù)據(jù)倉(cāng)庫(kù)的所有描述性信息(描述數(shù)據(jù)的數(shù)據(jù)),例如列名,或描述結(jié)構(gòu)、功能等。
5、應(yīng)用
查詢報(bào)表:制作各類表格式數(shù)據(jù)報(bào)表、圖形報(bào)表的工具,代表軟件EXCEL
多維分析:將數(shù)據(jù)存放在一個(gè)n維數(shù)組中,而不是像關(guān)系數(shù)據(jù)庫(kù)那樣以記錄的形式存放,代表軟件Tableau、FindBI。
多維分析方法:切塊、切片、旋轉(zhuǎn)、鉆取、上卷。
數(shù)據(jù)挖掘:數(shù)據(jù)庫(kù)中挖掘信息的過(guò)程,代表軟件:SAS、SPSS
數(shù)據(jù)倉(cāng)庫(kù)使用對(duì)象:操作層(基層程序員)—>數(shù)據(jù)倉(cāng)庫(kù)層(企業(yè)高層或DSS分析員)—>部門(mén)|數(shù)據(jù)集市(部門(mén)級(jí))—>個(gè)體層(主管經(jīng)理層|)
四、設(shè)計(jì)數(shù)據(jù)倉(cāng)庫(kù)
1、主要步驟:
數(shù)據(jù)倉(cāng)庫(kù)的規(guī)劃和需求分析(Powerdesigner)—>數(shù)據(jù)倉(cāng)庫(kù)的建模—>數(shù)據(jù)倉(cāng)庫(kù)的物理模型設(shè)計(jì)—>數(shù)據(jù)倉(cāng)庫(kù)的部署—>數(shù)據(jù)倉(cāng)庫(kù)的維護(hù)。
2、設(shè)計(jì)示意:
五、疑問(wèn)解答
1、關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù)區(qū)別?
2、DB、ETL、DW、OLAP、DM、BI關(guān)系區(qū)別?
①、DB/Database/數(shù)據(jù)庫(kù)——這里一般指的就是OLTP數(shù)據(jù)庫(kù),在線事物數(shù)據(jù)庫(kù),用來(lái)支持生產(chǎn)的,比如超市的買賣系統(tǒng)。DB保留的是數(shù)據(jù)信息的最新?tīng)顟B(tài),只有一個(gè)狀態(tài)!比如,每天早上起床洗臉照鏡子,看到的就是當(dāng)時(shí)的狀態(tài),至于之前的每天的狀態(tài),不會(huì)出現(xiàn)的你的眼前,這個(gè)眼前就是db。
②、DW/Data Warehouse/數(shù)據(jù)倉(cāng)庫(kù)——這里保存的是DB中的不同時(shí)間點(diǎn)的狀態(tài),比如,每天早上洗完照鏡子時(shí),都拍一張照片,天天這樣,這些照片放入到一個(gè)相冊(cè)中,之后就可以查看每一天的狀態(tài)了,這個(gè)相冊(cè)就是數(shù)據(jù)倉(cāng)庫(kù),他保存的是數(shù)據(jù)在不同時(shí)間點(diǎn)的狀態(tài),對(duì)同一個(gè)數(shù)據(jù)信息,保留不同時(shí)間點(diǎn)的狀態(tài),就便于我們做統(tǒng)計(jì)分析了。
③、ETL/Extraction-Transformation-Loading——用于完成DB到DW的數(shù)據(jù)轉(zhuǎn)存,它將DB中的某一個(gè)時(shí)間點(diǎn)的狀態(tài),“抽取”出來(lái),根據(jù)DW的存儲(chǔ)模型要求,“轉(zhuǎn)換”一下數(shù)據(jù)格式,然后再“加載”到DW的一個(gè)過(guò)程,這里需要強(qiáng)調(diào)的是,DB的模型是ER模型,遵從范式化設(shè)計(jì)原則,而DW的數(shù)據(jù)模型是雪花型結(jié)構(gòu)或者星型結(jié)構(gòu),用的是面向主題,面向問(wèn)題的設(shè)計(jì)思路,所以DB和DW的模型結(jié)構(gòu)不同,需要進(jìn)行轉(zhuǎn)換。
④、OLAP——在線分析系統(tǒng),簡(jiǎn)單說(shuō)就是報(bào)表系統(tǒng),銷售報(bào)表,統(tǒng)計(jì)報(bào)表,等等,這個(gè)大家都熟悉,當(dāng)然,OLAP的統(tǒng)計(jì)要更復(fù)雜更豐富一些,比如切面,鉆取等等。
⑤、DM/Data Mining/數(shù)據(jù)挖掘——這個(gè)挖掘,不是簡(jiǎn)單的統(tǒng)計(jì)了,他是根據(jù)概率論的或者其他的統(tǒng)計(jì)學(xué)原理,將DW中的大數(shù)據(jù)量進(jìn)行分析,找出我們不能直觀發(fā)現(xiàn)的規(guī)律,比如,如果我們每天早上照相,量身材的時(shí)候,還記錄下頭一天吃的東西,黃瓜,豬腿,烤鴨,以及心情,如果記錄上10年,形成了3650天的相貌和飲食心情的數(shù)據(jù),我們每個(gè)人都記錄,有20萬(wàn)人記錄了,那么,我們也許通過(guò)這些記錄,可以分析出,身材相貌和飲食的客觀規(guī)律;再說(shuō)一個(gè)典型的實(shí)例,就是英國(guó)的超市,在積累了大量數(shù)據(jù)之后,對(duì)數(shù)據(jù)分析挖掘之后,得到了一個(gè)規(guī)律:將小孩的尿布和啤酒放在一起,銷量會(huì)更好——業(yè)務(wù)專家在得到該結(jié)論之后,仔細(xì)分析,知道了原因,因?yàn)橛?guó)男人喜歡看足球的多,老婆把小孩介紹男人看管,小孩尿尿需要尿布,而男人看足球喜歡喝酒,所以兩樣商品有密切的關(guān)系,放在一起銷售會(huì)更好!
⑥、BI/Business Intelligence/商業(yè)智能——領(lǐng)導(dǎo),決策者,在獲取了OLAP的統(tǒng)計(jì)信息,和DM得到的科學(xué)規(guī)律之后,對(duì)生產(chǎn)進(jìn)行適當(dāng)?shù)恼{(diào)整,比如,命令超市人員將啤酒喝尿布放在一起銷售,這就反作用于DB修改存貨數(shù)據(jù)了——這就是整個(gè)BI的作用!
參考:https://www.cnblogs.com/ycdx2001/p/4538750.html
3、數(shù)據(jù)倉(cāng)庫(kù)為什么要分層?
①、清晰數(shù)據(jù)結(jié)構(gòu):每一個(gè)數(shù)據(jù)分層都有它的作用域,這樣我們?cè)谑褂帽淼臅r(shí)候能更方便地定位和理解。
②、數(shù)據(jù)血緣追蹤:簡(jiǎn)單來(lái)講可以這樣理解,我們最終給業(yè)務(wù)誠(chéng)信的是一能直接使用的張業(yè)務(wù)表,但是它的來(lái)源有很多,如果有一張來(lái)源表出問(wèn)題了,我們希望能夠快速準(zhǔn)確地定位到問(wèn)題,并清楚它的危害范圍。
③、減少重復(fù)開(kāi)發(fā):規(guī)范數(shù)據(jù)分層,開(kāi)發(fā)一些通用的中間層數(shù)據(jù),能夠減少極大的重復(fù)計(jì)算。
④、把復(fù)雜問(wèn)題簡(jiǎn)單化:講一個(gè)復(fù)雜的任務(wù)分解成多個(gè)步驟來(lái)完成,每一層只處理單一的步驟,比較簡(jiǎn)單和容易理解。而且便于維護(hù)數(shù)據(jù)的準(zhǔn)確性,當(dāng)數(shù)據(jù)出現(xiàn)問(wèn)題之后,可以不用修復(fù)所有的數(shù)據(jù),只需要從有問(wèn)題的步驟開(kāi)始修復(fù)。
⑤、屏蔽原始數(shù)據(jù)的異常。
⑥、屏蔽業(yè)務(wù)的影響,不必改一次業(yè)務(wù)就需要重新接入數(shù)據(jù)。
4、數(shù)據(jù)倉(cāng)庫(kù)如何分層?
數(shù)據(jù)運(yùn)營(yíng)層(ODS)、數(shù)據(jù)倉(cāng)庫(kù)層/數(shù)據(jù)集市(DW)、數(shù)據(jù)產(chǎn)品層(APP)
六、概念補(bǔ)充
DSS(Decision Support System):支持決策系統(tǒng)
OLTP(On-line Transaction Processing):操作型處理主要完成數(shù)據(jù)的收集、整理、存儲(chǔ)、查詢和增、刪、改操作等,主要由一般工作人員和基層管理人員完成。
OLAP(On-Line Analytical Processing):分析型處理是對(duì)數(shù)據(jù)的再加工,往往要訪問(wèn)大量的歷史數(shù)據(jù),進(jìn)行復(fù)雜的統(tǒng)計(jì)分析,從中獲取信息,因此也稱為信息型處理,主要由中高級(jí)管理人員完成。
星形模式(Star Schema)是最常用的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)結(jié)構(gòu)的實(shí)現(xiàn)模式,它由一個(gè)事實(shí)表和一組維表組成,每個(gè)維表都有一個(gè)維主鍵,所有這些維組合成事實(shí)表的主鍵,換言之,事實(shí)表主鍵的每個(gè)元素都是維表的外鍵。
雪花模式(Snowflake Schema)是對(duì)星形模式的擴(kuò)展,每一個(gè)維表都可以向外連接多個(gè)詳細(xì)類別表。
事實(shí)星座模型:需要多個(gè)事實(shí)表共享維度表,因而可以視為星形模型的集合,故亦被稱為星系模型。
三范式:
第一范式:字段是最小的的單元不可再分;
第二范式:滿足第一范式,表中的字段必須完全依賴于全部主鍵而非部分主鍵;
第三范式:滿足第二范式,非主鍵外的所有字段必須互不依賴;
七、參考文獻(xiàn)
《數(shù)據(jù)倉(cāng)庫(kù)工具箱(第3版)-維度建模權(quán)威指南》
《數(shù)據(jù)倉(cāng)庫(kù)與數(shù)據(jù)分析教程-王珊-高等教育出版社》
《數(shù)據(jù)倉(cāng)庫(kù)與數(shù)據(jù)挖掘?qū)嵺`-電子工業(yè)出版社》
八、備注信息
若有錯(cuò)誤,還望指出,我會(huì)及時(shí)更新,謝謝!