如何建設(shè)企業(yè)級數(shù)據(jù)倉庫_多維數(shù)據(jù)庫模型的設(shè)計你知道多少
企業(yè)級的數(shù)據(jù)倉庫應(yīng)該如何建立?為什么要建立企業(yè)級數(shù)據(jù)倉庫?對于大部分的企業(yè),數(shù)據(jù)一般存在兩個地方,一個是業(yè)務(wù)數(shù)據(jù)庫,一個是日志。一般來講,數(shù)據(jù)庫數(shù)據(jù)容量有限,對于歷史標(biāo)記刪除的記錄一般會做定時清理,但是這些數(shù)據(jù)往往還是很有價值的。數(shù)據(jù)庫計算能力也有限,如果要做一些數(shù)據(jù)分析,則會浪費寶貴的計算資源。
一些數(shù)據(jù)分析會橫跨不能的部門,不同的業(yè)務(wù)線,往往需要不同DB之間,甚至需要跟日志做一些關(guān)聯(lián),這時就會有一個新的部門,數(shù)據(jù)倉庫部門或者數(shù)據(jù)分析部門。此部門需要做第一件事情就是需要把不同的業(yè)務(wù)線的數(shù)據(jù)統(tǒng)統(tǒng)收集到一個中心。以往選擇數(shù)據(jù)處理技術(shù)往往是一些商業(yè)的數(shù)據(jù)倉庫。在Hadoop技術(shù)來臨之后,由于其易用性、高度擴展性、低成本的優(yōu)勢,受到了越來越多的公司使用。本文將簡單介紹使用阿里云開源大數(shù)據(jù)生態(tài)系統(tǒng)E-MapReduce建設(shè)數(shù)據(jù)倉庫。
建立數(shù)據(jù)倉庫
大致的架構(gòu)如下圖所示:
· 在云數(shù)據(jù)庫RDS mysql部分的數(shù)據(jù),可以每天晚上同步一次全量的數(shù)據(jù)到離線存儲中,使用emapreduce sqoop,按照日期建立分區(qū)。 查詢時,可以按照
select count(*) form cluster where ds=‘2016-08-28’
· 日志數(shù)據(jù)可以采取logservice同步到云存儲OSS中,或者使用flume同步到emapreduce hdfs中。也是按照日期做分區(qū)。
日志收集好后,就可以采取hive或者spark引擎分析日志了,比如出報表,則可以把算完的數(shù)據(jù)插入到emapreduce hbase中或者云數(shù)據(jù)庫RDS mysql中,再通過 阿里云提供的quick bi出報表。 每天早上就可以看到 前一天的業(yè)務(wù)狀況等信息了。
作業(yè)執(zhí)行
同步作業(yè)及分析作業(yè)可以采取阿里云emapreduce提供的執(zhí)行計劃來運行,可以新建一個執(zhí)行計劃,串聯(lián)多個作業(yè),當(dāng)同步作業(yè)完成后,就開始分析作業(yè)。 這里還提供了 作業(yè)失敗報警,啟動超時報警等實用功能。





