當前位置:首頁 » 數據倉庫 » olap用什麼資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

olap用什麼資料庫

發布時間: 2022-11-14 21:40:03

A. olap是什麼,給詳細介紹一下!

OLAP(聯機分析處理)。

什麼是聯機分析處理(OLAP)

聯機分析處理 (OLAP) 的概念最早是由關系資料庫之父E.F.Codd於1993年提出的,他同時提出了關於OLAP的12條准則。OLAP的提出引起了很大的反響,OLAP作為一類產品同聯機事務處理 (OLTP) 明顯區分開來。

當今的數據處理大致可以分成兩大類:聯機事務處理OLTP(on-line transaction processing)、聯機分析處理OLAP(On-Line Analytical Processing)。OLTP是傳統的關系型資料庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。OLAP是數據倉庫系統的主要應用,支持復雜的分析操作,側重決策支持,並且提供直觀易懂的查詢結果。下表列出了OLTP與OLAP之間的比較。

OLTPOLAP用戶操作人員,低層管理人員決策人員,高級管理人員功能日常操作處理分析決策DB 設計面向應用面向主題數據當前的, 最新的細節的, 二維的分立的歷史的, 聚集的, 多維的集成的, 統一的存取讀/寫數十條記錄讀上百萬條記錄工作單位簡單的事務復雜的查詢用戶數上千個上百個DB 大小100MB-GB100GB-TB
OLAP是使分析人員、管理人員或執行人員能夠從多角度對信息進行快速、一致、交互地存取,從而獲得對數據的更深入了解的一類軟體技術。OLAP的目標是滿足決策支持或者滿足在多維環境下特定的查詢和報表需求,它的技術核心是"維"這個概念。

「維」是人們觀察客觀世界的角度,是一種高層次的類型劃分。「維」一般包含著層次關系,這種層次關系有時會相當復雜。通過把一個實體的多項重要的屬性定義為多個維(dimension),使用戶能對不同維上的數據進行比較。因此OLAP也可以說是多維數據分析工具的集合。

OLAP的基本多維分析操作有鑽取(roll up和drill down)、切片(slice)和切塊(dice)、以及旋轉(pivot)、drill across、drill through等。

·鑽取是改變維的層次,變換分析的粒度。它包括向上鑽取(roll up)和向下鑽取(drill down)。roll up是在某一維上將低層次的細節數據概括到高層次的匯總數據,或者減少維數;而drill down則相反,它從匯總數據深入到細節數據進行觀察或增加新維。
·切片和切塊是在一部分維上選定值後,關心度量數據在剩餘維上的分布。如果剩餘的維只有兩個,則是切片;如果有三個,則是切塊。
·旋轉是變換維的方向,即在表格中重新安排維的放置(例如行列互換)。
OLAP有多種實現方法,根據存儲數據的方式不同可以分為ROLAP、MOLAP、HOLAP。

B. 技術選型 - OLAP大數據技術哪家強

Lambda架構的核心理念是「流批一體化」,因為隨著機器性能和數據框架的不斷完善,用戶其實不關心底層是如何運行的,批處理也好,流式處理也罷,能按照統一的模型返回結果就可以了,這就是Lambda架構誕生的原因。現在很多應用,例如Spark和Flink,都支持這種結構,也就是數據進入平台後,可以選擇批處理運行,也可以選擇流式處理運行,但不管怎樣,一致性都是相同的。

Kylin

Kylin的主要特點是預計算,提前計算好各個cube,這樣的優點是查詢快速,秒級延遲;缺點也非常明顯,靈活性不足,無法做一些 探索 式的,關聯性的數據分析。

適合的場景也是比較固定的,場景清晰的地方。

ClickHouse

Clickhouse由俄羅斯yandex公司開發。專為在線數據分析而設計。

Clickhouse最大的特點首先是快 ,為了快採用了列式儲存,列式儲存更好的支持壓縮,壓縮後的數據傳輸量變小,所以更快;同時支持分片,支持分布式執行,支持sql

ClickHouse很輕量級,支持數據壓縮和最終數據一致性,其數據量級在PB級別。

