小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

助力中國聯(lián)通萬億日志數(shù)據(jù)分析提速 10 倍,Apache Doris 是如何做到的?|key|數(shù)據(jù)量|數(shù)據(jù)倉庫|olap|apache

 南莊小筑 2023-12-20 發(fā)布于北京

【CSDN 編者按】在數(shù)據(jù)安全管理體系的背后,離不開對安全日志數(shù)據(jù)的存儲(chǔ)與分析。以終端設(shè)備為例,中國聯(lián)通每天會(huì)產(chǎn)生百億級別的日志數(shù)據(jù),對于保障網(wǎng)絡(luò)安全、提高系統(tǒng)穩(wěn)定性和可靠性具有至關(guān)重要的作用。目前,Apache Doris 在聯(lián)通體系的落地已支持了 30 多條業(yè)務(wù)線和數(shù)百個(gè)實(shí)時(shí)作業(yè),不僅幫助聯(lián)通實(shí)現(xiàn)了萬億級安全日志的高效分析和低成本,也為其他運(yùn)營商提供了成功的參考案例和學(xué)習(xí)經(jīng)驗(yàn),對推動(dòng)運(yùn)營商的數(shù)字化轉(zhuǎn)型進(jìn)程具有重要意義。

作者 | 大數(shù)據(jù)開發(fā)工程師 劉宇麒

責(zé)編 | 夏萌


聯(lián)通西部創(chuàng)新研究院是中國聯(lián)通在西部地區(qū)布局的重要載體,也是中國聯(lián)通數(shù)字化創(chuàng)新能力體系的重要組成部分,承載了集團(tuán)公司科技創(chuàng)新體系和數(shù)字化創(chuàng)新體系的需求。依托聯(lián)通數(shù)科的優(yōu)質(zhì)資源及能力底座,在云計(jì)算、大數(shù)據(jù)、物聯(lián)網(wǎng)、人工智能、網(wǎng)絡(luò)安全等業(yè)務(wù)領(lǐng)域具備深厚的技術(shù)能力和豐富的項(xiàng)目經(jīng)驗(yàn)。

近些年來,網(wǎng)絡(luò)高危漏洞數(shù)量的增長、DDoS 攻擊比例的提升、惡意 Bot 流量的持續(xù)上升使得 Web 安全威脅態(tài)勢愈發(fā)嚴(yán)峻,而數(shù)字化轉(zhuǎn)型進(jìn)程的推進(jìn)在豐富業(yè)務(wù)創(chuàng)新的同時(shí)、也提升了網(wǎng)絡(luò)空間復(fù)雜度、進(jìn)一步加劇了網(wǎng)絡(luò)安全風(fēng)險(xiǎn)。這樣的背景之下,聯(lián)通以攻防實(shí)戰(zhàn)對抗為目標(biāo)、進(jìn)行國家級網(wǎng)絡(luò)空間的安全治理工作,圍繞“云-管-端-數(shù)”構(gòu)建 了多級綜合防控體系,聚焦于實(shí)時(shí)監(jiān)測、攻擊溯源、通報(bào)預(yù)警、應(yīng)急處置、情報(bào)共享等工作,構(gòu)建數(shù)據(jù)全生命周期安全管理體系,為客戶提供從頂層設(shè)計(jì)到運(yùn)營維護(hù)一站式服務(wù)。

