自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

實(shí)現(xiàn)高效BI分析的必備技術(shù)OLAP,一篇講明白

大數(shù)據(jù) 新聞
每個(gè)做大數(shù)據(jù)的同學(xué),都應(yīng)該聽過OLAP或者實(shí)踐過。

什么是OLAP多維分析,它究竟有啥作用,如今都有哪些流行的技術(shù)解決方案來實(shí)現(xiàn)?今天我們?cè)敿?xì)聊一聊。

文中部分內(nèi)容參考了朱凱老師的《ClickHouse原理解析與實(shí)踐》,感興趣的朋友可以買來讀一讀。

1、BI系統(tǒng)的演進(jìn)

在聊OLAP之前,我們先把時(shí)間拉長(zhǎng),聊聊BI系統(tǒng)。

(1)傳統(tǒng)BI系統(tǒng)

上個(gè)世紀(jì),IT技術(shù)迅猛發(fā)展,主要特征就是線下工作的線上化。各種各樣的IT系統(tǒng)(比如ERP、CRM等)在各個(gè)行業(yè)落地實(shí)施。相應(yīng)的,我們把這類系統(tǒng)稱之為聯(lián)機(jī)事務(wù)處理(OLTP)系統(tǒng)。

圖片

但是在企業(yè)的運(yùn)行過程中,不只是有流程審批這些工作,還有很多報(bào)表統(tǒng)計(jì)、分析決策相關(guān)的訴求。但是早期的IT系統(tǒng)的數(shù)據(jù)各自獨(dú)立,互相割裂,給分析帶來了極大的困難。

為了解決這一問題,人們提出了數(shù)據(jù)倉庫的概念,把數(shù)據(jù)集中在一起,打通隔閡,并通過分層的方式處理數(shù)據(jù)。

逐步的,在數(shù)倉基礎(chǔ)上提供數(shù)據(jù)分析的系統(tǒng)慢慢發(fā)展起來。直到90年代,BI系統(tǒng)的概念提出來,專門指代這類分析系統(tǒng)。相對(duì)于OLTP系統(tǒng),這類BI系統(tǒng)被稱為聯(lián)機(jī)分析(OLAP)系統(tǒng)。

圖片

傳統(tǒng)BI系統(tǒng)解決了很多問題,但是存在的瓶頸也是很多的。比如數(shù)據(jù)的分析效率底下、研發(fā)迭代緩慢等,都對(duì)應(yīng)用效果產(chǎn)生了負(fù)面影響。

(2)現(xiàn)代BI系統(tǒng)

最近幾年,SaaS模式的興起,為BI系統(tǒng)帶來了新的發(fā)展機(jī)遇。例如我們熟知的GA、神策分析、友盟分析等,采取的服務(wù)模式都是SaaS化。很多中小型公司的BI系統(tǒng)不再依賴于數(shù)倉的搭建。

而現(xiàn)代BI系統(tǒng)背后的OLAP技術(shù)也在不斷發(fā)展。

2、什么是OLAP

下面我們?cè)敿?xì)聊聊OLAP。

OLAP即聯(lián)機(jī)分析,又可以稱為多維分析,是關(guān)系型數(shù)據(jù)庫之父Edgar Frank于1993年提出的概念。它指的是通過多種不同的維度審視數(shù)據(jù),進(jìn)行深層次分析。主要的操作包括下鉆、上卷、切片、切塊等。

參考Excel的數(shù)據(jù)透視表的功能,大家就好理解這些操作了。數(shù)據(jù)透視表實(shí)現(xiàn)了對(duì)原始數(shù)據(jù)的各種聚合、分解、切片等操作,OLAP也是如此??梢园袿LAP理解成對(duì)公司數(shù)據(jù)庫建立一個(gè)大的透視表,通過這個(gè)透視表進(jìn)行各種維度的分析,這就是OLAP。

圖片

說白了,OLAP是用于我們進(jìn)行分析的引擎。在很多公司的數(shù)據(jù)架構(gòu)中,OLAP作為頂層分析應(yīng)用層與數(shù)據(jù)存儲(chǔ)層的中間處理層。其核心解決的是和數(shù)據(jù)分析相關(guān)的需求。

圖片

常見的OLAP架構(gòu)可以分為三類。

圖片

(1)ROLAP

第一種架構(gòu)稱為ROLAP(Relational OLAP),即關(guān)系型OLAP。顧名思義,是直接使用關(guān)系模型進(jìn)行構(gòu)建的。因此,多維分析的操作是可以直接轉(zhuǎn)換成SQL進(jìn)行查詢的。

圖片

這種架構(gòu)對(duì)數(shù)據(jù)的實(shí)時(shí)處理能力要求很高。像ClickHouse、Impala、Presto都是典型的RLOAP代表。

(2)MOLAP

第二種架構(gòu)稱為MOLAP(Multidimensional OLAP),即多維型OLAP。

圖片

MOLAP的出現(xiàn)是為了緩解ROLAP的性能問題。其核心思路是對(duì)數(shù)據(jù)預(yù)先聚合處理,以存儲(chǔ)空間換查詢時(shí)間的減少。典型的MOLAP包括Kylin、Druid等。

