公司最近要搞數(shù)據(jù)分析,,兩個項目擁有不同的數(shù)據(jù)源,,有些數(shù)據(jù)存在Oracle,有些數(shù)據(jù)存在MongoDB,,再加上一些第三方的數(shù)據(jù),。
要將這些數(shù)據(jù)整合在一起進行數(shù)據(jù)分析,得想個解決辦法才行,,不然我就要跑路了,。
可是該怎么做呢
其實說到數(shù)據(jù)分析,我就會想到hadoop,,然后就會聯(lián)系到數(shù)據(jù)倉庫,,我覺得數(shù)據(jù)倉庫就能夠非常好的解決這個問題
那么什么是數(shù)據(jù)倉庫呢?
數(shù)據(jù)倉庫,,英文名稱Data Warehouse ,,簡稱DW。數(shù)據(jù)倉庫見名知意,,就是一個很大的用來儲存數(shù)據(jù)的集合,,用于解決企業(yè)數(shù)據(jù)分析性和決策目的創(chuàng)建,對多樣的數(shù)據(jù)進行篩選與整合,,指導(dǎo)業(yè)務(wù)流程改進,、成本、質(zhì)量以及控制,。
數(shù)據(jù)倉庫的輸入房就是各種各樣的數(shù)據(jù)源,,最終的輸出用來為企業(yè)做數(shù)據(jù)分析、數(shù)據(jù)挖掘和數(shù)據(jù)報表,。
先說說數(shù)據(jù)倉庫的特點
1,、主題性
不同于傳統(tǒng)數(shù)據(jù)庫對應(yīng)于某個或多個項目,,數(shù)據(jù)倉庫根據(jù)使用者實際需求,將不同數(shù)據(jù)源的數(shù)據(jù)在一個較高的抽象層次上做一個整合,,所有數(shù)據(jù)都圍繞某一個主題來組織,。
這里的主題又是什么呢?比如淘寶,,“用戶成交分析”就是一個主題,,對于美團,那么“交易分析”就是一個主題了,。
2,、集成性
數(shù)據(jù)倉庫中儲存的數(shù)據(jù)是來源于多個數(shù)據(jù)源的集合,原始數(shù)據(jù)來自不同的數(shù)據(jù)源,,要整合為最終的數(shù)據(jù)集合,,需要把數(shù)據(jù)源經(jīng)過抽取->清洗->轉(zhuǎn)換的過程。(其實這就是ETL了)
3,、穩(wěn)定性
數(shù)據(jù)倉庫中保存的數(shù)據(jù)是一系列歷史快照,,不允許被修改。用戶只能通過分析工具進行查詢和分析,。
4,、時變性
數(shù)據(jù)倉庫會定期接收新的集成數(shù)據(jù),反應(yīng)出最新的數(shù)據(jù)變化,。(這個是穩(wěn)定性并不矛盾)
既然數(shù)據(jù)源有多種多樣,,那么數(shù)據(jù)倉庫要做數(shù)據(jù)集成,所依靠的就是【ETL】,。
那么什么是ETL,?
ETL的英文全稱是Extract-Transform-Load的縮寫。
- Extract:數(shù)據(jù)抽取,,也就是把數(shù)據(jù)從數(shù)據(jù)源讀取出來
- Transform:數(shù)據(jù)轉(zhuǎn)換,,把原始數(shù)據(jù)轉(zhuǎn)換成期望的格式和緯度。如果用在數(shù)據(jù)倉庫的場景下,,Transform也包含數(shù)據(jù)清洗,,清洗掉噪音數(shù)據(jù)。
- Load:數(shù)據(jù)加載,,把處理后的數(shù)據(jù)加載到目標(biāo)處,,比如數(shù)據(jù)倉庫。
那么市面上常用的數(shù)據(jù)倉庫都有哪些,?
在國內(nèi)最常用的是一款基于Hadoop的開源數(shù)據(jù)倉庫,,叫【Hive】。
Hive是基于Hadoop的數(shù)據(jù)倉庫工具,可以對儲存在HDFS上的文件數(shù)據(jù)集進行查詢和分析處理,。Hive同時也提供了類似與SQL語言的查詢語言HiveQL,,在做查詢時將HQL語句轉(zhuǎn)換成MapReduce任務(wù)進行執(zhí)行,。
這里不對Hive進行詳解,。
總結(jié)
這里簡單的說明了數(shù)據(jù)倉庫和ETL,如果存在錯誤或者不全面的地方,,請大家指正,。
(╯°□°)╯︵┻━┻
|