在數(shù)據(jù)安全管理體系的背后,離不開對安全日志數(shù)據(jù)的存儲(chǔ)與分析。以終端設(shè)備為例,每天會(huì)產(chǎn)生海量的設(shè)備日志,這些日志數(shù)據(jù)記錄著各種網(wǎng)絡(luò)時(shí)間和系統(tǒng)操作的細(xì)節(jié)信息,對于保障網(wǎng)絡(luò)安全、提高系統(tǒng)穩(wěn)定性和可靠性具有至關(guān)重要的作用。為了更好的管理和分析安全日志數(shù)據(jù),聯(lián)通西部創(chuàng)新研究院應(yīng)集團(tuán)要求構(gòu)建一個(gè)集中化日志數(shù)據(jù)分析平臺(tái),滿足對事件和日志數(shù)據(jù)自動(dòng)化采集、存儲(chǔ)、管理、分析和可視化的訴求。這要求集中化數(shù)據(jù)分析平臺(tái)具備以下能力:

  • 建模分析:基于網(wǎng)絡(luò)日志數(shù)據(jù)和告警數(shù)據(jù)進(jìn)行規(guī)則或智能挖掘,發(fā)現(xiàn)潛在的安全事件,例如釣魚郵件、非法訪問等,并進(jìn)行定向威脅感知。

  • 態(tài)勢大屏:通過多種維度不同監(jiān)控指標(biāo)的組合,例如安全事件 TOP5 等,密切監(jiān)控當(dāng)前網(wǎng)絡(luò)安全態(tài)勢狀況,通過態(tài)勢大屏呈現(xiàn)攻擊威脅的主要分布。

  • 追蹤溯源:通過對安全事件的快速研判,還原整個(gè)攻擊鏈條進(jìn)行精準(zhǔn)的溯源取證,從而保障網(wǎng)絡(luò)和數(shù)據(jù)安全。

為搭建具備上述能力的集中化日志數(shù)據(jù)分析平臺(tái),在正式搭建之前,結(jié)合日志數(shù)據(jù)的特性及業(yè)務(wù)要求,我們需要綜合考慮考慮如何滿足以下要求,以確保平臺(tái)能高效的支持聯(lián)通日志分析場景的實(shí)際應(yīng)用:

  • 數(shù)據(jù)接入方面:日志數(shù)據(jù)具有種類繁多、格式多樣化、規(guī)模龐大等特點(diǎn),要求數(shù)據(jù)平臺(tái)支持多種日志格式數(shù)據(jù)的導(dǎo)入,并支持高性能的數(shù)據(jù)寫入。

  • 實(shí)時(shí)性要求方面:為及時(shí)監(jiān)控和了解系統(tǒng)運(yùn)營情況和存在的問題,高實(shí)時(shí)性對于數(shù)據(jù)平臺(tái)非常關(guān)鍵。這要求平臺(tái)要實(shí)時(shí)進(jìn)行數(shù)據(jù)同步,保障數(shù)據(jù)的一致性,并支持?jǐn)?shù)據(jù)實(shí)時(shí)查詢,以便獲取最新的系統(tǒng)和業(yè)務(wù)狀態(tài)。

  • 可擴(kuò)展要求方面:數(shù)據(jù)平臺(tái)需要具備計(jì)算與存儲(chǔ)的拓展能力,以便滿足集團(tuán)及分公司不斷增長的數(shù)據(jù)處理分析需求。

在中國聯(lián)通安全日志數(shù)據(jù)分析平臺(tái)的迭代過程中,經(jīng)歷了從基于 Hive 的離線數(shù)據(jù)倉庫到以 Apache Doris 為核心的實(shí)時(shí)數(shù)據(jù)倉庫。從具體業(yè)務(wù)收益來講,Apahce Doris 的引入支持了聯(lián)通 30+ 條業(yè)務(wù)線和數(shù)百個(gè)實(shí)時(shí)作業(yè),為聯(lián)通帶來了存儲(chǔ)資源節(jié)約 50%、百億級別數(shù)據(jù)查詢秒級響應(yīng)、數(shù)據(jù)導(dǎo)入效率提升 60% 的顯著成果,成功實(shí)現(xiàn)了降本增效的業(yè)務(wù)目標(biāo);從集團(tuán)整體價(jià)值來講,通過該平臺(tái),聯(lián)通可以更好地監(jiān)控運(yùn)營狀態(tài)、保障網(wǎng)絡(luò)安全,為運(yùn)營商安全管理體系提供了重要的底層支持??偠灾?Apache Doris 在聯(lián)通體系的落地,不僅幫助聯(lián)通實(shí)現(xiàn)了萬億級安全日志的高效分析和低成本,也為其他運(yùn)營商提供了成功的參考案例和學(xué)習(xí)經(jīng)驗(yàn),對運(yùn)營商數(shù)字化轉(zhuǎn)型進(jìn)程的推進(jìn)有著重要作用。


