首页
/
每日頭條
/
科技
/
olap數據庫怎麼使用
olap數據庫怎麼使用
更新时间:2024-11-27 10:37:25

轉載/NK冬至 首席數據科學家

每個做大數據的同學,都應該聽過OLAP或者實踐過。

什麼是OLAP多維分析,它究竟有啥作用,如今都有哪些流行的技術解決方案來實現?今天我們詳細聊一聊。

文中部分内容參考了朱凱老師的《ClickHouse原理解析》,感興趣的朋友可以買來讀一讀。

1、BI系統的演進

在聊OLAP之前,我們先把時間拉長,聊聊BI系統。

(1)傳統BI系統

上個世紀,IT技術迅猛發展,主要特征就是線下工作的線上化。各種各樣的IT系統(比如ERP、CRM等)在各個行業落地實施。相應的,我們把這類系統稱之為聯機事務處理(OLTP)系統。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)1

但是在企業的運行過程中,不隻是有流程審批這些工作,還有很多報表統計、分析決策相關的訴求。但是早期的IT系統的數據各自獨立,互相割裂,給分析帶來了極大的困難。

為了解決這一問題,人們提出了數據倉庫的概念,把數據集中在一起,打通隔閡,并通過分層的方式處理數據(關于數據倉庫,可以回顧《數據倉庫基礎知識》,數據倉庫的核心思路維度建模,參考文章《維度建模》。文章都有着詳細的講解,這裡不展開了)。

逐步的,在數倉基礎上提供數據分析的系統慢慢發展起來。直到90年代,BI系統的概念提出來,專門指代這類分析系統。相對于OLTP系統,這類BI系統被稱為聯機分析(OLAP)系統。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)2

傳統BI系統解決了很多問題,但是存在的瓶頸也是很多的。比如數據的分析效率底下、研發叠代緩慢等,都對應用效果産生了負面影響。

(2)現代BI系統

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

而現代BI系統背後的OLAP技術也在不斷發展。

2、什麼是OLAP

下面我們詳細聊聊OLAP。

OLAP即聯機分析,又可以稱為多維分析,是關系型數據庫之父Edgar Frank于1993年提出的概念。它指的是通過多種不同的維度審視數據,進行深層次分析。主要的操作包

括下鑽、上卷、切片、切塊等。

參考Excel的數據透視表的功能,大家就好理解這些操作了。數據透視表實現了對原始數據的各種聚合、分解、切片等操作,OLAP也是如此。可以把OLAP理解成對公司數據庫建立一個大的透視表,通過這個透視表進行各種維度的分析,這就是OLAP。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)3

說白了,OLAP是用于我們進行分析的引擎。在很多公司的數據架構中,OLAP作為頂層分析應用層與數據存儲層的中間處理層。其核心解決的是和數據分析相關的需求。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)4

常見的OLAP架構可以分為三類。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)5

(1)ROLAP

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

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)6

這種架構對數據的實時處理能力要求很高。像ClickHouse、Impala、Presto都是典型的RLOAP代表。

(2)MOLAP

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

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)7

MOLAP的出現是為了緩解ROLAP的性能問題。其核心思路是對數據預先聚合處理,以存儲空間換查詢時間的減少。典型的MOLAP包括Kylin、Druid等。

容易想到,如果維度較多,需要存儲的數據量級會有指數級地上漲。一張千萬級别的數據表,可能膨脹到需要存儲億級别的體量。

另外,由于需要進行預計算,MOLAP的數據會有一定的滞後性,不能實時進行數據分析。并且由于隻保留了聚合後的結果數據,無法查詢明細數據。

(3)HOLAP

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

這種架構可以理解成ROLAP和MOLAP的集成。

3、OLAP實現技術的演進

前面我們也陸續介紹了OLAP相關的一些技術。下面我們簡單聊聊OLAP技術的演進過程。

(1)傳統關系型數據庫階段

第一個階段稱為傳統的關系型數據庫階段。在這個階段中,OLAP主要是以Oracle、MySQL等關系型數據庫實現。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)8

