999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

企業輕量化大數據架構研究

2023-09-07 14:24:28李軍
科技資訊 2023年15期
關鍵詞:數據庫

李軍

關鍵詞: 輕量化大數據架構 MPP 數據庫 數據任務調度 數據接入

中圖分類號: TP392 文獻標識碼: A 文章編號: 1672-3791(2023)15-0062-04

1 常用大數據架構

與傳統數據分析一樣,大數據信息時代首先要考慮的就是數據存儲問題[1],其次是數據的計算問題。在Hadoop 生態中,包含數十種大數據存儲和計算相關組件,如HDFS、Yarn、Hive、HBase、Presto、Azkaban、Spark、Flink、Flume 等。在不同業務場景中,通過不同組件的組合來滿足多樣的需求。在Hadoop 生態大數據架構中,常見的架構有如下幾種。

1.1 離線計算架構

應用Hadoop(HDFS、YARN、MapReduce、Hive 等)的存儲和計算能力來替代傳統的BI 組件,實現大數據的ETL 批處理計算。該架構的優點是能夠處理海量的大數據,支持數據重播和歷史統計,缺點是缺乏實時的支撐。

1.2 流式架構

通過流式計算(Spark、Flink 等)實時對數據流進行分析。此架構的優點是數據的實效性非常高,缺點是對于數據的重播和歷史統計無法很好的支撐。

1.3 Lamda架構

實時和離線分別處理,最后統一對外提供服務,但在使用過程中,需要維護兩套代碼[2]。此架構的優點是能夠同時滿足實時計算和離線計算的需求,缺點是架構復雜,開發周期長,可能出現實時與批量計算結果不一致等問題。

1.4 Kappa 架構

改進流計算系統來解決數據全量處理的問題,使實時計算和批處理過程使用同一套代碼。Kappa 架構,解決了代碼維護和一致性問題,但是在kafka 里進行各種邏輯計算,邏輯越來越復雜,有數據不一致的問題[2]。

1.5 Unifield 架構

對Lamda 進行了改造,將機器學習和數據處理揉為一體。該架構的優點是提供了一套數據分析和機器學習結合的架構方案,缺點是實施復雜度較高。

以上幾種大數據架構,雖然在不同程度能夠滿足實時計算和離線計算的需求,但是其架構都有一定的復雜性。以上述5 種架構中最簡單的離線計算架構為例,部署一個簡單的離線計算架構的大數據環境至少需要部署24 個Java 組件節點,如圖1 所示。按照平均一個節點需4 G 內存計算,則至少需要96 G 內存。由于Hadoop 生態的大數據架構比較耗費資源,且架構復雜,導致實施Hadoop 大數據架構的人力、財力成本較高,很多中小型的項目因此棄用Hadoop 大數據技術。

2 輕量化大數據架構特性

大部分企業應用中的大數據容量規模在1 TB~10 PB之間。對于這些容量規模不大的大數據應用,應用Hadoop架構比較耗費資源,且在實時計算業務場景中需要較大開發工作量。因此,輕量化的大數據架構,在中小型項目中有較大需求。

為滿足企業應用中大部分的大數據需求,本文研究的輕量化大數據組件主要滿足以下特性:(1)部署的組件盡量少,組件占用資源盡量低;(2)支持可配置的數據接入;(3)支持可配置的ETL 計算;(4)支持準實時計算;(5)支持秒級DWD、DWS 層數據查詢;(6)支持TB 級到10 PB 級別的數據存儲和計算。

3 輕量化大數據架構實現方案

3.1 概述

在滿足企業大數據需求的同時,主要從部署架構輕量化、開發架構輕量化兩方面來設計企業級輕量化大數據架構。其中,部署架構輕量化是指部署的組件盡量少、占用的CPU、內存等資源盡量低;開發架構輕量化是指通過少量代碼開發即可實現企業大數據業務需求。具體實現方案為:首先,在核心的大數據計算和存儲層面,采用輕量級的MPP 數據庫(Apache Doris)替代Hadoop 技術,滿足企業級別TB 級到PB 級別數據到存儲及準實時計算能力;其次,設計并研發任務調度和開發管理一體的輕量化組件,實現企業常用大數據開發管理業務。

輕量化大數據架構最低僅需要部署9 個組件節點(其中包括3個C語言開發的組件、6個Java組件),按照平均一個節點4 G 內存計算,則最少需要36 G 內存,具體見圖2。對比前面所述的傳統簡單離線計算架構,輕量化架構可以減少15個組件節點,折合減少60 G內存。

3.2 輕量化存儲計算引擎