基于Hive的離線數(shù)據(jù)倉庫


在項(xiàng)目一期建設(shè)中,我們以 Apache Hive 為核心建立了離線數(shù)倉,并在其此礎(chǔ)上進(jìn)行了數(shù)據(jù)倉庫分層。當(dāng)原始數(shù)據(jù)經(jīng)過數(shù)據(jù)采集進(jìn)入離線數(shù)倉后,由 Spark 逐層進(jìn)行處理,并配合 Apache DolphinScheduler 以分鐘級調(diào)度執(zhí)行計(jì)算作業(yè),最終將數(shù)據(jù)輸出至 OLAP 和應(yīng)用數(shù)據(jù)庫。

從業(yè)務(wù)的角度來看,該架構(gòu)數(shù)據(jù)流的痛點(diǎn)問題在于數(shù)據(jù)實(shí)時(shí)性不足,主要受限于 Hive 的離線批處理模式,端到端的延遲最短竟然需要 10 分鐘。

其次,我們在該架構(gòu)中選擇了 ClickHouse 作為 OLAP 引擎,但在實(shí)際使用場景中發(fā)現(xiàn) ClickHouse 存在以下不足:

  • ClickHouse 并發(fā)支持能力不足,無法滿足業(yè)務(wù)需求,例如實(shí)時(shí)大屏指標(biāo)的計(jì)算與加載緩慢,經(jīng)常會(huì)在業(yè)務(wù)高峰期出現(xiàn)查詢超時(shí)。

  • 業(yè)務(wù)中有大量安全事件表需要進(jìn)行多表 Join,這些表數(shù)據(jù)量較大,而 Clickhouse 在分布式 Join 實(shí)現(xiàn)性能較低,時(shí)常會(huì)出現(xiàn) OOM 問題,為避免該情況發(fā)生,常常需要依賴寬表才能緩解,而這既影響了業(yè)務(wù)的穩(wěn)定性,也增加了許多額外的維護(hù)成本。

  • 由于 ClickHouse 對于數(shù)據(jù)更新操作支持較弱、更新性能較差,這也限制了它在某些場景下的應(yīng)用。

  • ClickHouse 使用和運(yùn)維成本較高,也給我們帶來了更高的人工投入成本


系統(tǒng)選型及落地

隨著一期架構(gòu)問題的逐步暴露,我們迫切需要對數(shù)據(jù)分析平臺(tái)進(jìn)行更新迭代。對于二期建設(shè)來說,提升數(shù)據(jù)的實(shí)時(shí)性被確立為首要目標(biāo),為了實(shí)現(xiàn)這一目標(biāo),我們計(jì)劃增加實(shí)時(shí)數(shù)據(jù)處理鏈路,以更好地實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)收集、處理和查詢要求,為系統(tǒng)穩(wěn)定和網(wǎng)絡(luò)安全提供更有力的支持和保障。其次,為解決一期平臺(tái)存在的并發(fā)能力不足、多表 Join 性能低等核心問題,提升 OLAP 引擎性能成為二期建設(shè)的的另一關(guān)鍵目標(biāo),因此亟需對一期平臺(tái)中 OLAP 引擎 ClickHouse 進(jìn)行替換,以滿足業(yè)務(wù)側(cè)日益嚴(yán)格的數(shù)據(jù)分析和處理需求。

