時(shí)間(jiān):2018-09-25 13:53:46 次數(shù):4706
一個(gè)故事
在很(hěn)久很(hěn)久以前,世界上(shàng)生(shēng)活着許多(duō)種族,有(yǒu)人(rén)類,有(yǒu)矮人(rén),有(yǒu)精靈......他們有(yǒu)着不同的信仰,不同的文化,彼此相安無事。可(kě)是,有(yǒu)一個(gè)猥瑣男卻偏偏想要統治整個(gè)世界。
如何統治這麽多(duō)不同文化信仰的種族呢?猥瑣男想出一個(gè)馊主意,打造出幾枚擁有(yǒu)魔力的戒指,免費送給不同種族的領袖,讓他們可(kě)以更好地統治各自的族人(rén)。
當各個(gè)種族的領袖美滋滋地戴上(shàng)各自的魔戒,走上(shàng)人(rén)生(shēng)巅峰的時(shí)候,猥瑣男又打造出一枚獨一無二的至尊魔戒。他利用至尊魔戒的力量控制(zhì)了所有(yǒu)的魔戒,從而控制(zhì)了各個(gè)種族的領袖,繼而控制(zhì)了整個(gè)世界。
這個(gè)故事告訴我們:數(shù)據庫和(hé)數(shù)據倉庫之間(jiān)的關系。
如果說,那(nà)個(gè)世界的每一個(gè)生(shēng)命個(gè)體(tǐ)都是一條數(shù)據記錄,那(nà)麽普通(tōng)的魔戒的地位就好比是數(shù)據庫,而至尊魔戒的地位就好比是數(shù)據倉庫。
什麽是數(shù)據倉庫?
數(shù)據倉庫,英文名稱Data Warehouse,簡寫為(wèi)DW。數(shù)據倉庫顧名思義,是一個(gè)很(hěn)大(dà)的數(shù)據存儲集合,出于企業的分析性報告和(hé)決策支持目的而創建,對多(duō)樣的業務數(shù)據進行(xíng)篩選與整合。它為(wèi)企業提供一定的BI(商業智能)能力,指導業務流程改進、監視(shì)時(shí)間(jiān)、成本、質量以及控制(zhì)。
數(shù)據倉庫的輸入方是各種各樣的數(shù)據源,最終的輸出用于企業的數(shù)據分析、數(shù)據挖掘、數(shù)據報表等方向。
那(nà)麽,數(shù)據倉庫都有(yǒu)什麽特點呢?
1.主題性
不同于傳統數(shù)據庫對應于某一個(gè)或多(duō)個(gè)項目,數(shù)據倉庫根據使用者實際需求,将不同數(shù)據源的數(shù)據在一個(gè)較高(gāo)的抽象層次上(shàng)做(zuò)整合,所有(yǒu)數(shù)據都圍繞某一主題來(lái)組織。
這裏的主題怎麽來(lái)理(lǐ)解呢?比如對于滴滴出行(xíng),“司機行(xíng)為(wèi)分析”就是一個(gè)主題,對于鏈家(jiā)網,“成交分析”就是一個(gè)主題。
2.集成性
數(shù)據倉庫中存儲的數(shù)據是來(lái)源于多(duō)個(gè)數(shù)據源的集成,原始數(shù)據來(lái)自不同的數(shù)據源,存儲方式各不相同。要整合成為(wèi)最終的數(shù)據集合,需要從數(shù)據源經過一系列抽取、清洗、轉換的過程。
3.穩定性
數(shù)據倉庫中保存的數(shù)據是一系列曆史快照,不允許被修改。用戶隻能通(tōng)過分析工具進行(xíng)查詢和(hé)分析。
4.時(shí)變性
數(shù)據倉庫會(huì)定期接收新的集成數(shù)據,反應出最新的數(shù)據變化。這和(hé)特點并不矛盾。
什麽是ETL?
ETL的英文全稱是 Extract-Transform-Load 的縮寫,用來(lái)描述将數(shù)據從來(lái)源遷移到目标的幾個(gè)過程:
1.Extract,數(shù)據抽取,也就是把數(shù)據從數(shù)據源讀出來(lái)。
2.Transform,數(shù)據轉換,把原始數(shù)據轉換成期望的格式和(hé)維度。如果用在數(shù)據倉庫的場(chǎng)景下,Transform也包含數(shù)據清洗,清洗掉噪音(yīn)數(shù)據。
3.Load 數(shù)據加載,把處理(lǐ)後的數(shù)據加載到目标處,比如數(shù)據倉庫。
主流的數(shù)據倉庫有(yǒu)哪些(xiē)?
這個(gè)Hive又是何方神聖呢?
确切地說,Hive是基于Hadoop的數(shù)據倉庫工具,可(kě)以對存儲在HDFS上(shàng)的文件數(shù)據集進行(xíng)查詢和(hé)分析處理(lǐ)。Hive對外提供了類似于SQL語言的查詢語言 HiveQL,在做(zuò)查詢時(shí)将HQL語句轉換成MapReduce任務,在Hadoop層進行(xíng)執行(xíng)。
這裏有(yǒu)幾個(gè)名詞需要解釋:
1.HDFS
Hadoop的分布式文件系統,在這裏作(zuò)為(wèi)數(shù)據倉庫的存儲層。圖中的Data Node就是HDFS的衆多(duō)工作(zuò)節點。
2.MapReduce
一種針對海量數(shù)據的并行(xíng)計(jì)算(suàn)模型,可(kě)以簡單理(lǐ)解為(wèi)對多(duō)個(gè)數(shù)據分片的數(shù)據轉換和(hé)合并。
關于HDFS和(hé)MapReduce的具體(tǐ)知識,這一期暫時(shí)不做(zuò)展開(kāi),小(xiǎo)灰會(huì)在後續的漫畫(huà)中詳細介紹。
幾點補充:
1.對于大(dà)數(shù)據方向,小(xiǎo)灰也僅僅了解皮毛,漫畫(huà)中若存在錯誤或是描述不全面的地方,還(hái)請(qǐng)大(dà)家(jiā)多(duō)多(duō)指正補充。
2.關于Teradata,小(xiǎo)灰曾經有(yǒu)幸在這裏工作(zuò)過,雖然不是從事數(shù)據倉庫領域。Teradata 的确是一款很(hěn)強大(dà)的商業數(shù)據倉庫,對此有(yǒu)興趣的同學,可(kě)以百度學習一下具體(tǐ)知識。