另外Clickhouse不是為關聯分析而生,所以多表關聯支持的不太好。

同樣Clickhouse不能修改或者刪除數據,僅能用於批量刪除或修改。沒有完整的事務支持,不支持二級索引等等,缺點也非常明顯。

與Kylin相比ClickHouse更加的靈活,sql支持的更好,但是相比Kylin,ClickHouse不支持大並發,也就是不能很多訪問同時在線。

總之ClickHouse用於在線數據分析,支持功能簡單。CPU 利用率高,速度極快。最好的場景用於行為統計分析。

Hive

Hive這個工具,大家一定很熟悉,大數據倉庫的首選工具。可以將結構化的數據文件映射為一張資料庫表,並提供完整的sql查詢功能。

主要功能是可以將sql語句轉換為相對應的MapRece任務進行運行,這樣可能處理海量的數據批量,

Hive與HDFS結合緊密,在大數據開始初期,提供一種直接使用sql就能訪問HDFS的方案,擺脫了寫MapRece任務的方式,極大的降低了大數據的門檻。

當然Hive的缺點非常明顯,定義的是分鍾級別的查詢延遲,估計都是在比較理想的情況。 但是作為數據倉庫的每日批量工具,的確是一個穩定合格的產品。

Presto

Presto極大的改進了Hive的查詢速度,而且Presto 本身並不存儲數據,但是可以接入多種數據源,並且支持跨數據源的級聯查詢,支持包括復雜查詢、聚合、連接等等。

Presto沒有使用MapRece,它是通過一個定製的查詢和執行引擎來完成的。它的所有的查詢處理是在內存中,這也是它的性能很高的一個主要原因。

Presto由於是基於內存的,缺點可能是多張大表關聯操作時易引起內存溢出錯誤。

另外Presto不支持OLTP的場景,所以不要把Presto當做資料庫來使用。

Presto相比ClickHouse優點主要是多表join效果好。相比ClickHouse的支持功能簡單,場景支持單一,Presto支持復雜的查詢,應用范圍更廣。

Impala

Impala是Cloudera 公司推出,提供對 HDFS、Hbase 數據的高性能、低延遲的互動式 SQL 查詢功能。

Impala 使用 Hive的元數據, 完全在內存中計算。是CDH 平台首選的 PB 級大數據實時查詢分析引擎。

Impala 的缺點也很明顯,首先嚴重依賴Hive,而且穩定性也稍差,元數據需要單獨的mysql/pgsql來存儲,對數據源的支持比較少,很多nosql是不支持的。但是,估計是cloudera的國內市場推廣做的不錯,Impala在國內的市場不錯。

SparkSQL

SparkSQL的前身是Shark,它將 SQL 查詢與 Spark 程序無縫集成,可以將結構化數據作為 Spark 的 RDD 進行查詢。

SparkSQL後續不再受限於Hive,只是兼容Hive。

SparkSQL提供了sql訪問和API訪問的介面。

支持訪問各式各樣的數據源,包括Hive, Avro, Parquet, ORC, JSON, and JDBC。

Drill

Drill好像國內使用的很少,根據定義,Drill是一個低延遲的分布式海量數據互動式查詢引擎,支持多種數據源,包括hadoop,NoSQL存儲等等。

除了支持多種的數據源,Drill跟BI工具集成比較好。

Druid

Druid是專為海量數據集上的做高性能 OLAP而設計的數據存儲和分析系統。

Druid 的架構是 Lambda 架構,分成實時層和批處理層。

Druid的核心設計結合了數據倉庫,時間序列資料庫和搜索系統的思想,以創建一個統一的系統,用於針對各種用例的實時分析。Druid將這三個系統中每個系統的關鍵特徵合並到其接收層,存儲格式,查詢層和核心體系結構中。

目前 Druid 的去重都是非精確的,Druid 適合處理星型模型的數據,不支持關聯操作。也不支持數據的更新。

Druid最大的優點還是支持實時與查詢功能,解約了很多開發工作。

Ku

ku是一套完全獨立的分布式存儲引擎,很多設計概念上借鑒了HBase,但是又跟HBase不同,不需要HDFS,通過raft做數據復制;分片策略支持keyrange和hash等多種。