在此背景下,我們考慮是否可以只選擇一個(gè)新的實(shí)時(shí)數(shù)據(jù)倉庫同時(shí)滿足以上兩個(gè)目標(biāo),一方面即能幫助我們構(gòu)建實(shí)時(shí)數(shù)據(jù)分析處理鏈路,另一方面又可以作為性能更強(qiáng)悍、更易用的 OLAP 分析引擎,這樣不僅可以簡化數(shù)據(jù)處理流程、提高實(shí)時(shí)效率,而且可以降低平臺(tái)運(yùn)維管理的成本。

為了找到符合條件的數(shù)據(jù)庫,我們進(jìn)行了多方調(diào)研和對比研究,最終選擇以 Apache Doris 為核心來構(gòu)建統(tǒng)一的實(shí)時(shí)數(shù)據(jù)倉庫體系。為了直觀展示 Apache Doris 的性能和功能特點(diǎn),我們使用 Apache Doris 與 ClickHouse 進(jìn)行了對比,其中最直觀的感受是 Apache Doris 在系統(tǒng)并發(fā)、Join 性能以及多個(gè)功能的易用性都更為領(lǐng)先。



基于Doris的實(shí)時(shí)數(shù)據(jù)倉庫


在項(xiàng)目二期的建設(shè)中,我們使用 Apache Doris 替換了 Hive 成功搭建實(shí)時(shí)數(shù)據(jù)倉庫,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)采集、處理和分析,同時(shí)使用 Apache Doris 替換 ClickHouse 作為 OLAP 引擎。架構(gòu)工作機(jī)制如下所示:

  • ODS 貼源層:主要用于存放未經(jīng)處理的原始數(shù)據(jù),通過 Flume 等實(shí)時(shí)采集工具,將各個(gè)廠商未經(jīng)處理的原始日志以及告警數(shù)據(jù)統(tǒng)一匯集到 Kafka 中,同時(shí)完全相同的數(shù)據(jù)也會(huì)被存入 HDFS 中一份,作為原始數(shù)據(jù)核查依據(jù)或進(jìn)行數(shù)據(jù)回放。

  • DWD 明細(xì)層:該層為事實(shí)表,數(shù)據(jù)通過 Flink 計(jì)算引擎實(shí)時(shí)對生產(chǎn)數(shù)據(jù)及字段進(jìn)行清洗、標(biāo)準(zhǔn)化、回填、脫敏之后寫入 Kafka 。Kafka 中的數(shù)據(jù)還會(huì)對接到 Doris 中,以支持明細(xì)日志數(shù)據(jù)詳情回溯查詢、準(zhǔn)實(shí)時(shí)模型分析、實(shí)時(shí)大屏及報(bào)表業(yè)務(wù)。由于大部分日志數(shù)據(jù)對于數(shù)據(jù)重復(fù)不是很敏感,因此 DWD 層采用 Doris 的 Duplicate Key 模型。

  • DWS 匯總層:以明細(xì)層 Kafka 數(shù)據(jù)為基礎(chǔ),通過動(dòng)態(tài)規(guī)則引擎進(jìn)行細(xì)粒度的聚合分析,為后續(xù)的業(yè)務(wù)查詢和 OLAP 分析做準(zhǔn)備,同時(shí)大部分建模分析的結(jié)果也集中在 DWS 層。

  • ADS 應(yīng)用層:該層主要使用 Doris 的 Aggregate Key 模型和 Unique Key 模型對以上三層的數(shù)據(jù)進(jìn)行自動(dòng)聚合或者自動(dòng)更新,以滿足前端人員的具體分析需求。


新架構(gòu)的應(yīng)用實(shí)踐

日增百億數(shù)據(jù),穩(wěn)定快速導(dǎo)入

