《網易基于DataOps的敏捷、高質量數據開發實踐-郭憶.pdf》由會員分享,可在線閱讀,更多相關《網易基于DataOps的敏捷、高質量數據開發實踐-郭憶.pdf(32頁珍藏版)》請在三個皮匠報告上搜索。
1、網易基于網易基于DataOpsDataOps的開發治理一體化實踐的開發治理一體化實踐郭憶|網易大數據 EasyData 產品技術負責人 網易數帆 數據開發與管理平臺 EasyData 產品負責人 研究生畢業于天津大學,計算機應用專業 加入網易12年,一直從事數據相關系統設計和研發 構建了網易數據中臺支撐技術體系,支撐了網易云音樂、嚴選、傳媒、有道的數據中臺項目建設 多次受邀在全球互聯網架構大會(GIAC)、全球開發者大會(QCon)、中國數據庫大會(DTCC)、系統架構師大會(SACC)分享大數據建設實踐經驗 極客時間專欄數據中臺實戰課作者,訂閱量超過21000+郭憶 DataOps 2.0:
2、開發治理一體化實踐 DataOps 1.0:敏捷、高質量開發實踐 DataOps 行業實踐Agenda 網易數帆網易杭州研究院網易數帆華夏銀行華夏銀行音樂電商教育傳媒辦公郵箱物流農業零售金融教育電力公共技術研發前瞻技術研究創新產品孵化工具產品平臺公共數據建設數據建設方法論制造醫藥記憶科技記憶科技網易數據生產力的實踐歷程2006分布式數據庫、分布式文件系統、分布式搜索引擎,三駕馬車支撐了網易互聯網2.0時代的產品2009開始基于Hadoop做數據分析以及運維2014大數據平臺上線,加速了大數據規?;瘧?017網易大數據正式對外商業化2018網易嚴選、音樂、有道、新聞等業務相繼開始數據中臺構建,
3、網易發布“全鏈路數據中臺”解決方案2020網易實踐“DataOps”,加速數據分析效率,提升數據開發質量2022網易發布 開發治理一體化“數據治理 2.0”解決方案數據生產力數據生產力:廣義上:通過使用數據帶來組織生產力提升。狹義上:企業員工使用平臺工具采集數據、處理數據,數據分析以及管理數據的能力。一個愿景:人人用數據,時時用數據三個方法論:DataOps、DataFusion、DataProduct數據資產中心數據集成數據開發數據測試任務運維數據標準數據元數據字典標準發布數據分類元數據管理元數據采集元數據注冊元數據掃描元數據發布數據質量稽核監控質量報告強弱規則質量工單數據脫敏安全等級敏感識
4、別權限申請數據安全原子/派生指標系統模型設計中心版本管理指標字典指標關聯維度建模量化評估規范設計發布審核價值分析成本分析量化ROI數據下線數據門戶有數BI可視化報表智能決策駕駛艙API發布數據服務服務權限服務編排服務監控數據目錄數據檢索資產門戶數據血緣數據地圖基于DataOps 全生命周期數據開發NDHHDFS/S3Arctic(實時數據湖)Yarn/K8s自動化運維管理活動管理CDP人群圈選渠道觸達活動分析產品矩陣自助取數數據準備移動端數據大屏數據填報復雜報表機器學習交互式建模在線推理可視化建模訓練任務sparkhiveImpalaflink他們都在用網易大數據華泰證券華泰證券華福證券華福證
5、券華夏銀行華夏銀行馬上消費馬上消費好未來好未來南方日報南方日報記憶科技記憶科技溫氏集團溫氏集團九州通九州通福建電力福建電力綠瘦綠瘦中國能建投中國能建投浙交規浙交規浙江移動浙江移動浙商銀行浙商銀行東北證券東北證券廣發證券廣發證券民生證券民生證券杭州聯合銀行杭州聯合銀行泰康資產泰康資產比心比心浙江電信浙江電信科沃斯科沃斯浙江機電浙江機電浙江日報浙江日報長安汽車長安汽車廣汽汽車廣汽汽車華存華存華夏銀行華夏銀行國新證券國新證券天風證券天風證券恒豐銀行恒豐銀行杭州銀行杭州銀行臺州銀行臺州銀行渣打銀行渣打銀行北京銀行北京銀行南京大數據南京大數據五菱汽車五菱汽車吉利汽車吉利汽車路特斯汽車路特斯汽車江蘇農信江
6、蘇農信 DataOps 2.0:開發治理一體化實踐 DataOps 1.0:敏捷、高質量開發實踐 DataOps 行業實踐Agenda 網易數帆DataOps:血淋淋的教訓 在某電商業務中,業務三單有禮,因為上游任務變更,導致下游涉及資損數據計算異常,造成P1級別30W生產事故。在某電商業務中,由于訂單標簽任務依賴配置缺失,導致下游任務空跑造成數據異常,給老客發了紅包,造成P1級別 20W的資損。數據開發65%數據問題數據開發任務變更導致的生產環境數據問題占比達到65%!按期交付按期交付延期交付延期交付按期交付率按期交付率30%的需求交付延期DataOps:為什么會出現這些問題?任務依賴復雜,
7、嚴選有95409540個任務依賴上游,下游任務有1717層任務依賴,數據開發在變更任務的時候,根本不知道下游涉及的影響。任務變更缺少數據測試,因為缺少自動化工具的支撐,導致很多任務,未經過嚴格的數據測試,甚至有16%16%的任務都未運行過,就提交上線,最終導致生產事故發生。缺少全鏈路影響分析缺少全鏈路影響分析缺少自動化數據測試缺少自動化數據測試任務的發布缺少發布審核,涉及核心資產的任務變更缺少管控。任務發布上線更改隨意,沒有經過發布審核,Code Review相關環節,甚至核心任務變更,相關負責人都不知道。缺少發布管控缺少發布管控任務依賴容易缺失,任務依賴配置復雜,很容易造成缺失,任務空跑,最
8、終下游數據出錯。任務依賴容易缺失任務依賴容易缺失DataOps敏捷、質量DataOpsDataOps是一種將軟件工程CI/CD的方法融入數據開發的流程,基于自動化的數據測試、任務發布等技術,構建數據發布流水線,使得數據開發效率更高、交付更加頻繁,交付質量更有保障。DataOps要解決的問題:研發過程中需求頻繁變化階段性成果能夠更快速的被驗證通過引入數據測試,將質量保障前置DataOps:數據發布流水線編碼測試編排代碼審查發布審核部署上線數據開發IDE多版本管理(含調度)SQL ScanUDF Studio數據沙箱依賴調度智能任務依賴推薦參數組數據比對數據形態探查Code Reivew發布包全鏈
9、路影響分析自定義審核流程自動化回歸任務模板(組件庫)基于優先級資源調度智能診斷資源組效能工具DataOpsDataOps基線預警流程協作Continuous IntegrationContinuous IntegrationContinuous DeliveryContinuous DeliveryContinuous DeploymentContinuous DeploymentSLA多環境一鍵發布數據沙箱開發平臺調度集群Yarn_DevYarnHDFSHDFS_DevMetaStore(共享元數據)開發模式生產模式生產、測試物理集群隔離,互不影響開發集群任務直接引用生產集群脫敏數據測試,不
10、需要導數據開發集群無法寫入生產集群數據,避免生產集群數據被污染開發集群和生產集群,一套代碼,直接運行,不需要發布修改代碼數據形態探查值域枚舉值分布空置比例重復情況最大長度/最小長度數據比對全量/抽樣主鍵關聯/MD5關聯數據測試SQL 靜態掃描跨層依賴:dws/ads/dm 直接讀取 ods 層表全表掃,不帶分區使用固定分區對明細表 lateral view explode關聯 Key 應該至少是一個表的唯一鍵,避免笛卡爾積避免使用 distinct,使用 group by 改寫避免出現多個 full join,full join 可以用 union all 優化注意關聯 Key 在關聯各表內的
11、分布情況,典型的情況是空值或者0值,避免數據傾斜自定義規則擴展未使用壓縮禁止 select*臨時表任務結束未刪除SQL Scan DataOps 2.0:開發治理一體化實踐 DataOps 1.0:敏捷、高質量開發實踐 DataOps 行業實踐Agenda 網易數帆數據消費依然存在問題 數據開發自行開發所需數據表,公共邏輯未沉淀,重復建設多 近義指標膨脹現象現象 傳統建模為了滿足業務快速交付,開發流程約束收效甚微原因分析原因分析 37%的表存在命名不規范問題 相同的字段,有8種以上的字段命名 沒有定義數據的安全規范,數據分級分類無法得到實施現象現象 缺乏標準,建模隨意原因分析原因分析 數據質量
12、稽核規則覆蓋率只有10%70%的相同數據項,稽核規則和/或閾值設置不一致現象現象 質量稽核規則沒有配置依據,依賴人員對數據的理解程度原因分析原因分析煙囪式數據架構煙囪式數據架構質量規則覆蓋不佳質量規則覆蓋不佳規范缺失規范缺失數據開發與治理一體化將數據治理的流程自然融入數據開發的全生命周期過程中,在數據開發的過程中就完成數據治理將數據治理的流程自然融入數據開發的全生命周期過程中,在數據開發的過程中就完成數據治理數據標準指標設計模型設計離線開發數據傳輸數據測試元模型、詞根數據元、數據字典資源分類引入或設計業務指標原子指標衍生指標復合指標維度事實模型關系設計階段開發測試表命名、分層分類字段類型映射規
13、范(快速建表)數據處理規范(字段映射、按格式處理)稽核規則定義稽核規則推薦自助分析數據安全規則任務發布上線安全中心數據質量治理套件開發套件發布審核傳輸過程靜態脫敏臨時查詢動態脫敏資產等級日常監控數據質量監控字段類型、分類、數據格式規范質量規則數據測試報告安全等級安全規則先設計,后開發,先標準,后建模開發治理一體化:以數據標準為根本開發治理一體化:以數據標準為根本需求數據抽取數據探查數據建模數據開發數據質量任務發布持續運維數據標準數據安全通過數據元承載格式及值域規范并自動生成稽核規則數據建模直接應用數據標準中數據元和元模型數據標準打通各模塊的方式數據標準打通各模塊的方式根據表綁定的數據標準所關聯
14、的稽核規則,自動添加到表的稽核監控根據表綁定的數據標準所關聯的安全規則,自動應用到數據脫敏任務數據標準設計內容數據標準設計內容命名規范數據標準數據標準格式規范值域規范質量規范安全規范開發治理一體化:以全生命周期元數據為底座開發治理一體化:以全生命周期元數據為底座全生命周期的元數據接受了來自設計、開發、消費過程中的所有元數據,讓元數據更加完備,形成數據資產數據抽取數據探查數據建模數據開發數據質量數據服務數據安全數據標準統一元數據找得到看得懂信得過管得了數據資產數據生命周期開發過程元數據設計過程元數據消費過程元數據關聯的標準需求滿足率資產活躍度用戶評價模型定義安全等級血緣物理表定義質量報告一步到位
15、,長效解決一步到位,長效解決 隨著需求增多,口徑不統一越嚴重先污染后治理先污染后治理 缺統一衡量標準,價值難以度量 無持續優化機制運動式治理運動式治理一體化模式一體化模式傳統治理模式傳統治理模式兩 種 治 理 模 式 的 對 比兩 種 治 理 模 式 的 對 比規范規范 先標準后建模,確保了表、字段、指標命名的一致性及規范性 字段標準化率達到 80%80%,字段及指標的安全等級已完成 100%100%設置開發治理一體化:網易落地成果開發治理一體化:網易落地成果效率效率 先設計后開發極大程度保證了公共層邏輯下沉 相同需求對應指標數量縮減 48.7%48.7%云音樂模型復用度從2.4%提升到 9.
16、6%9.6%,下線 3.4W 3.4W 個模型質量質量 自動根據數據標準生成質量稽核規則 規則覆蓋率達到 65%65%,單個任務的配置效率提升約 70%70%嚴選質量覆蓋率提升 100%100%科學的評估體系:構建資產健康分,讓治理價值可量化完善的工具平臺:數據標準產品化持續的數據運營:組織流程打通,數據文化建設關注數據消費,成果可衡量,治理可改進開發治理一體化,保障數據流水線高質量運行先設計,后開發,先標準,后建模三個核心原則三個核心原則三大落地支撐三大落地支撐開發治理一體化:給管理者的建議開發治理一體化:給管理者的建議數據文化 DataOps 2.0:開發治理一體化實踐 DataOps 1
17、.0:敏捷、高質量開發實踐 DataOps 行業實踐Agenda 網易數帆浙江電信調度工具開發工具數據血緣質量管理主數據管理元數據管理亞信思特奇鴻程國信其他多廠家、工具割裂多廠家、工具割裂鴻程思特奇國信亞信分公司其他MPP調度上傳集團BSS數據智慧人力業務稽核萬號數據數據標簽精準營銷MSS數據政企應用星級維系資產落地本地應用網絡數據網管采集在引入網易一站式工具平臺前面臨問題:數據標準、數據質量與數據開發嚴重脫節,規范只能停留在字典層面,無法融入數據生產的流程中,不能有效的落地執行和監督。不同廠商,不同工具之間嚴重割裂,數據質量的稽核規則無法和數據標準中數據元的值域約束打通,數據標準中數據元無法
18、跟數據建模工具無法聯動,元數據管理中的數據安全等級和安全中心的數據脫敏無法聯動。由數據中臺統一為倉庫、經分、網絡集群提供數據采集、建模、開發、調度、治理等一體化能力由數據中臺統一為倉庫、經分、網絡集群提供數據采集、建模、開發、調度、治理等一體化能力。在生產過程中對于程序上下線,建表等操作實現在線化,流程化操作一方面減少人工提升效率,一方面完善數據管控的過程。模型設計與開發程序開發程序測試審核上線1-1-模型定義創建模型基礎信息定義模型的元數據2-2-構建表結構添加模型字段信息提供手工/批量方式3-3-編輯模型應用程序固化常用程序命令,拖拽式使用圖形化界面,自由配置處理邏輯4-4-數據在線測試提
19、供WEB界面可視化測試功能;查看執行時長、執行狀態等信息,方便開發人員調試,性能分析5-5-提交審核開發人員建立上線任務,提交審核6-6-上線運行運維人員審核通過,上線運行在上線時按照標準規范進行控制,包括命名規范,信息完整在上線時按照標準規范進行控制,包括命名規范,信息完整性,合理性等,不符合標準規范則不予上線性,合理性等,不符合標準規范則不予上線將數據開發與數據治理有機結合起來數據開發與數據治理有機結合起來,既是對開發過程的管控,也是保障數據質量的有效方法。標標準準規規范范執執行行生生產產流流程程管管控控流流程程數據開發與治理一體化數據中臺已有用戶數數據中臺已有用戶數270+270+人,已
20、遷移上線作業數人,已遷移上線作業數8000+8000+個,數據質量稽核數個,數據質量稽核數100+100+個,自助分析累計個,自助分析累計60000+60000+次,次,已導入元數據模型數已導入元數據模型數1500+1500+套,具備作業調度和元數據統一管控能力。套,具備作業調度和元數據統一管控能力。開發治理一體化:某券商落地成果開發治理一體化:某券商落地成果標準:標準:公司內數據孤島現象嚴重,阻礙數據內部共享質量:質量:數據質量難以及時滿足業務預期,無法助力數據挖掘產生價值安全:安全:難以兼顧數據流通和數據安全的平衡三大痛點三大痛點組織架構:組織架構:結合企業組織架構及人員配置落實數據治理工
21、作、權責分擔機制業務流程:業務流程:針對存量數據、新增數據制定不同的治理流程,并做到倉內倉外元數據統一管理產品工具:產品工具:將整個數據治理流程貫穿于各個子產品模塊中,打造開發與治理一體化的數據中臺重要舉措重要舉措數據標準管理:數據標準管理:基礎數據標準179個,指標數據72個,搭建統一的公共字典合計7個詞根新增159個,制定兩套數據標準分類方案。數據質量管理:數據質量管理:累計沉淀400余項數據質量規則。數據安全管理:數據安全管理:基于數據分級分類的數據服務審批流程上線,基于脫敏數據在開發環境進行開發和任務發布的研發流程打通。落地成果(截至落地成果(截至20222022年)年)治理目標:治理目標:數據資產化、數據價值化、數據智能化ThankThank YouYou