數據格式在parquet基礎上做了些修改,支持二級索引,更像一個列式存儲,而不是HBase schema-free的kv方式。

ku也是cloudera主導的項目,跟Impala結合比較好,通過impala可以支持update操作。

ku相對於原有parquet和ORC格式主要還是做增量更新的。

Hbase

Hbase使用的很廣,更多的是作為一個KV資料庫來使用,查詢的速度很快。

Hawq

Hawq是一個Hadoop原生大規模並行SQL分析引擎,Hawq採用 MPP 架構,改進了針對 Hadoop 的基於成本的查詢優化器。

除了能高效處理本身的內部數據,還可通過 PXF 訪問 HDFS、Hive、HBase、JSON 等外部數據源。HAWQ全面兼容 SQL 標准,還可用 SQL 完成簡單的數據挖掘和機器學習。無論是功能特性,還是性能表現,HAWQ 都比較適用於構建 Hadoop 分析型數據倉庫應用。

C. olap是,什麼是數據倉庫和olap

DW的作用主要是按照業務領域的劃分進行數據存儲,並提供相關的技術元數據OLAP技術是利用DW的數據組織,形成面向領域的動態分析報表,從宏觀向圍觀進行數據差異的分析,判斷某一現象的最底層原因,例如一個公司的報表不好看,可以向下鑽去判斷是某一時間的某個營業部門的數據存在問題OM是利用大量的歷史數據分析,做各種假設,形成一個模型,再將模型反饋到歷史數據中進行驗證,從而將一個穩定可靠的模型搭建起來,作為將來類似應用的分析模型使用。這個模型的分析結果可以直接作為企業的發展趨勢判定或者員工業績的評估標准

D. OLTP與OLAP的概念以及區別是什麼

一、兩者的概述不同:

1、OLTP的概述:On-Line Transaction Processing 聯機事務處理過程(OLTP),也稱為面向交易的處理過程。

2、OLAP的概述:聯機分析處理OLAP是一種軟體技術,它使分析人員能夠迅速、一致、交互地從各個方面觀察信息,以達到深入理解數據的目的。

二、兩者的特點不同:

1、OLTP的特點:結構復雜、實時性要求高。

2、OLAP的特點:聯機分析處理的主要特點,是直接仿照用戶的多角度思考模式,預先為用戶組建多維的數據模型,維指的是用戶的分析角度。

三、兩者的用戶不同:

1、OLTP的用戶:操作人員,低層管理人員。

2、OLAP的用戶:決策人員,高級管理人員。

E. 為什麼在進行聯機分析處理(OLAP)時,我們需要一個獨立的數據倉庫,而不是直接在日常操作的資料庫上進行

一樓的回答要不要那麼搞笑啊!
我想到了幾個原因:
1、與olap相對應的是oltp,即聯機事務處理,也就是基於你說的日常操作的資料庫的處理。oltp的特點就是支持大量並發操作,如果你把olap在這個日常操作的資料庫上進行,因為olap對資料庫的操作往往是大數據量的,這樣就很耗時,就會大大降低oltp的並發性。這樣客戶或用戶的體驗就很差了。所以必須分開放。
2、我們建數據倉庫時有一個數據清洗的工作,因為有些數據比如格式不對、有空格、或者不能為空值的欄位有空值。這時我們要進行處理。在日常操作的資料庫上進行肯定不合適的,因為有些資料庫無法完成一些清洗操作。
3、而且比如我們做銀行的數據倉庫,銀行方面肯定要對客戶的信息保密,不會把所有具體的數據都讓你知道的。

F. OLAP和OLTP的區別是什麼