數(shù)據(jù)分析平臺(tái)平均每天有 150 億的業(yè)務(wù)日志數(shù)據(jù)新增,面對如此大規(guī)模的數(shù)據(jù)量,我們需要考慮如何將數(shù)據(jù)快速實(shí)時(shí)穩(wěn)定入庫。經(jīng)調(diào)研,Doris Flink Connector 組件(主要依賴 Doris Stream Load )可以實(shí)現(xiàn)海量數(shù)據(jù)快速導(dǎo)入。并且其使用非常簡單,只需要導(dǎo)入相關(guān)依賴包進(jìn)行簡單的配置即可進(jìn)行。在應(yīng)用 Doris Flink Connector 后,數(shù)據(jù)寫入性能可達(dá)到每秒 20-30 萬條,極大地提升了數(shù)據(jù)導(dǎo)入的速度和效率,同時(shí)也不會(huì)對正常的數(shù)據(jù)分析造成干擾。

在采用 Flink 進(jìn)行高頻實(shí)時(shí)寫入 Doris 時(shí),如果未合理調(diào)整參數(shù)配置,可能導(dǎo)致數(shù)據(jù)版本堆積。為避免該問題,我們進(jìn)行了以下調(diào)整優(yōu)化:

  • Flink 優(yōu)化:為減輕 Doris 的寫入壓力,可通過提高 Flink 的 Checkpoint 時(shí)間來減少版本數(shù)量。具體來說,我們可以將 Checkpoint 時(shí)間從之前的 15 秒提高為 60 秒,以減少批次寫入頻率,降低 Doris 單位時(shí)間處理事務(wù)數(shù)量。這樣可以在不影響業(yè)務(wù)的情況下,緩解寫入壓力,避免產(chǎn)生大量的數(shù)據(jù)版本。

  • 數(shù)據(jù)預(yù)處理:為了減輕 Doris 的寫入壓力,部分?jǐn)?shù)據(jù)我們會(huì)先在 Flink 中通過主鍵 ID 進(jìn)行預(yù)聚合,將來自多個(gè)表中相同的 ID 進(jìn)行處理并構(gòu)建大寬表,降低多流數(shù)據(jù)的寫入資源消耗。

  • Doris 優(yōu)化:調(diào)整 Doris BE 參數(shù),增加 CPU 資源參與 Compaction 操作;根據(jù)業(yè)務(wù)設(shè)置合理的表分區(qū)、分桶和副本數(shù)量,避免過多分分片,以降低 Compaction 的開銷。同時(shí)增大max_tablet_version_num,避免版本堆積。

通過以上優(yōu)化措施,每日新增的百億數(shù)據(jù)可以平穩(wěn)導(dǎo)入 Doris 中,整個(gè)導(dǎo)入過程中 BE 表現(xiàn)穩(wěn)定,Compaction Score 始終保持低位,大批量數(shù)據(jù)的寫入對于前端查詢的性能也沒有造成任何影響。同時(shí)在 Doris 的 Unique Key 模型的加持下,我們可以利用 Flink 對輸入數(shù)據(jù)進(jìn)行關(guān)聯(lián)、聚合等處理,再以微批、精準(zhǔn)一次性寫入 Doris 中,實(shí)現(xiàn)了數(shù)據(jù)秒級更新。

存儲(chǔ)資源合理配置,成本節(jié)約 50%

