解密資料倉儲:如何有效搭建企業資料倉儲架構?

作者:帆軟行業化團隊

2024年9月26日 · 12 min read

來源:帆軟

在當前的數據驅動時代,資料倉儲已成為企業有效管理和分析數據的重要工具。隨著企業數據量的增長,將分散的資料整合並加以利用,對於提升業務決策效率和市場競爭力至關重要。本文將深入探討資料倉儲的概念、其重要性以及企業資料倉儲的架構與每層架構上的核心元件。

一、什麼是資料倉儲?

資料倉儲(Data Warehouse)是一種專門設計來儲存、管理和分析大量數據的系統。它能夠將來自不同來源的數據進行整理和整合,並轉換為有價值的信息,供企業決策者使用。資料倉儲的主要特點在於其高效的數據檢索能力,能夠支持複雜的查詢和報告需求,為企業提供長期的歷史數據分析。

什麼是資料倉儲.png
什麼是資料倉儲

二、資料倉儲的優勢

  • 數據集中管理資料倉儲可以整合來自不同部門、系統的數據,實現數據的統一管理,避免數據孤島問題。
  • 提高決策效率通過歷史數據的分析和挖掘,企業能夠快速做出精準的商業決策,應對市場變化。
  • 支持大規模數據處理資料倉儲擁有強大的數據處理能力,能夠處理大規模結構化和非結構化數據。
  • 安全性和穩定性資料倉儲系統通常具備高級別的數據安全保障,確保企業數據的完整性和機密性。

三、企業資料倉儲架構

關於資料倉儲,有一種簡單粗暴的說法,就是“任何資料倉儲都是透過資料整合工具連線一端的原始資料和另一端的分析介面的資料庫”

資料倉儲用來管理企業龐大的資料集,提供轉換資料、移動資料並將其呈現給終端使用者的儲存機制。許多架構方法以這樣或那樣的方式擴充套件資料倉儲的能力,我們講集中討論最本質的問題,在不考慮過多技術細節的情況下,整個層次架構可以被劃分為4層:

  • 原始資料層(資料來源)
  • 資料倉儲架構形態
  • 資料的採集、收集、清洗和轉換
  • 應用分析層
3261246741(1).jpg
資料倉儲架構

1、單層架構(直連)

大多數情況下,資料倉儲是一個關係型資料庫,包含了允許多維資料的模組,或者分為多個易於訪問的多主題資訊域,最簡單的資料倉儲只有一層架構。

單層架構就以為著資料倉儲與分析介面直接連線(直連),終端使用者可以直接查詢。但簡單有其弊端和適用性:

  • 傳統上資料倉儲的儲存從 100GB 起,直連可能會導致資料查詢處理速度慢,因為要直接從資料倉儲查詢準確的資料,或者是準確的輸入,過程中要過濾掉很多非必要資料,這對資料庫以及前端BI工具的效能要求相當高,基本效能不會太高。
  • 另外,在處理複雜維度分析時效能也受限,由於其緩慢性和不可預測性,很少應用在大型資料平臺。要執行高階資料查詢,資料倉儲應該在低階例項下被擴充套件從而簡化資料查詢。

2、兩層資料架構(資料集市層)

兩層架構就是在前端應用層和 EDW 層增加了資料集市層。資料集市是包含特定主題域資訊的低級別儲存庫。簡而言之,它是一個在特定主題(例如銷售、運營、市場等)下延伸了 EDW 的較小資料庫。

這種方式解決了部門級資料查詢和分析的問題,每個部門都更容易訪問到所需資料,因為每個集市僅包含給定域資訊,另外,資料集市限制了終端使用者對資料的訪問範圍,設定了一道資料權限。但是建立資料集市層需要額外的硬體資源,並整合它與資料平臺其他的資料庫。

3、三層架構(OLAP)

在資料集市層之上,我們通常會使用聯機分析(OLAP)處理多維資料集(cube)。OLAP 資料集是一類從多維度描述資料的特定資料庫。關係型資料庫只能表示二維資料,而 OLAP 允許在多維度下編譯資料並且在維度之間移動。

OLAP專用於維度建模資料的分析,然後透過BI將OLAP的結果以圖表的方式展現出來。

OLAP 的業務價值在於允許對資料進行切片、切片以多維度分析,以提供對所有企業資料或特定資料集市的訪問,現在基本已成為主流的架構應用。

以下這張架構圖使用最廣泛的體系結構,它由頂層、中層和底層組成。

資料倉儲三層架構.png
資料倉儲三層架構(OLAP)

底層:資料倉儲伺服器的資料庫作為底層,通常是一個關係資料庫系統,使用後端工具將資料清理、轉換並載入到該層。

中間層:資料倉儲中的中間層是使用ROLAP或MOLAP模型實現的OLAP伺服器。對於使用者,此應用程式層顯示資料庫的抽象檢視,這一層還充當終端使用者和資料庫之間的中介。

