《OPPO大數據診斷平臺設計與實踐.pdf》由會員分享,可在線閱讀,更多相關《OPPO大數據診斷平臺設計與實踐.pdf(22頁珍藏版)》請在三個皮匠報告上搜索。
1、2023 DataFunConOPPO大數據診斷平臺設計與實踐演講人:戴巍-OPPO-數據平臺架構師目錄背景技術方案實踐效果總結與規劃Contents01 背景背景/OPPO大數據現狀數據量:1EB+系統組件:20+離線任務:百萬實時任務:數千數據分析師/開發師1000+數據開發人員水平參差不齊,問題排查難任務鏈路長,組件眾多,運維復雜僵尸任務和不合理任務治理難度大背景/業界產品對比開源產品 Dr.Elephant 分析01020102LinkedIn由LinkedIn開發并開源。旨在提高開發人員效率和增加集群任務調試的高效性支持多種計算引擎支持多個計算引擎框架性能診斷:Spark、Tez、M
2、apReduce、TonY等03支持多種調度框架集成多個調度器框架如:Azkaban、Airflow、Oozie等04分析報告統計歷史作業和工作流的性能指標Job級別工作流對比新版本兼容性不好支持Spark,Hadoop系統版本比較低,對于新版本Spark,Hadoop兼容性不好診斷指標少支持的Spark相關指標僅4個診斷手段少不支持日志級別問題診斷不支持異常資源的管理穩定性風險對Spark History服務接口頻繁調用影響History服務的穩定性030402 技術方案技術方案/平臺特性1非侵入式,即時診斷,無需修改已有的調度平臺,即可體驗診斷效果2支持 OPPO 自研調度平臺及多種主流調
3、度平臺,如DolphinScheduler、Airflow 等,進行工作流層異常診斷3支持多版本 Spark、Flink、Hadoop 2.x 和 3.x 任務診斷4支持 40+場景異常類型判定,并在不斷豐富調度平臺計算引擎診斷規則交互SparkFlinkOFlowAirFlowDolphinScheduler效率分析成本分析穩定性分析.Web UIHttp API5支持自定義規則編寫和異常閾值調整,可自行根據場景調整應用交互查詢任務調度數據治理技術方案/系統架構外部系統適配層診斷架構層基礎組件層調度器、Yarn、HistoryServer、HDFS等系統,同步元數據、集群狀態、運行環境狀態、
4、日志等到診斷系統分析包括數據采集、元數據關聯&模型標準化、異常檢測、診斷Portal模塊包括MySQL、ElasticSearch、Kafka、Redis等組件技術方案/流程階段數據采集階段1數據關聯&模型標準化階段2工作流層&引擎層異常檢測階段3同步調度系統用戶、DAG、執行記錄等工作流元數據;同步Yarn ResourceManager、Spark HistoryServer App、Flink作業元數據等將分步采集的工作流執行記錄、Spark App、Yarn App、Flink Job、集群運行環境配置等數據通過AppID介質進行關聯,整理為數據標準模型進一步Workflow異常檢測流
5、程,加載知識庫到標準模型,通過啟發式規則,對指標數據、日志進行異常挖掘,結合集群狀態及運行時狀態,分析工作流層、引擎層異常結果技術方案/流程階段業務視圖4存儲、分析數據,提供給用戶任務概覽、工作流層任務診斷、引擎層作業Application診斷,工作流層展示調度器執行任務引發的異常,如任務失敗、回環任務、基線偏離任務等問題,計算引擎層展示Spark、Flink作業執行引發的耗時、資源使用、運行時問題03 實踐效果統 一簡 潔實踐效果/交互設計直 觀用戶可以一眼看到關心的任務問題所在,并能給出指導性處理建議實踐效果/診斷類型豐富針對離線、實時任務的健康度診斷支持40+場景異常類型判定效率分析長尾
6、Task分析HDFS卡頓分析推測執行過多分析全局排序異常分析.耗時分析基線時間異?;€耗時異常運行耗時長.穩定性分析全表掃描問題數據傾斜分析Shuffle失敗分析內存溢出.成本分析CPU浪費分析內存浪費分析.實踐效果/效率分析案例長尾Task分析長尾任務是由于作業運行過程中,一個Task或多個Task單元執行時間過長,拖延整個任務運行時間從時間角度計算,執行時間過長原因在于Task讀取數據量多或者數據讀取慢。如果讀取數據過多,那么將出現數據傾斜,按數據傾斜方式處理;如果讀取數據過慢,那么可能是HDFS集群節點負載高或網絡丟包問題等實踐效果/成本分析案例CPU浪費分析Spark Driver/E
7、xecutor cores參數配置不合理導致CPU空閑浪費通過Spark Application采集指標,分析Spark Driver、Spark Executor執行過程中的CPU的運行時間(單位:vcoresecond)占比,如果空閑時間超過一定的比例,判定為浪費,用戶根據比例降低啟用CPU數量實踐效果/穩定性分析案例SQL常見問題分析SQL執行過程中沒權限、表不存在、語法錯誤等根據SQL失敗特征從指標數據或者日志提取,用戶根據問題去申請相應權限、創建表或者修正語法問題實踐效果/實時分析案例資源利用率分析Flink參數設置不合理導致資源浪費根據Flink作業運行時上報的指標,計算判斷CPU
8、利用率是否過低,并給出建議參數調整值實踐效果/降本增效數據治理成本口徑統計異常任務、不合理任務分析通過長期推進治理,可以看出成本趨勢,用戶聚焦的任務問題得以改善04 總結與規劃總結與規劃OPPO大數據診斷平臺主要圍繞調度引擎和計算引擎兩方面進行智能化定位分析,為用戶快速處理優化任務,為企業降本增效技術方面采用非入侵方案對接其他系統,保證了其他系統的安全性系統架構基于啟發式規則定位和分析問題方式,但知識庫比較依賴人員經驗,計劃引入數據挖掘算法擴大檢測范圍,智能化診斷支持Spark、Flink任務問題診斷,除OPPO自研調研平臺外,還支持DolphinScheduler、Airflow等開源調度平臺總結與規劃羅盤Compass為了回饋開源社區,并希望更多人參與進來,共同解決任務診斷的痛點和難題,我們現已將該項目開源,命名為“羅盤”回饋社區支持多種主流調度平臺,例如 DolphinScheduler、Airflow 等支持多版本 Spark、Hadoop 2.x 和 3.x 任務日志診斷和解析版本特性支持引擎層異常診斷,包含數據傾斜、大表掃描、內存浪費等14 種異常類型支持各種日志匹配規則編寫和異常閾值調整,可自行根據實際場景優化https:/ DataFunCon感謝您的觀看 THANKS 演講人:戴巍-OPPO-數據平臺架構師