OLTP(on-linetransactionprocessing)翻譯為聯機事務處理。OLAP(On-LineAnalyticalProcessing)翻譯為聯機分析處理。
OLTP主要用來記錄某類業務事件的發生,如購買行為,當行為產生後,系統會記錄是誰在何時何地做了何事,這樣的一行(或多行)數據會以增刪改的方式在資料庫中進行數據的更新處理操作,要求實時性高、穩定性強、確保數據及時更新成功,像公司常見的業務系統如ERP,CRM,OA等系統都屬於OLTP。
當數據積累到一定的程度,我們需要對過去發生的事情做一個總結分析時,就需要把過去一段時間內產生的數據拿出來進行統計分析,從中獲取我們想要的信息,為公司做決策提供支持,這時候就是在做OLAP了。
因為OLTP所產生的業務數據分散在不同的業務系統中,而OLAP往往需要將不同的業務數據集中到一起進行統一綜合的分析,這時候就需要根據業務分析需求做對應的數據清洗後存儲在數據倉庫中,然後由數據倉庫來統一提供OLAP分析。所以我們常說OLTP是資料庫的應用,OLAP是數據倉庫的應用,下面用一張圖來簡要對比。

G. 什麼是聯機分析處理(OLAP)

OLAP的提出引起了很大的反響,OLAP作為一類產品同聯機事務處理 (OLTP) 明顯區分開來。 當今的數據處理大致可以分成兩大類:聯機事務處理OLTP(on-line transaction processing)、聯機分析處理OLAP(On-Line Analytical Processing)。OLTP是傳統的關系型資料庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。OLAP是數據倉庫系統的主要應用,支持復雜的分析操作,側重決策支持,並且提供直觀易懂的查詢結果。下表列出了OLTP與OLAP之間的比較。 OLTP OLAP 用戶 操作人員,低層管理人員 決策人員,高級管理人員 功能 日常操作處理 分析決策 DB 設計 面向應用 面向主題 數據 當前的, 最新的細節的, 二維的分立的 歷史的, 聚集的, 多維的集成的, 統一的 存取 讀/寫數十條記錄 讀上百萬條記錄 工作單位 簡單的事務 復雜的查詢 用戶數 上千個 上百個 DB 大小 100MB-GB 100GB-TB OLAP是使分析人員、管理人員或執行人員能夠從多角度對信息進行快速、一致、交互地存取,從而獲得對數據的更深入了解的一類軟體技術。OLAP的目標是滿足決策支持或者滿足在多維環境下特定的查詢和報表需求,它的技術核心是"維"這個概念。 「維」是人們觀察客觀世界的角度,是一種高層次的類型劃分。「維」一般包含著層次關系,這種層次關系有時會相當復雜。通過把一個實體的多項重要的屬性定義為多個維(dimension),使用戶能對不同維上的數據進行比較。因此OLAP也可以說是多維數據分析工具的集合。 OLAP的基本多維分析操作有鑽取(roll up和drill down)、切片(slice)和切塊(dice)、以及旋轉(pivot)、drill across、drill through等。 ·鑽取是改變維的層次,變換分析的粒度。它包括向上鑽取(roll up)和向下鑽取(drill down)。roll up是在某一維上將低層次的細節數據概括到高層次的匯總數據,或者減少維數;而drill down則相反,它從匯總數據深入到細節數據進行觀察或增加新維。 ·切片和切塊是在一部分維上選定值後,關心度量數據在剩餘維上的分布。如果剩餘的維只有兩個,則是切片;如果有三個,則是切塊。 ·旋轉是變換維的方向,即在表格中重新安排維的放置(例如行列互換)。 OLAP有多種實現方法,根據存儲數據的方式不同可以分為ROLAP、MOLAP、HOLAP。 ROLAP表示基於關系資料庫的OLAP實現(Relational OLAP)。以關系資料庫為核心,以關系型結構進行多維數據的表示和存儲。ROLAP將多維資料庫的多維結構劃分為兩類表:一類是事實表,用來存儲數據和維關鍵字;另一類是維表,即對每個維至少使用一個表來存放維的層次、成員類別等維的描述信息。維表和事實表通過主關鍵字和外關鍵字聯系在一起,形成了"星型模式"。對於層次復雜的維,為避免冗餘數據佔用過大的存儲空間,可以使用多個表來描述,這種星型模式的擴展稱為"雪花模式"。 MOLAP表示基於多維數據組織的OLAP實現(Multidimensional OLAP)。以多維數據組織方式為核心,也就是說,MOLAP使用多維數組存儲數據。多維數據在存儲中將形成"立方塊(Cube)"的結構,在MOLAP中對"立方塊"的"旋轉"、"切塊"、"切片"是產生多維數據報表的主要技術。 HOLAP表示基於混合數據組織的OLAP實現(Hybrid OLAP)。如低層是關系型的,高層是多維矩陣型的。這種方式具有更好的靈活性。 還有其他的一些實現OLAP的方法,如提供一個專用的SQL Server,對某些存儲模式(如星型、雪片型)提供對SQL查詢的特殊支持。 OLAP工具是針對特定問題的聯機數據訪問與分析。它通過多維的方式對數據進行分析、查詢和報表。維是人們觀察數據的特定角度。例如,一個企業在考慮產品的銷售情況時,通常從時間、地區和產品的不同角度來深入觀察產品的銷售情況。這里的時間、地區和產品就是維。而這些維的不同組合和所考察的度量指標構成的多維數組則是OLAP分析的基礎,可形式化表示為(維1,維2,……,維n,度量指標),如(地區、時間、產品、銷售額)。多維分析是指對以多維形式組織起來的數據採取切片(Slice)、切塊(Dice)、鑽取(Drill-down和Roll-up)、旋轉(Pivot)等各種分析動作,以求剖析數據,使用戶能從多個角度、多側面地觀察資料庫中的數據,從而深入理解包含在數據中的信息。 根據綜合性數據的組織方式的不同,目前常見的OLAP主要有基於多維資料庫的MOLAP及基於關系資料庫的ROLAP兩種。MOLAP是以多維的方式組織和存儲數據,ROLAP則利用現有的關系資料庫技術來模擬多維數據。