日志數(shù)據(jù)具有非常大的數(shù)據(jù)量和數(shù)據(jù)增長速度,如果不對存儲(chǔ)資源進(jìn)行合理分配和控制,存儲(chǔ)成本將會(huì)成為一個(gè)巨大的負(fù)擔(dān)。日志數(shù)據(jù)中也會(huì)存在重要性的區(qū)分,有一定比例的數(shù)據(jù)價(jià)值密度比較低,如果毫無差別的將這些數(shù)據(jù)都存儲(chǔ)下來,不僅會(huì)造成存儲(chǔ)浪費(fèi),也會(huì)增加數(shù)據(jù)分析的難度。為了有效解決這些問題,我們采用了一系列策略來降低數(shù)據(jù)存儲(chǔ)成本:

  • ZSTD 高效壓縮算法:利用 Doris 的新特性——ZSTD 高效壓縮算法進(jìn)行壓縮存儲(chǔ)。在建表時(shí)指定壓縮方法為 ZSTD,特別是對數(shù)據(jù)量超過 T 級別的數(shù)據(jù)表,這種壓縮方法可以有效地減少數(shù)據(jù)占用的存儲(chǔ)空間,數(shù)據(jù)壓縮比最高可達(dá) 1:10。即使采用 3 副本來保證數(shù)據(jù)的高可靠,數(shù)據(jù)存儲(chǔ)占用的空間仍有非常大幅度的降低。

  • 冷熱數(shù)據(jù)精細(xì)化管理:在 Doris 中只存儲(chǔ)近一年的數(shù)據(jù),將更早的數(shù)據(jù)備份到成本更低的存儲(chǔ)介質(zhì)中。同時(shí)使用熱數(shù)據(jù)轉(zhuǎn)冷的功能,在 SSD 中僅存儲(chǔ)最近 7 天的數(shù)據(jù),將 7 天之前的數(shù)據(jù)轉(zhuǎn)存到 HDD 中,以進(jìn)一步降低存儲(chǔ)成本。這樣可以根據(jù)數(shù)據(jù)的使用頻率,合理分配存儲(chǔ)資源,達(dá)到性能和成本的平衡。 ,這一功能可以將冷數(shù)據(jù)下沉到存儲(chǔ)成本更加低廉的對象存儲(chǔ)中,冷數(shù)據(jù)在對象存儲(chǔ)上的保存方式也從多副本變?yōu)閱胃北?,存?chǔ)成本進(jìn)一步降至原先的三分之一,同時(shí)也減少了因存儲(chǔ)附加的計(jì)算資源成本和網(wǎng)絡(luò)開銷成本,目前我們正在積極測試中,未來有機(jī)會(huì)也會(huì)與大家分享實(shí)踐經(jīng)驗(yàn)。

  • 分區(qū)級副本設(shè)置:將 3 個(gè)月以內(nèi)的數(shù)據(jù)設(shè)置為高頻使用數(shù)據(jù),將其分區(qū)設(shè)置為 3 副本;將 3-6 個(gè)月的數(shù)據(jù)分區(qū)設(shè)置為 2 副本;將 6 個(gè)月之前的數(shù)據(jù)分區(qū)設(shè)置為 1 副本。這樣可以根據(jù)數(shù)據(jù)的使用情況,合理分配副本數(shù)量,實(shí)現(xiàn)存儲(chǔ)成本降低的同時(shí)也充分利用多副本來提升熱數(shù)據(jù)的查詢性能。

借助于 Doris 極高效率的壓縮算法、冷熱數(shù)據(jù)分層管理、分區(qū)級副本設(shè)置等功能,可對存儲(chǔ)資源合理分配,最終實(shí)現(xiàn)存儲(chǔ)成本節(jié)約 50%,成功達(dá)到性能和成本的平衡。

數(shù)據(jù)規(guī)模分級查詢,查詢速度提升 10+ 倍