頂層:頂層是前端應用層,連線資料倉儲並從資料倉儲獲取資料或者API,通常的應用包括資料查詢、報表製作、BI資料分析、資料探勘還有一些其他的應用開發。

3117020152(1).jpg

 

四、資料倉儲核心元件

資料倉儲的4層核心元件:底層源資料庫(資料儲存方案)、ETL、前端應用、還有OLAP服務。下面分別介紹下。

1、資料倉儲資料庫

底層的資料倉儲伺服器通常是一個關係資料庫系統(各種表關聯的sql統計會更方便一些,非關係型資料庫目前在這方面還是有所區別)。常用的方案有Oracle、db2、sqlserve 還有essbase、greenplum、teredata等資料倉儲專業解決方案。

1、採用傳統關係型資料庫,或經過功能擴充套件的MPP資料庫

① 傳統的關係型資料庫有:oracle、mysql、DB2

② 大規模並行處理資料庫:Vertica、Teradata(商業)、Greenplum (開源)

Teradata老江湖了,銀行業使用較多,但成本也是真的貴,目前我們做專案較多的是用Greenplum,算是業界最快和最高性價比的高階資料倉儲解決方案,Greenplum是基於PostgreSQL的,於2015年開源。我知道的國內四大行有3家在用,5大物流公司有4家在用,不少公司在從Teradata 遷移到 GP。

2、大資料平臺架構:Hadoop+Hive

這套方案有多通用不用多說了,通常是這樣的組合:TB級資料用PG,百TB級資料用GP,PB級i上資料用Hadoop。

2、採集、收集、清洗和轉換工具(ETL)

要選擇最適合的ETL工具,企業需要綜合考慮自身的業務需求、技術架構、團隊技能以及預算等因素。以下是幾個實用的選型步驟:

  • 明確需求:企業需要明確自己的資料處理需求,包括資料來源的種類、資料量的大小、處理的複雜度以及實時性要求。
  • 評估工具的適用性:根據需求,評估每個候選工具的功能、效能和擴充套件性。可以透過試用版或開源版本進行實際測試,以瞭解工具的使用體驗和效果。
  • 考慮團隊技能:如果團隊中有熟悉特定工具的成員,可以優先考慮該工具,這樣能夠減少學習曲線,快速上手。
  • 預算規劃:根據預算進行權衡,選擇價效比最高的工具。開源工具雖然免費,但可能需要投入更多的時間和人力進行維護;而商業工具雖然成本較高,但能夠提供更全面的支援和服務。

這裡推薦FineDataLink它不僅可以轉化不統一或質量低的資料,還可以將資料清洗和處理集中完成,將資料整合到資料倉儲,減少資料連線和錯誤重試等繁瑣的開發時間。完成資料清洗後,結果表會同步至資料庫內,方便其他應用快速呼叫。同時可以進行實時進行平臺級任務運維監控管理,打造資料融合運維的“管理戰情室”。 透過任務級別的結果通知,配合任務概覽,對最近報錯、異常中斷的任務,檢視詳情進行修正處理,保證以保證所有任務的正常執行。FineDataLink具備以下突出的優點:

1.低程式碼:FineDataLink採用拖拉拽式的介面設計,可以透過低程式碼或無程式碼的方式快速構建資料流程,使用者可以輕鬆參與資料整合和處理

2.高時效性:採用流程化的ETL、ELT開發模式,具備資料毫秒級同步能力,能夠滿足業務場景中對資料實時性的要求。基於CDC、binlog、LogMiner等技術,FineDataLink能夠實現對資料來源的實時增量同步,確保資料的時效性和準確性。

3.整合資料開發:同為帆軟推出的產品,FineDataLink能夠為報表軟體FineReport和自助式BI工具FineBl提供高質量的資料支援。搭配使用,可以很好地實現資料整合、處理、儲存、分析和分享。

4.維運成本低:FDL提供高效智慧運維,任務支援靈活排程、執行狀態實時監控,便捷的操作將會釋放運維人員巨大的工作量。

 

image.png
用於搭建資料倉儲的ETL工具

3、資料倉儲前端應用工具

資料倉儲平臺的搭建,最終是為了梳理出有用資料、提供有價值資訊,幫助業務做出正確決策

前端應用工具主要就是和資料倉儲不同環節的資料互動,這些應用一般可以分為4類:

  • 資料查詢和報表工具
  • BI即席分析工具
  • 資料探勘工具
  • 各種基於資料倉庫或資料集市的應用開發工具

其中資料分析工具主要針對OLAP伺服器,報表工具、資料探勘工具主要針對資料倉儲。

1、資料查詢和報表工具

通常用來生成一些固定類報表,自動化報表,支援列印和計算等大批次批處理作業。