在ROLAP架構下,直接使用這些數據庫作為存儲和計算的載體;在MOLAP架構下,則借助物化視圖的形式實現數據立方體。

該階段中,無論是ROLAP還是MOLAP,當數據體量大、維度數目多的時候,都存在嚴重的性能問題,甚至存在根本查不出結果的情況。

(2)大數據技術階段

第二個極端可以稱為大數據階段。在這個階段,主要依賴Hive等大數據技術進行實現。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)9

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

(3)最新階段

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

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)10

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

其他一些常見的OLAP技術方案對比如下,供參考。

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)11

不同的技術,也都存在各自的優點和缺點。在目前階段,沒有哪種OLAP技術是萬能的靈丹妙藥,可以解決所有問題。大家在技術選型時,需要結合自己的業務數據特點,進行選擇。不知道未來是否有一天,能出現完美的OLAP解決方案,一統江湖。期待吧。

關于OLAP就分享這些,覺得不錯就點個關注吧~

olap數據庫怎麼使用(OLAP--實現高效數據分析的必備技術)12

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
手機有哪些功能
手機有哪些功能
1、基本通訊功能,打電話、發短信。這些是手機的基礎功能此項功能必須實現,否則就不是手機了。2、娛樂功能。包含了相機、收音機、媒體播放器、遊戲等主要豐富我們的日常生活。為什麼收音機不是通訊功能,因為它隻是一個接受過程,不包含發送功能。3、智能機最大的進步是它結合了手機、音視頻播放及其它個人數據處理的幾乎所有的服務。智能手機的出現使得大多數用戶不用再帶很多其它的設備就可以完成想做的事情。4、智能手機的
2024-11-27
微信不能換綁手機号怎麼辦
微信不能換綁手機号怎麼辦
演示機型:Iphone12系統版本:iOS14.4.1APP版本:微信8.0.0微信中可以更換手機号碼,錯誤的操作方法就會導緻更換手機号失敗。打開手機微信,點擊我的頁面下方的設置。在設置頁面上方打開賬号與安全。然後在頁面上方打開手機号。在彈出頁面下方點擊更換手機号。在頁面輸入新的手機号後點擊右上角下一步。然後在更換手機号流程指引頁面點擊下一步,然後跟着步驟提醒操作即可。
2024-11-27
大疆靈眸Osmo手機雲台2如何連接手機
大疆靈眸Osmo手機雲台2如何連接手機
1、首先在手機上打開DJIGOAPP,然後将手機夾持在靈眸Osmo手機雲台2上,并打開手機藍牙。2、長按靈眸Osmo手機雲台2操作面闆上的M鍵,啟動靈眸Osmo手機雲台2。3、打開手機的藍牙菜單,找到靈眸Osmo手機雲台2的藍牙設備并連接。4、打開DJIGOAPP,向右滑動主界面,将所選設備切換到靈眸Osmo手機雲台2,并點擊連接設備。5、在藍牙設備列表中找到自己的靈眸Osmo手機雲台2,并點擊連
2024-11-27
小紅書怎麼置頂評論
小紅書怎麼置頂評論
演示機型:Iphone12&&華為P40&&小米11系統版本:iOS14.4&&EMUI11&&MIUI12.0.7APP版本:小紅書v6.91.1在小紅書搜索“視頻号”,會看到報名通道。視頻号認證是免費的。報名條件有很多,但是都很簡單能完成,隻有一項:發布超過1分鐘的視頻。做一條或者找一條視頻發布,視頻号通過後删除即可。視頻号認證通過之後,将小紅書app升級到最高版本,就可看到評論置頂功能了。用
2024-11-27
電腦恢複出廠設置右鍵總轉圈怎麼辦
電腦恢複出廠設置右鍵總轉圈怎麼辦
1、首先點擊windows鍵+R鍵,輸入msconfig,點擊确定。2、接着點擊工具”,找到更改UAC設置,點擊啟動。3、最後将滑塊滑到最底,點擊确定”。
2024-11-27
Copyright 2023-2024 - www.tftnews.com All Rights Reserved