日志中包含了許多對分析及時(shí)性要求非常高的數(shù)據(jù),例如異常事件、故障信息等,因此為了保障日志數(shù)據(jù)的查詢效率,我們以數(shù)據(jù)量的級別為基準(zhǔn)采用了不同的查詢策略:

  • 對于100G 以下的數(shù)據(jù),可以采用分區(qū)表的形式進(jìn)行查詢。在業(yè)務(wù)初期業(yè)務(wù)表按照天進(jìn)行分區(qū),每天執(zhí)行任務(wù)需要手動(dòng)管理分區(qū)為我們帶來了非常大的維護(hù)成本。后來我們利用 Doris 的動(dòng)態(tài)分區(qū)功能,針對數(shù)據(jù)量較大的表可以使用小時(shí)作為分區(qū)字段,為了避免分區(qū)內(nèi)數(shù)據(jù)傾斜,以雪花 ID 作為分桶字段,保證數(shù)據(jù)的均衡。此外為了避免數(shù)據(jù)積壓,我們還開啟了動(dòng)態(tài)分區(qū)的起始偏移,保留近 20 天的數(shù)據(jù)來支撐業(yè)務(wù)分析。這樣可以有效地降低數(shù)據(jù)積壓的風(fēng)險(xiǎn),同時(shí)也能夠滿足業(yè)務(wù)的分析需求。

  • 對于100G 到 1T的數(shù)據(jù),我們采用物化視圖進(jìn)行查詢,物化視圖是一種預(yù)先計(jì)算并存儲(chǔ)結(jié)果集的方式,可以減少查詢所需的計(jì)算時(shí)間和資源消耗,從而提高查詢效率。Doris 系統(tǒng)提供了完整的物化視圖 DDL 語法,可用于創(chuàng)建、查看和刪除等操作,這些語法與 PostgreSQL 和 Oracle 語法一致,使用簡單、不需重新學(xué)習(xí)。

  • 對于上百 T的數(shù)據(jù),我們通過 Aggregate 聚合模型表進(jìn)行查詢,使用 Aggregate 模型在數(shù)據(jù)寫入前進(jìn)行預(yù)聚合,通過以上方式,我們成功將 20 億條數(shù)據(jù)的查詢時(shí)間進(jìn)一步縮短至 1-2s,有效提高了數(shù)據(jù)查詢的效率。

在一期數(shù)據(jù)分析平臺(tái)中,大部分業(yè)務(wù)場景都是通過 T+1 的方式進(jìn)行計(jì)算。而在基于 Doris 的二期數(shù)據(jù)分析平臺(tái)中,我們實(shí)現(xiàn)了對大部分業(yè)務(wù)準(zhǔn)實(shí)時(shí)(分鐘以及小時(shí)級)和實(shí)時(shí)計(jì)算場景的支持。同時(shí)結(jié)合以上優(yōu)化措施,極大降低了各種維度指標(biāo)的統(tǒng)計(jì)時(shí)間,以往需要分鐘級別的明細(xì)查詢,現(xiàn)在可以在毫秒級別迅速響應(yīng),極大地改善了用戶體驗(yàn);另外,在 Doris 中,我們能夠快速對百億級別的大表進(jìn)行不同維度的數(shù)據(jù)分析,只需要幾秒即可獲得查詢結(jié)果,大大提高了聯(lián)通各業(yè)務(wù)部門數(shù)據(jù)分析的能力。


收益總結(jié)

自引入 Apache Doris 以來,我們已經(jīng)部署了多個(gè)集群、數(shù)十臺(tái)機(jī)器,支持了中國聯(lián)通 30 多條業(yè)務(wù)線和數(shù)百個(gè)實(shí)時(shí)作業(yè),日增日志數(shù)據(jù)百億級別,單個(gè)集群的數(shù)據(jù)規(guī)模達(dá)到數(shù) PB 。Apache Doris 的成功應(yīng)用為聯(lián)通帶來了多方面收益,主要包括如下方面:

在數(shù)據(jù)導(dǎo)入方面,對于聯(lián)通而言,每天都面臨著龐大的日志增量,并且這些數(shù)據(jù)的實(shí)時(shí)性和準(zhǔn)確性對于業(yè)務(wù)發(fā)展和決策至關(guān)重要,而 Doris Flink Connector 幫助我們實(shí)現(xiàn)了數(shù)據(jù)快速且穩(wěn)定導(dǎo)入,可輕松應(yīng)對日增百億數(shù)據(jù)的導(dǎo)入要求,為后續(xù)的數(shù)據(jù)處理和分析提供了更高效的解決方案。

