來自:程式員小灰(微訊號:chengxuyuanxiaohui)
一個故事
在很久很久以前,世界上生活著許多種族,有人類,有矮人,有精靈……他們有著不同的信仰,不同的文化,彼此相安無事。可是,有一個猥瑣男卻偏偏想要統治整個世界。
如何統治這麼多不同文化信仰的種族呢?猥瑣男想出一個餿主意,打造出幾枚擁有魔力的戒指,免費送給不同種族的領袖,讓他們可以更好地統治各自的族人。
當各個種族的領袖美滋滋地戴上各自的魔戒,走上人生巔峰的時候,猥瑣男又打造出一枚獨一無二的至尊魔戒。他利用至尊魔戒的力量控制了所有的魔戒,從而控制了各個種族的領袖,繼而控制了整個世界。
這個故事告訴我們:資料庫和資料倉庫之間的關係。
如果說,那個世界的每一個生命個體都是一條資料記錄,那麼普通的魔戒的地位就好比是資料庫,而至尊魔戒的地位就好比是資料倉庫。
什麼是資料倉庫?
資料倉庫,英文名稱Data Warehouse,簡寫為DW。資料倉庫顧名思義,是一個很大的資料儲存集合,出於企業的分析性報告和決策支援目的而建立,對多樣的業務資料進行篩選與整合。它為企業提供一定的BI(商業智慧)能力,指導業務流程改進、監視時間、成本、質量以及控制。
資料倉庫的輸入方是各種各樣的資料源,最終的輸出用於企業的資料分析、資料挖掘、資料報表等方向。
那麼,資料倉庫都有什麼特點呢?
1.主題性
不同於傳統資料庫對應於某一個或多個專案,資料倉庫根據使用者實際需求,將不同資料源的資料在一個較高的抽象層次上做整合,所有資料都圍繞某一主題來組織。
這裡的主題怎麼來理解呢?比如對於滴滴出行,“司機行為分析”就是一個主題,對於鏈家網,“成交分析”就是一個主題。
2.整合性
資料倉庫中儲存的資料是來源於多個資料源的整合,原始資料來自不同的資料源,儲存方式各不相同。要整合成為最終的資料集合,需要從資料源經過一系列抽取、清洗、轉換的過程。
3.穩定性
資料倉庫中儲存的資料是一系列歷史快照,不允許被修改。使用者只能透過分析工具進行查詢和分析。
4.時變性
資料倉庫會定期接收新的整合資料,反應出最新的資料變化。這和特點並不矛盾。
什麼是ETL?
ETL的英文全稱是 Extract-Transform-Load 的縮寫,用來描述將資料從來源遷移到標的的幾個過程:
1.Extract,資料抽取,也就是把資料從資料源讀出來。
2.Transform,資料轉換,把原始資料轉換成期望的格式和維度。如果用在資料倉庫的場景下,Transform也包含資料清洗,清洗掉噪音資料。
3.Load 資料載入,把處理後的資料載入到標的處,比如資料倉庫。
主流的資料倉庫有哪些?
這個Hive又是何方神聖呢?
確切地說,Hive是基於Hadoop的資料倉庫工具,可以對儲存在HDFS上的檔案資料集進行查詢和分析處理。Hive對外提供了類似於SQL語言的查詢語言 HiveQL,在做查詢時將HQL陳述句轉換成MapReduce任務,在Hadoop層進行執行。
這裡有幾個名詞需要解釋:
1.HDFS
Hadoop的分散式檔案系統,在這裡作為資料倉庫的儲存層。圖中的Data Node就是HDFS的眾多工作節點。
2.MapReduce
一種針對海量資料的平行計算模型,可以簡單理解為對多個資料分片的資料轉換和合併。
關於HDFS和MapReduce的具體知識,這一期暫時不做展開,小灰會在後續的漫畫中詳細介紹。
Teradata資料倉庫配備效能最高、最可靠的大規模並行處理 (MPP) 平臺,能夠高速處理海量資料,其效能遠遠高於Hive。
它使得企業可以專註於業務,無需花費大量精力管理技術,因而可以更加快速地做出明智的決策,實現 ROI(投資回報率) 最大化。
幾點補充:
1.對於大資料方向,小灰也僅僅瞭解皮毛,漫畫中若存在錯誤或是描述不全面的地方,還請大家多多指正補充。
2.關於Teradata,小灰曾經有幸在這裡工作過,雖然不是從事資料倉庫領域。Teradata 的確是一款很強大的商業資料倉庫,對此有興趣的同學,可以百度學習一下具體知識。
—————END—————
系列文章:
●本文編號287,以後想閱讀這篇文章直接輸入287即可
●輸入m獲取文章目錄
大資料與人工智慧
更多推薦《18個技術類微信公眾號》
涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。