MPP(—種海量數據實時分析架構)是通過一定的互聯網節點連接多個SMP(對稱多處理)服務器協同完成工作任務。MPP 數據庫將任務并行地分散到多個服務器和節點上,在每個節點計算完成后,將各自的結果匯總在一起從而得到最終結果[3]。ClickHouse 等列式數據庫從某種意義上來說,也是一類NoSQL 數據庫,但鑒于列式數據庫本身的獨特性,與MongoDB、Redis 等有很大不同,所以可以視為另外一種單獨的解決方案。在很多場景下,比Hadoop、Spark 技術棧具有更高的性能更小的系統資源開銷[4]。對于新型數倉中實時性要求高的統計分析業務中,使用MPP 存儲通常較為合理[5]。因此,在存儲計算層,采用輕量的MPP 數據庫替代Hadoop。目前,主流的MPP 數據庫有Apache Doris、ClickHouse、Greenplum 等。由于Apache Doris 使用更簡單、運維更簡單、分布式更強、SQL 支持更好、國內技術支持更好,因此選用Apache Doris 來搭建輕量化大數據架構。

Apache Doris 數據庫和Hadoop 技術對比,存在以下優勢:(1)Doris 所需部署的組件數量更低,占用CPU內存資源更少;(2)Doris 數據庫核心的Backends 組件采用C 語言開發,運行性能更好,占用內存更低;(3)Doris 數據庫的結構化數據批量寫入性能更好,支持200~300 MB/s 的結構化數據批量寫入(在Hadoop 生態中結構化數據的實時寫入和在線分析需要引入Hbase、Hive、Presto 等組件,部署架構比較復雜,耗費CPU、內存資源也更多);(4)Doris 數據庫原生為數據分析設計的Aggregate、Uniq、Duplicate 等模型,能很好的支撐企業應用中的數據分析場景;(5)Doris 數據庫在大數據量、多表join、聚合查詢等場景下的性能優于Hadoop 生態中的組件;(6)Doris 數據庫原生對Kafka 數據導入、Mysql 數據庫同步等支持較好,不需要部署額外組件即可實現常用的數據集成工作;(7)Doris 數據庫處理結構化數據優于Hadoop,企業應用中大部分數據也為結構化數據,因此Doris 更適合企業應用中大部分的結構化數據需求;(8)大部分企業應用的數據量在PB 級別以內,Doris 數據庫能夠較好地支撐10 PB 內的數據分析。

3.3 輕量化任務調度及開發管理組件

數據管理應主要包含數據導入、數據清洗和數據治理3 個方面[6]。一體化輕量管理組件將大數據分析中常用的數據管理功能(如任務調度、庫表管理、SQL開發、Kafka 數據接入、關系數據庫接入等)整合到一起,實現單應用、單進程輕量化部署與應用。一體化輕量管理組件的主要功能如下。

(1)任務調度。任務調度組件支持SQL 計算任務調度即可滿足大部分的企業應用需求,且大部分企業應用中的調度任務較少,因此調度組件的摒棄DolphinScheduler、Azkaban 等較重的架構,開發單應用架構的輕量化任務調度組件。

(2)庫表管理。開發Doris 數據庫的庫/表元數據管理、數據預覽功能。

(3)SQL 開發。支撐在線的Doris sql 編輯、執行、結果顯示等功能。

(4)Kafka 數據接入。支撐在線的Doris RoutineLoad 配置、管理、監控等功能。

(5)關系數據庫接入。支持在線的Doris Sync Job配置、管理、監控等功能。

3.4 總體架構

輕量化大數據架構支持多種類型的業務數據接入,包括mysql 業務數據庫、其他非數據庫中的業務數據。對于數據庫中的業務數據,可以借助Canal、DataX等組件實時或定時接入Doris 存儲;對于非數據庫中的業務數據,可以接入Kafa 中,再借助Doris Routine Load技術實時存儲到Doris。一體化輕量管理組件負責為開發人員提供便捷的任務調度、庫表管理、SQL 開發、數據接入等常用服務。總體架構如圖3 所示。

4 應用場景分析

4.1 適用場景

本文所述對輕量化大數據架構適用于以下場景:(1)對結構化或半結構化的數據做大數據分析,數據量規模在1 TB 到10 PB 范圍;(2)準實時計算或離線計算的業務場景;(3)結構化或半結構化數據寫入和查詢性能要求較高的業務場景;(4)ETL 計算不是特別復雜的業務場景(即能夠通過SQL 計算,且單次數據計算規模為GB 級別)。

4.2 不適用場景

本文所述對輕量化大數據組件在以下場景中不太適用:(1)實時性要求比較高的復雜業務場景;(2)數據量超過10 PB 以上等業務場景;(3)非結構化數據分析的業務場景;(4)ELT 計算數量很大的業務場景。