流行的報表工具,在舊資料倉儲時代主要是IBM的BO、Oracle的BIEE、還有微軟和cognos,整體打包在資料倉儲解決方案裡,報表作為一個元件存在。但是隨著傳統型數倉,架構重成本貴,很多公司在專案上會自己考慮設計架構,而不是直接強套昂貴的解決方案,包括很多開源元件/平臺的使用。

有關報表工具,現在專案上用的比較多的是帆軟FineReport,針對不同企業數倉架構以及報表需求的適用性較廣。比如對接各種資料庫直接生成報表;對採集整理後的資料進行多維報表展現,支撐業務分析報表;對接集團性資料倉儲,構建資料中心平臺,形成決策分析平臺

image.png

 

2、BI自助分析工具

BI一般都集成了OLAP伺服器和報表展示功能。分析型BI基於多維資料庫的概念,能多維視角分析資料,通常是從資料倉儲中抽取詳細資料的一個子集並經過必要的聚集儲存到OLAP儲存器中供前端BI分析工具讀取。

BI在前端透過拖拽資料欄位,多維度實施展現資料,最終生成各種分析報告。常用的BI工具有PowerBI、Tableau、FineBI,還有開源的superset。個人使用多用前兩者,企業專案上選型多用FineBI,因為要考慮效能、服務方案等。剩餘就是自研或者開源,superset算是比較公認的開源BI。

image.png

 

BI工具做什麼的不多說了,在專案選型的時候主要考慮上手難度(考慮沒技術基礎的業務用),資料處理效能,其他就是技術選型的事,還有成本。

3、資料探勘工具

OLAP是將資料多維視角呈現分析,資料探勘則是應用的演算法來揭示資料的規律性,比如相關性、模式和趨勢等。資料探勘工具就是做這個的,它能讓一些演算法和過程自動化。

舉個例子,比如銀行裡資料倉儲以面向“客戶”為主題進行資料的儲存:

OLAP可以實現資料按照客戶的基本資訊、儲蓄賬戶資訊、歷史餘額資訊、銀行交易日誌等,以報表或者視覺化的方式呈現分析,多方面掌握客戶動態,發現數據的問題,更好的針對不同型別使用者進行特定性營銷。

資料探勘則是通過歷史資料建立模型,在擬合曆史的基礎上,分析未來趨勢,判斷哪些因素的改變將很可能意味著客戶的最終流失,進而避免其發生。

常用的資料探勘工具,R、Python還有SPSS,基本都是開源個人可用的。和BI和報表不同,市面上少有為客戶提供定製化資料分析和挖掘的商業工具或者專案服務,因為行業性太強,需要非常熟悉業務、資料、平臺,所以我見過基本都是自己養資料分析團隊或者挖這類的人才。

4、應用開發

以上報表型、分析型的資料產品,也會有延申出來的各種特定業務的資料決策系統。比如銀行業基於管理層監控的的行長戰情室、零售業基於門店資料經營的決策系統,以及電商平臺的營銷參謀,都是基於這樣的邏輯——基於業務深度應用。此時數倉就是提供一個服務平臺的角色,比如現在很火的資料中臺也大體是這個邏輯,將資料服務化,具體不懂就不班門弄斧了。

這樣的服務,當然需要自己開發。

在這三層之間其實還有中間層OLAP伺服器,典型實現為ROLAP模型或MOLAP模型。現在很多成熟的BI工具都是集成了OLAP伺服器的,所以通常我們只需要選擇ETL工具以及儲存方案和視覺化BI方案即可,所以OLAP本文也就不多講了。

帆軟產品免費試用

企業戰情室報表軟體

企業戰情室報表軟體

複雜報表/戰情室/資料填報/數位孿生

企業商業智慧BI軟體

企業商業智慧BI軟體

自助資料處理/Dashboard/探索分析

一站式資料整合平台

一站式資料整合平台

資料同步/ETL資料開發/API資料服務

免費資源下載

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

×

立即下載

姓名

郵箱

公司完整名稱

管道了解

-- 您是怎麽瞭解的我們 --

網路搜尋
Facebook臉書
媒體/部落格/論壇
YouTube
電子報
線下展會
線下課程
他人推薦
其他

職位

-- 選擇您的職稱 --

IT資訊&數據部門
一般部門
管理/ 決策者
老師
學生
其他

是否有報表/BI/數位建設需求?

-- 請選擇 --

沒有
不確定

手機號碼

SMS 驗證碼

我們很樂意傾聽你的需求,解答您的疑問,並提供專業建議, 助力您的企業實現智慧轉型!

×

意見回饋

姓名

電郵

公司

國家/地區

-- select an option --

電話

投訴原因

請選擇投訴原因

代理商問題
產品問題
技術支援服務問題
專案問題
銷售問題
商務問題
行銷問題
其他

投訴內容