按照業務領域畫資料架構圖 業務架構 資料架構

十一vs十一發表於2024-04-21

什麼是資料應用
資料應用是透過各種各樣的資料分析方式將資料展示出來,給決策者、管理者、運營等人員透傳資料價值的工具,幫助決策者、管理者及時調整戰略目標、公司目標、業務目標,幫助運營人員更好地實現精細化運營、提升運營效率。

從整個大資料架構來看,它處於整個大資料體系的最上層,也就是資料應用層,以我所參與開發的電商業務資料應用為例,在這一層主要有以下幾種型別的資料應用:

資料應用架構


整個電商資料應用架構可以分為七層,底層資料架構使用Lamda架構模式,上層資料應用使用J2EE微服務架構模式:

1、業務系統: 業務系統是離線資料和實時資料的來源,主要分為業務資料和日誌資料。業務資料包括使用者資料、訂單資料、商品資料、銷量資料等,日誌資料包括行為日誌資料、系統日誌資料等。

2、資料接入層: 資料接入層由一系列資料採集元件構成,包括DataHub資料接入匯流排、Flume和FlinkCDC等日誌採集服務,這些資料採集元件將業務系統產生的資料採集並儲存到Kafka訊息佇列中。

3、訊息佇列: 訊息佇列作為分散式、高併發、高效能、高吞吐的資料儲存中介軟體,提供過期資料清理、資料重複消費能力,主要是由多個Kafka組成的訊息佇列叢集,不僅可以解耦資料生產方和資料使用方,而且可以快速擴充套件提高資料處理吞吐量。

4、資料計算層: 按對資料的實時性要求來區分,資料計算層可以分為離線資料計算、實時資料計算,目前我們使用的資料架構是Lamda架構,資料的準確性以離線資料作為參考。離線資料計算使用Spark,實時資料計算使用Flink。

5、資料儲存層: 在Lamda架構資料處理基礎上,將處理後的離線資料和實時資料分別儲存到各自對應的儲存系統中。資料儲存層主要負責三類資料的儲存:

(1)後設資料: 使用MySQL儲存,這部分資料與資料服務層或者資料應用層互動,比如指標字典資料、許可權資料等,提供OLTP線上事務資料服務,完成對這些資料的增刪改查操作。

(2)離線資料: 離線數倉分為五層:ODS、DWD、DWM、DWS和ADS層,資料主要使用Hive+ClickHouse儲存。Hive作為離線數倉,儲存ODS、DWD、DWM、DWS、ADS層的全量資料,由於這些資料需要實時查詢和互動式分析,因此每天凌晨會將ADS層資料同步到ClickHouse或StarRocks中。為了降低資料應用方資料使用和理解的難度,資料經過層層加工之後,輸出到ADS層的ClickHouse或者StarRocks中,以明細寬表或Cube寬表的形式提供給資料應用方使用。

(3)實時資料: 實時數倉主要分為兩層:ODS層和DWD層,資料主要使用Kafka儲存。Flink消費Kafka中的資料,對資料經過過濾、清洗、擴維之後,會將處理好的明細資料儲存到ClickHouse或者StarRocks中。明細資料的現場計算主要由OLAP引擎負責,我們目前採用ClickHouse為主、StarRocks為輔的儲存架構,它們都以MPP架構實現大規模資料的平行計算,提供準實時的結果,因此我們可以利用它們的實時計算能力完成明細資料的現場計算。

6、資料服務層: 資料服務層主要銜接數倉同學和資料應用後端開發同學,統一資料建模與使用規範,提供統一的指標管理服務、統一的指標查詢服務以及統一的預警服務,這些服務採用J2EE微服務架構對外提供標準的API,統一資料出口,從而提高開發效率,降低資料使用難度,方便後續對資料應用服務進行治理和維護。

7、資料應用層: 資料應用層是資料的輸出展示層,主要以各種各樣的資料產品為載體,根據需求將資料展示給使用者,給使用者提供資料分析和預警的功能,從而幫助使用者實現資料化、精細化管理。該層採用前後端分離的架構,後端採用J2EE微服務架構對外提供各種各樣的資料查詢API,前端使用主流的前端框架完成資料的展示。

最後,整個資料應用體系的建設目標是業務驅動、快速落地,因為資料的重要價值之一就在於它的時效性,我們可以配合快速開發的資料工具和定製化的資料應用產品完成整個資料需求的支撐,沉澱工具、流程和方法論,實現資料能力的快速輸出,賦能業務部門,提高實現資料價值的效率。
-----------------------------------
按照業務領域畫資料架構圖 業務架構 資料架構
https://blog.51cto.com/u_12195/9565275

相關文章