數(shù)據(jù)倉庫學(xué)習(xí)筆記:修煉數(shù)據(jù)產(chǎn)品經(jīng)理
好的數(shù)據(jù)倉庫的建立能夠適應(yīng)業(yè)務(wù)的多變,并且能夠為企業(yè)提供堅實的數(shù)據(jù)基礎(chǔ)以輔助業(yè)務(wù)決策。
隨著企業(yè)業(yè)務(wù)的發(fā)展,企業(yè)自身的業(yè)務(wù)系統(tǒng)及其中所存儲的數(shù)據(jù)會變的越來越多,同時業(yè)務(wù)及運營人員對于日常的指標及數(shù)據(jù)分析需求也會越來越明顯。
這時為了企業(yè)能夠擁有更好的數(shù)據(jù)基礎(chǔ)來支撐常規(guī)的BI系統(tǒng)以便輔助業(yè)務(wù)決策,一些企業(yè)會選擇建立企業(yè)級的數(shù)據(jù)倉儲系統(tǒng)對公司全部或部分的數(shù)據(jù)進行統(tǒng)一存儲及管理。
一、數(shù)據(jù)倉庫系統(tǒng)與操作型系統(tǒng)的區(qū)別
傳統(tǒng)操作性系統(tǒng)更注重對實際業(yè)務(wù)的處理(如電商交易系統(tǒng)),一般采用傳統(tǒng)關(guān)系型數(shù)據(jù)庫對數(shù)據(jù)進行存儲(如mysql)。數(shù)據(jù)倉庫系統(tǒng)更偏向于復(fù)雜的分析操作,側(cè)重決策支持,一般采用多維數(shù)據(jù)庫對數(shù)據(jù)進行存儲和管理,又稱OLAP(聯(lián)機分析處理)。
二、數(shù)據(jù)倉庫的特點
1、數(shù)據(jù)倉庫是面向主題的
操作型數(shù)據(jù)庫的數(shù)據(jù)組織是面向獨立事務(wù)的處理任務(wù),各個業(yè)務(wù)系統(tǒng)之間是分隔獨立的。而數(shù)據(jù)倉庫的數(shù)據(jù)是面向主題的,通過一個個主題域?qū)⒍鄠€業(yè)務(wù)系統(tǒng)的數(shù)據(jù)加載到一起。
2、數(shù)據(jù)倉庫是集成的
數(shù)據(jù)倉庫系統(tǒng)需要將多處的數(shù)據(jù)源通過一定的規(guī)則進行抽取和清洗,并最終加載到數(shù)據(jù)倉庫中。過程中必須消除數(shù)據(jù)的不一致性。
3、數(shù)據(jù)倉庫的數(shù)據(jù)是相對穩(wěn)定的
操作型數(shù)據(jù)庫事實上并不過于注重歷史數(shù)據(jù),但數(shù)據(jù)倉庫的數(shù)據(jù)是為企業(yè)數(shù)據(jù)分析而建立,所以數(shù)據(jù)被加載后一般情況下將被長期保留。
4、數(shù)據(jù)倉庫更注重讀
數(shù)據(jù)倉庫中的數(shù)據(jù)一般僅執(zhí)行查詢操作,很少會有刪除和更新。需定期加載和刷新數(shù)據(jù)。
5、持續(xù)的項目
數(shù)據(jù)倉庫并不會像一個獨立項目一樣的由始至終完結(jié),它從開始建立起就需要不斷的維護。很多企業(yè)會選擇先面向某個主題建立數(shù)據(jù)集市,在通過一個個數(shù)據(jù)集市組成完整的數(shù)據(jù)倉庫。
三、數(shù)據(jù)倉庫的多維數(shù)據(jù)建模
對于現(xiàn)實世界中的某個事務(wù)其實完全可以抽象成維度和事實。
例如“小明今天在商場吃了一頓飯”
維度可抽象為:“時間維 => 今天” ,“地點維=>商場”,“產(chǎn)品維 => 飯” ,“用戶維 => 小明”。
事實量度:一頓
實際粒度:天、商業(yè)綜合體
數(shù)據(jù)倉庫的建模方法有很多,當前所知較為主流的建模方式有兩種,分別為kimball和immon。前者更敏捷,是站在業(yè)務(wù)分析者的角度以最快的方式滿足分析者的分析需求。后者更系統(tǒng),是站在公司的角度在面向各個主題進行建模,并滿足第三范式。
不過現(xiàn)在更多采用的是前者,并且在學(xué)習(xí)數(shù)據(jù)倉庫的這本書也是同樣推薦使用Kimball進行建模。因為相對于目前互聯(lián)網(wǎng)公司的唯快不破,Immon的周期會拉的很長,同時需要建模人員全面了解公司的業(yè)務(wù)場景。
kimball建模開始維度建模前需先要了解業(yè)務(wù)場景并挖掘業(yè)務(wù)需求,同時考慮自身數(shù)據(jù)源的實際情況。
4步驟維度設(shè)計過程
1、選擇業(yè)務(wù)過程
該階段需要建模人員深入到實際業(yè)務(wù)流程當中,從中建立性能度量,并轉(zhuǎn)化為事實表中的事實。一旦事實表被建立,則對應(yīng)的粒度及維度也會相對定義。所以這一步驟還是比較重要的。
2、聲明粒度
粒度聲明是維度設(shè)計的重要步驟,通常選用最低級別的原子粒度,因為原子粒度能夠承受無法預(yù)期的用戶查詢。
3、確認維度
因為維度可以描述事實的屬性,維度表有時會被稱為數(shù)據(jù)倉庫的靈魂。它是數(shù)據(jù)倉庫系統(tǒng)能夠被用作業(yè)務(wù)分析的入口和描述性標識。
4、確認事實
事實表為實際業(yè)務(wù)過程中的度量,大部分以數(shù)值表示。一個事實表對應(yīng)一個現(xiàn)實中的某項事務(wù)。
kimball的三種建模模式
1、星型模型
星型模型是面向主題的常用模式,主要由一個事實表及多個維表構(gòu)成,不存在二級維表。
2、雪花模型
雪花模型是在星型模型基礎(chǔ)上將維表再次擴展,好處是耦合性低,冗余小。缺點是需要跨多表查詢時性能低。
3、星座模型
星座模型其時是星型模型的集合,存在多個事實表且可共用同一個維表。
一般在面向數(shù)據(jù)集市主題建模的時候會采用星型模型,如果是企業(yè)級數(shù)據(jù)倉庫的建立則采用星座模式較多。數(shù)據(jù)建模的的根本目的是避免冗余,盡可能提升查詢性能,建模方式?jīng)]有最好只有最優(yōu)。
kimball結(jié)構(gòu)圖
四、ETL數(shù)據(jù)處理
ETL的工作將貫穿于整個數(shù)據(jù)倉庫的建立過程。ETL是對數(shù)據(jù)的抽取、轉(zhuǎn)換、加載的簡稱。它是指將關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)抽取出來,并將不同數(shù)據(jù)源的數(shù)據(jù)按規(guī)則進行轉(zhuǎn)化和整合,最終加載到數(shù)據(jù)倉庫中。
在這一系列的操作中將會對元數(shù)據(jù)的數(shù)據(jù)格式,拼寫錯誤,多余字段等進行處理,使數(shù)據(jù)達到允許加載到數(shù)據(jù)倉庫的標準。
五、數(shù)據(jù)倉庫與BI系統(tǒng)
當我們的數(shù)據(jù)倉庫通過以上的流程建立好之后,則在應(yīng)用層一般會選擇采購或自建BI系統(tǒng)。一般的BI系統(tǒng)均會支持對數(shù)據(jù)立方進行上卷、下鉆、切片、切塊等操作,強大的BI系統(tǒng)會同時具有基礎(chǔ)的ETL及SQL編寫的功能。另外簡潔的操作流程和直觀的圖形報表也是BI系統(tǒng)必不可少的。
數(shù)據(jù)立方
在日常分析者對數(shù)據(jù)進行透視等分析操作時,往往需要同時多維度的數(shù)據(jù)分析。數(shù)據(jù)立方實際上就是對于多維數(shù)據(jù)分析的一種立體表達。將每個維度作為一個立方體的一個軸,一個立方體最多只能承載三個維度,但實際分析過程中可能有多個維。然后我們可以對數(shù)據(jù)立方進行上卷、下鉆、切片、切塊、旋轉(zhuǎn)等操作。
切片、切塊
上卷、下鉆操作
大數(shù)據(jù)的應(yīng)用越來越廣泛,無論是AI還是傳統(tǒng)的BI都需要數(shù)據(jù)的支撐。好的數(shù)據(jù)倉庫的建立能夠適應(yīng)業(yè)務(wù)的多變,并且能夠為企業(yè)提供堅實的數(shù)據(jù)基礎(chǔ)以輔助業(yè)務(wù)決策。以上為近期個人對數(shù)據(jù)倉庫及建模相關(guān)技術(shù)的學(xué)習(xí)和理解,若存在理解錯的地方還望大神們指正。
感謝瀏覽!
本文由 @宗瀚zone 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Pixabay,基于CC0協(xié)議
大家期待已久的《數(shù)據(jù)產(chǎn)品經(jīng)理實戰(zhàn)訓(xùn)練營》終于在起點學(xué)院(人人都是產(chǎn)品經(jīng)理旗下教育機構(gòu))上線啦!
本課程非常適合新手數(shù)據(jù)產(chǎn)品經(jīng)理,或者想要轉(zhuǎn)崗的產(chǎn)品經(jīng)理、數(shù)據(jù)分析師、研發(fā)、產(chǎn)品運營等人群。
課程會從基礎(chǔ)概念,到核心技能,再通過典型數(shù)據(jù)分析平臺的實戰(zhàn),幫助大家構(gòu)建完整的知識體系,掌握數(shù)據(jù)產(chǎn)品經(jīng)理的基本功。
學(xué)完后你會掌握怎么建指標體系、指標字典,如何設(shè)計數(shù)據(jù)埋點、保證數(shù)據(jù)質(zhì)量,規(guī)劃大數(shù)據(jù)分析平臺等實際工作技能~
現(xiàn)在就添加空空老師(微信id:anne012520),咨詢課程詳情并領(lǐng)取福利優(yōu)惠吧!
怎么一年沒寫文章了
請問下產(chǎn)品經(jīng)理在數(shù)倉搭建中的角色是什么,主要的工作是什么,因為感覺大部分都是工程師的活呀
了解工作原理
怎么一年沒寫文章了?
學(xué)習(xí)了,但是這里kimball的結(jié)構(gòu)感覺表述的不夠清晰,自己又去找了下inmom和kimball的比對文章,感覺https://segmentfault.com/a/1190000006255954這里的比對圖感覺會更好一些
受教了!感謝大神!
文中的immon是不是錯了,inmon?
什么階段的企業(yè)適合做數(shù)據(jù)倉庫 ??
個人感覺主要看上游的數(shù)據(jù)應(yīng)用情況。
博主,你提到的書,書名是什么呢?
“在學(xué)習(xí)數(shù)據(jù)倉庫的這本書也是同樣推薦使用Kimball進行建模。”
叫《數(shù)據(jù)倉庫工具箱》
環(huán)球黑卡聽起來很牛逼
??