H. OLTP和OLAP有何區別

1、適用人員不同:OLTP主要供基層人員使用,進行一線業務操作。OLAP則是探索並挖掘數據價值,作為企業高層進行決策的參考。

2、面向內容不同:OLTP面向應用,OLAP面向主題;

4、數據特點不同:OLTP的數據特點是當前的、最新的、細節的, 二維的、分立的;而OLTP則是歷史的, 聚集的, 多維的,集成的, 統一的;

5、存取能力不同:OLTP可以讀/寫數十條記錄,而OLAP則可以讀上百萬條記錄;

6、工作事件的復雜度不同:OLTP執行的是簡單的事務,而OLAP執行的是復雜任務;

7、可承載用戶數量不同:OLTP的可承載用戶數量為上千個,而OLAP則是上百萬個;

8、DB大小不同:OLTP的DB 大小為100GB,而OLAP則可以達到100TB;

9、執行時間要求不同:OLTP具有實時性,OLAP對時間的要求不嚴格。

(8)olap用什麼資料庫擴展閱讀:

OLTP與OLAP的實際應用

OLAP工具是針對特定問題的聯機數據訪問與分析。它通過多維的方式對數據進行分析、查詢和報表。維是人們觀察數據的特定角度。

例如,一個企業在考慮產品的銷售情況時,通常從時間、地區和產品的不同角度來深入觀察產品的銷售情況。這里的時間、地區和產品就是維。

這些維的不同組合和所考察的度量指標構成的多維數組則是OLAP分析的基礎,可形式化表示為(維1,維2,……,維n,度量指標),如(地區、時間、產品、銷售額)。

多維分析是指對以多維形式組織起來的數據採取切片(Slice)、切塊(Dice)、鑽取(Drill-down和Roll-up)、旋轉(Pivot)等各種分析動作,以求剖析數據,使用戶能從多個角度、多側面地觀察資料庫中的數據,從而深入理解包含在數據中的信息。

應用OLTP,就必須重新定義OLTP在企業信息化體系結構中的地位。OLTP不再只是一套能處理訂單的老式應用程序。對典型的OLTP系統處理的大規模數據流更新進行同時分析,這種情況很罕見,因為一般認為這不是OLTP的目的。

數據倉庫更新固有的延遲阻礙著對最新數據的近實時分析。組織如果要對於數據的變化迅速作出反應,IT部門就必須讓OLTP產生比以往更大的作用。

參考資料來源:網路-OLTP

參考資料來源:網路-聯機分析處理