在存儲(chǔ)資源分配方面,由于數(shù)據(jù)量龐大、存儲(chǔ)周期長等原因,日志數(shù)據(jù)的存儲(chǔ)成本一直是運(yùn)營商面臨的難題,通過采用 Doris 高效的壓縮算法、冷熱數(shù)據(jù)精細(xì)管理、分區(qū)級副本設(shè)置等功能,幫助我們降低了數(shù)據(jù)存儲(chǔ)成本,數(shù)據(jù)存儲(chǔ)利用效率和價(jià)值得到顯著提升。

在查詢性能方面,快速獲取日志數(shù)據(jù)查詢結(jié)果可以幫助運(yùn)營商及時(shí)掌控網(wǎng)絡(luò)及系統(tǒng)情況,及時(shí)發(fā)現(xiàn)并解決問題,也有利于及時(shí)了解用戶需求和行為,優(yōu)化營銷策略和服務(wù)方案。Doris 在查詢性能方面提供了強(qiáng)大的支持, 能夠處理百億級別大表按小時(shí)/天級別的明細(xì)查詢,并支持不同維度聚合查詢分析。業(yè)務(wù)線整體響應(yīng)時(shí)間可在秒級或毫秒級別完成,甚至可以在 1-2s 內(nèi)完成對 20 億條數(shù)據(jù)的查詢,查詢速度較之前提升了 10+ 倍。


未來規(guī)劃

在最新發(fā)布的 Apache Doris 2.0 版本中,Apache Doris 提供了大量新的功能,比如 和 等,對于日志分析場景來說都是具有重要意義的更新。目前我們是以數(shù)據(jù)存儲(chǔ)周期為基準(zhǔn)進(jìn)行副本分配,并按照數(shù)據(jù)熱度分別存儲(chǔ)在 SSD 和 HDD 中,后續(xù)我們將使用冷熱數(shù)據(jù)分層新功能,將數(shù)據(jù)從 SSD 或者 HDD 下沉到對象存儲(chǔ)中,從而降低數(shù)據(jù)存儲(chǔ)成本,進(jìn)一步達(dá)到服務(wù)器磁盤資源節(jié)省的目的。此外,我們正在對倒排索引功能進(jìn)行測試,并計(jì)劃先在小范圍業(yè)務(wù)場景推廣使用,倒排索引對于字符串類型的全文檢索和普通數(shù)值、日期等類型的等值、范圍檢索具有更高效的支持,希望通過倒排索可以幫助我們進(jìn)一步提高日志數(shù)據(jù)查詢的效率和準(zhǔn)確度。

除此之外,基于聯(lián)通的使用場景,我們對自動(dòng)分桶功能提出一些建議。目前自動(dòng)分桶計(jì)算邏輯是根據(jù)最近的分區(qū)數(shù)據(jù)量來動(dòng)態(tài)決定當(dāng)前分區(qū)的分桶數(shù)目,這種方式適用于分區(qū)數(shù)據(jù)量呈線性關(guān)系的業(yè)務(wù)表。然而,由于我們的業(yè)務(wù)表在白天的數(shù)據(jù)量較多,夜晚數(shù)據(jù)量較少,因此使用自動(dòng)分桶會(huì)導(dǎo)致白天部分分區(qū)具有較少的分桶,而夜晚分區(qū)則具有較多的分桶。因此,未來我們期望社區(qū)可以增加一種新的分桶規(guī)則,以前一天的數(shù)據(jù)分區(qū)存儲(chǔ)情況為參照,來對當(dāng)天的分區(qū)進(jìn)行自動(dòng)分桶,這樣可以更加準(zhǔn)確的根據(jù)業(yè)務(wù)表特點(diǎn)進(jìn)行自動(dòng)分桶。當(dāng)然我們也將對該功能的優(yōu)化進(jìn)行探索,及時(shí)與社區(qū)交流,將最新的優(yōu)化代碼貢獻(xiàn)到社區(qū),共同推動(dòng)社區(qū)的發(fā)展進(jìn)步。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多