容易想到,如果維度較多,需要存儲(chǔ)的數(shù)據(jù)量級(jí)會(huì)有指數(shù)級(jí)地上漲。一張千萬級(jí)別的數(shù)據(jù)表,可能膨脹到需要存儲(chǔ)億級(jí)別的體量。

另外,由于需要進(jìn)行預(yù)計(jì)算,MOLAP的數(shù)據(jù)會(huì)有一定的滯后性,不能實(shí)時(shí)進(jìn)行數(shù)據(jù)分析。并且由于只保留了聚合后的結(jié)果數(shù)據(jù),無法查詢明細(xì)數(shù)據(jù)。

(3)HOLAP

第三類架構(gòu)稱為HOLAP(Hybrid OLAP),即混合架構(gòu)OLAP。

這種架構(gòu)可以理解成ROLAP和MOLAP的集成。

3、OLAP實(shí)現(xiàn)技術(shù)的演進(jìn)

前面我們也陸續(xù)介紹了OLAP相關(guān)的一些技術(shù)。下面我們簡(jiǎn)單聊聊OLAP技術(shù)的演進(jìn)過程。

(1)傳統(tǒng)關(guān)系型數(shù)據(jù)庫階段

第一個(gè)階段稱為傳統(tǒng)的關(guān)系型數(shù)據(jù)庫階段。在這個(gè)階段中,OLAP主要是以O(shè)racle、MySQL等關(guān)系型數(shù)據(jù)庫實(shí)現(xiàn)。

圖片

在ROLAP架構(gòu)下,直接使用這些數(shù)據(jù)庫作為存儲(chǔ)和計(jì)算的載體;在MOLAP架構(gòu)下,則借助物化視圖的形式實(shí)現(xiàn)數(shù)據(jù)立方體。

該階段中,無論是ROLAP還是MOLAP,當(dāng)數(shù)據(jù)體量大、維度數(shù)目多的時(shí)候,都存在嚴(yán)重的性能問題,甚至存在根本查不出結(jié)果的情況。

(2)大數(shù)據(jù)技術(shù)階段

第二個(gè)極端可以稱為大數(shù)據(jù)階段。在這個(gè)階段,主要依賴Hive等大數(shù)據(jù)技術(shù)進(jìn)行實(shí)現(xiàn)。

圖片

以ROLAP為例,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫被Hive和SparkSQL這類新型技術(shù)所取代。相比傳統(tǒng)的數(shù)據(jù)庫而言,面向海量數(shù)據(jù)的處理性能明顯提升了很多。但是在提供實(shí)時(shí)的在線查詢服務(wù)時(shí),仍然需要幾十秒甚至數(shù)分鐘才能返回。

(3)最新階段

最近幾年,一款新的OLAP解決方案ClickHouse走進(jìn)了大家的視野。其優(yōu)越的查詢計(jì)算性能讓人驚嘆。頭條、阿里、騰訊等大廠也紛紛進(jìn)行使用。

圖片

ClickHouse是由來自俄羅斯的Yandex公司研發(fā)的(Yandex類似于中國的百度,是俄羅斯的本土搜索引擎,占據(jù)俄國47%的搜索市場(chǎng)),是一款開源軟件。

其他一些常見的OLAP技術(shù)方案對(duì)比如下,供參考。

圖片

不同的技術(shù),也都存在各自的優(yōu)點(diǎn)和缺點(diǎn)。在目前階段,沒有哪種OLAP技術(shù)是萬能的靈丹妙藥,可以解決所有問題。大家在技術(shù)選型時(shí),需要結(jié)合自己的業(yè)務(wù)數(shù)據(jù)特點(diǎn),進(jìn)行選擇。不知道未來是否有一天,能出現(xiàn)完美的OLAP解決方案,一統(tǒng)江湖。期待吧。

責(zé)任編輯:張燕妮 來源: 首席數(shù)據(jù)科學(xué)家
相關(guān)推薦

2022-07-15 18:55:04

技術(shù)數(shù)據(jù)分析數(shù)據(jù)驅(qū)動(dòng)

2023-01-03 18:32:32

2024-08-07 09:02:51

2023-04-06 08:37:24

2023-12-11 18:23:21

2023-02-10 09:43:51

架構(gòu)開發(fā)

2022-07-27 07:45:53

二叉樹鏡像函數(shù)

2024-03-27 18:22:58

Hadoop部件生態(tài)

2023-06-01 21:50:53

Doris數(shù)倉SQL

2021-05-08 07:14:38

MySQL數(shù)據(jù)庫安全性

2022-05-25 11:39:12

數(shù)字化企業(yè)

2022-02-17 08:35:59

OLTPOLAP數(shù)據(jù)倉庫

2021-10-31 14:14:33

內(nèi)存接口協(xié)議

2024-06-03 14:09:48

2024-06-05 08:51:08

2020-08-17 08:17:00

大數(shù)據(jù)人工智能技術(shù)

2021-10-07 20:24:16

AIBI大數(shù)據(jù)

2021-09-14 18:27:08

Spark

2021-09-13 07:46:06

Kubectl Kubernetes 工具

2021-10-14 10:22:19

逃逸JVM性能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)