您好,登錄后才能下訂單哦!
這篇文章主要介紹“數(shù)據(jù)倉(cāng)庫(kù)和Olap的區(qū)別是什么”,在日常操作中,相信很多人在數(shù)據(jù)倉(cāng)庫(kù)和Olap的區(qū)別是什么問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”數(shù)據(jù)倉(cāng)庫(kù)和Olap的區(qū)別是什么”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
大數(shù)據(jù)領(lǐng)域體系非常龐大,最近自己在了解數(shù)倉(cāng)部分,做些記錄。
首先解釋OLTP和OLAP的概念,作為開發(fā)對(duì)OLTP比較了解,操作對(duì)象是數(shù)據(jù)庫(kù),也稱為OLTP數(shù)據(jù)庫(kù)(比如Mysql),主要用于CRUD操作,講求高并發(fā)、低延時(shí),一般作為業(yè)務(wù)數(shù)據(jù)使用。
而OLAP則是聯(lián)機(jī)分析處理,做數(shù)據(jù)分析用的,比如進(jìn)行數(shù)據(jù)聚合操作,它操作的數(shù)據(jù)源比較大,對(duì)性能要求相對(duì)較低。操作對(duì)象是數(shù)倉(cāng)。有的時(shí)候OLAP也等同數(shù)倉(cāng)。
數(shù)倉(cāng)一般是多維模型模型,數(shù)據(jù)分層,ETL處理。它的數(shù)據(jù)源來源很多,格式也很多,比如結(jié)構(gòu)化的數(shù)據(jù),非結(jié)構(gòu)化的數(shù)據(jù)。
對(duì)于ETL處理,需要對(duì)業(yè)務(wù)的理解非常透,比如MySQL是作為業(yè)務(wù)使用的,比如商品業(yè)務(wù)可能有很多類型的表,而到數(shù)倉(cāng)后,可能會(huì)重新建模,比如分為維度表和事實(shí)表。
現(xiàn)在我們面臨兩個(gè)問題,第一就是ETL機(jī)制非常弱,基本上是原樣將MySQL庫(kù)導(dǎo)入到數(shù)倉(cāng);第二業(yè)務(wù)庫(kù)變更后,需要重新構(gòu)建,對(duì)于業(yè)務(wù)數(shù)據(jù)庫(kù)的理解總是落后的。
那數(shù)倉(cāng)有什么用呢,可以進(jìn)行交互式查詢,數(shù)據(jù)分析,數(shù)據(jù)挖掘,BI報(bào)表。
根據(jù)不同的理解,數(shù)倉(cāng)也有很多的分類,比如:
1:根據(jù)建模分為MOLAP,ROLAP,HOLAP
MOLAP需要進(jìn)行預(yù)計(jì)算,將可能的查詢結(jié)果存儲(chǔ)起來,適合分析比較穩(wěn)定的場(chǎng)景,Kylin是這個(gè)領(lǐng)域的解決方案。
ROLAP是目前的主流,基于關(guān)系模型,構(gòu)建在多維數(shù)據(jù)模型上,一般通過SQL就能查詢。
2:對(duì)于ROLAP:有兩種解決方案,一種是寬表模型,比如現(xiàn)在比較流行的clockhouse;另外就是多表組合模型,比如Presto。
3:從實(shí)時(shí)性分:分為實(shí)時(shí)數(shù)倉(cāng)和離線數(shù)倉(cāng),本文主要理解離線數(shù)倉(cāng),也叫批處理,就是數(shù)據(jù)是提前準(zhǔn)備好的,比如Hadoop就是解決這類問題的。
4:對(duì)于OLAP來說,處理的數(shù)據(jù)是非常大的,為了加快處理,有兩種解決方案:并行處理(比如 Hadoop 的Mapreduce,Spark,或者M(jìn)PP架構(gòu)的Presto),另外就是預(yù)計(jì)算(比如Kylin)。
那具體如何選型呢?
1:我們用的是比較常規(guī)的Hadoop,HDFS作為分布式存儲(chǔ),Mapreduce作為并行計(jì)算框架,但HDFS只是存儲(chǔ),沒有結(jié)構(gòu)化的概念,那怎么做數(shù)倉(cāng)呢?
使用Hive解決了兩個(gè)問題,首先它存儲(chǔ)表結(jié)構(gòu)元數(shù)據(jù),其次Hive查詢中的sql自動(dòng)變?yōu)镸R并行任務(wù),MR從元數(shù)據(jù)中讀取信息,然后去HDFS中讀取數(shù)據(jù),最后進(jìn)行運(yùn)算。
一般情況下這屬于離線數(shù)倉(cāng),HDFS存儲(chǔ)的是T-1的全量數(shù)據(jù)(不支持?jǐn)?shù)據(jù)增刪改查,只能整個(gè)文件覆蓋),使用sqoop工具將MySQL導(dǎo)入到HDFS中。
2:MPP on Hadoop 的解決方案
由于MR操作HDFS的中間結(jié)果還是在磁盤,所以運(yùn)算還是很慢的。
Presto是基于MPP架構(gòu),充分利用各個(gè)節(jié)點(diǎn)的cpu能力,中間結(jié)果放入內(nèi)存,減少磁盤消耗。
比如Presto作為SQL執(zhí)行引擎,本身不存儲(chǔ)數(shù)據(jù),它可以直接調(diào)用MySQL進(jìn)行運(yùn)算。
也可以調(diào)用Hive,讀取元數(shù)據(jù),然后操作HDFS的數(shù)據(jù),進(jìn)行并行運(yùn)算。
有了Hive,有了Presto,結(jié)合可視化的BI工具,就能產(chǎn)生數(shù)據(jù)報(bào)表,進(jìn)行數(shù)據(jù)分析和挖掘。
最后簡(jiǎn)單說下BI,有個(gè)公式:
BI平臺(tái)=數(shù)據(jù)倉(cāng)庫(kù)+OLAP服務(wù)/報(bào)表。
到此,關(guān)于“數(shù)據(jù)倉(cāng)庫(kù)和Olap的區(qū)別是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。