4.3 應用場景擴展

應用此輕量化大數據架構,能夠滿足企業大部分大數據存儲、計算需求。對一些特殊等需求,可以在此架構基礎上擴展。

(1)對于實時性要求高的復雜業務場景,如秒級別帶滑動窗口的大數據實時計算,需要額外引入flink 等實時計算組件。

(2)對于總數據量10 PB 以上或單次ETL 計算數據量很大業務場景,需要引入Hadoop 的HDFS 和Hive等組件。

(3)對于人工智能場景,需要額外引入TensorFlow等AI 計算組件。

4.4 最佳實踐

(1)如果原始數據比較大,可以在數據架構設計中刪除或縮減原始數據的存儲,Doris 中僅存儲計算結果數據,避免存儲規模過大。

(2)對于單次ETL 數據量較大的場景,可以把大量數據的計算拆分成多個中小規模數據量的計算,來實現計算大數據量的需求。

(3)對于任務量較多的ETL 離線計算,盡量把不同批次的計算任務拆分到不同時間段執行。避免同一時間段執行段任務太多,導致Doris 內存溢出。

5 結語

在企業應用中,大部分是結構化或半結構化的數據做分析,數據規模基本都在10 PB 范圍內,因此實施輕量化的大數據組件能滿足企業大部分的準實時和離線計算業務場景。如果企業數據規模在10 PB 范圍內,實施輕量化大數據架構能幫忙企業減少40%~60%的系統資源,同時基于一體化輕量組件和Doris 易用的Routine Load、Sync job 等功能,幫助企業快速實現大數據業務的開發,減少企業人力、財力成本。

猜你喜歡
數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
兩種新的非確定數據庫上的Top-K查詢
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2015年3期)2015-06-09 17:41:31
數據庫
財經(2014年21期)2014-08-18 01:50:18
數據庫
財經(2014年6期)2014-03-12 08:28:19
數據庫
財經(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 性网站在线观看| 无码国产伊人| 欧美乱妇高清无乱码免费| 日韩久草视频| 国产在线观看精品| 手机永久AV在线播放| 亚洲精选无码久久久| 欧美日韩国产成人高清视频| 日韩国产黄色网站| 人人妻人人澡人人爽欧美一区| 免费视频在线2021入口| 亚洲中文字幕久久无码精品A| 国产青青操| 亚洲中文字幕久久无码精品A| 国产精品人成在线播放| 青青草原国产免费av观看| 久久精品国产999大香线焦| 一本久道热中字伊人| 日韩欧美91| 免费看美女自慰的网站| 国产精品分类视频分类一区| 91娇喘视频| vvvv98国产成人综合青青| 免费黄色国产视频| 国产一区二区三区日韩精品| 青青青国产视频手机| 91青青草视频在线观看的| 色窝窝免费一区二区三区 | 亚洲无码高清视频在线观看| 国产在线专区| 91亚瑟视频| 国内精品伊人久久久久7777人| 亚洲欧美另类视频| 国产特一级毛片| 亚洲精品中文字幕午夜| 在线网站18禁| 日韩在线永久免费播放| 欧美a在线| 午夜国产在线观看| 国产在线八区| 欧美在线精品怡红院| 亚洲AV无码精品无码久久蜜桃| 国产拍在线| 免费又黄又爽又猛大片午夜| 精品午夜国产福利观看| 国产AV毛片| 久草中文网| 亚洲无码91视频| 亚洲av无码成人专区| 免费看美女自慰的网站| 91小视频版在线观看www| 精品欧美日韩国产日漫一区不卡| 激情无码字幕综合| 午夜一区二区三区| 欧美日韩中文国产| 精品国产女同疯狂摩擦2| 免费观看男人免费桶女人视频| 国产女人在线| 欧美中出一区二区| 噜噜噜久久| 国产极品美女在线观看| 欧美日本中文| 热思思久久免费视频| 国产精品毛片一区视频播| 午夜a视频| 超碰色了色| 中文字幕在线观| 先锋资源久久| 亚洲丝袜中文字幕| 国产高清在线观看91精品| 一级毛片在线免费视频| 亚洲综合欧美在线一区在线播放| 久久精品国产精品青草app| 国产成人精彩在线视频50| 91久久偷偷做嫩草影院| 国产亚洲欧美日韩在线一区| 成人伊人色一区二区三区| 亚洲国产精品VA在线看黑人| 国产精品视频免费网站| 日本黄网在线观看| 国产精品流白浆在线观看| 手机在线免费不卡一区二|