點擊藍字 關注我們
用戶案例 | T3 出行
業(yè)務挑戰(zhàn)
作為一家車聯網驅動的公司,T3出行匯聚了“人、車、路、云”各端的海量數據。為了承載如此多元化的數據以更好地釋放數據價值,T3出行構建了以Apache Hudi為基礎的企業(yè)級的數據湖,并在此之上搭建了BI分析,機器學習,數據質量,權限管理等一系列平臺,為業(yè)務提供強有力的支撐。
同時,T3出行使用Apache DolphinScheduler作為全平臺的任務調度載體,任務類型包含Spark、SQL、Shell、Python等,日均任務數量4w+。且隨著內部平臺越來越多,業(yè)務結構越來越復雜,也在倒逼內部對Apache DolphinScheduler適用性、可靠性及能效的不斷提升,愿景是實現從數據接入到數據應用的一站式數據應用于交互。
01
解決方案
01
數據湖架構
來自Kafka的流式數據會對接Flink進行流式消費;隨后Flink會以低延遲的形式將數據寫入到Hudi數據湖中。Apache DolphinScheduler及其他組件以此為基礎圍“湖”而建,架構整體上保證了數據湖上低延遲的 Pipeline 高效調度與加工。
02
提高適用性
依賴任務邏輯重構
對于非depend-all的依賴任務,以任務實例視圖代替工作流實例視圖作為依賴判定基準。如果因為一個沒有包含目標依賴任務的工作流片段而導致依賴任務判定異常,這顯然是不符合預期的。下圖以恢復失敗場景為例:
跨Apache DolphinScheduler版本依賴
為了既可以使用高版本Apache DolphinScheduler的新特性,又不對線上低版本Apache DolphinScheduler做變更,同時保證Apache DolphinScheduler高低版本間互通、協同調度,實現了跨Apache DolphinScheduler版本依賴。
ds-client
提供ds-client用于內部平臺與DScheduler交互。多數情況下,業(yè)務傾向于通過消息觸發(fā)的方式與調度進行交互,通過ds-client可以將Apache DolphinScheduler核心功能完全釋放到平臺側,對于上層業(yè)務來說甚至不感知調度的存在。
03
提高可靠性
提高SPARK任務容錯
異步獲取application id,不再依賴解析任務日志,spark日志級別可設置為INFO以上
添加針對業(yè)務使用"spark.yarn.submit.waitCompletion=false"參數時的容錯
添加針對rm主備倒換期間yarn任務的容錯及校驗
精細化監(jiān)控與告警
例如增加服務負載監(jiān)控與告警;或自定義工作流定義未運行監(jiān)控告警等。
黑名單與滾動升級
雖然可以依賴Apache DolphinScheduler master/worker容錯來類似實現滾動升級,但任務容錯的原理是kill&restart,低效且缺失容錯監(jiān)控手段。同時在日常運維時,也缺少對于故障節(jié)點的規(guī)避措施。對此,T3出行支持了master/worke黑名單管理,并基于此實現了滾動升級。
04
提高能效
資源中心緩存
對于引用了資源中心文件的任務,在每次執(zhí)行時都要執(zhí)行下載操作是冗余的。為此,T3出行實現了資源中心緩存,同一臺worker節(jié)點上的同個資源中心文件,可以被所有任務反復引用,并保證本地緩存與資源中心文件的一致性。
數據源集成Kyuubi,為使用hive數據源的SQL任務提效?
02
用戶收益
受益于Dolphin Scheduler的高擴展性和開放性,T3在性能、穩(wěn)定性及易用性方面做了很多創(chuàng)新和優(yōu)化,使得DS所在公司內所涵蓋的業(yè)務越來越廣,調度需求越來越多。
過程中真實地幫助業(yè)務部門以較低的門檻啟動大數據相關需求,同時提升了數據開發(fā)部門的研發(fā)效率。
目前,T3出行內部聚焦在如何通過Apache DolphinScheduler實現大數據開發(fā)的CI\CD管理,這將使Apache DolphinScheduler一站式開發(fā)更加完善。
03
用戶簡介
T3出行是是由一汽、長安、東風三家央企聯合阿里、騰訊、蘇寧三家知名互聯網公司共同成立的主打B2C的網約車平臺,是國內首家基于車聯網的出行平臺。公司提供的服務包括出租車、專車、拼車、代駕、租車等多種出行方式。
T3出行的宗旨是為用戶提供更加安全、便捷和舒適的出行體驗,同時也為司機和車主提供更加優(yōu)質的服務和收益。
參與貢獻
隨著國內開源的迅猛崛起,Apache DolphinScheduler 社區(qū)迎來蓬勃發(fā)展,為了做更好用、易用的調度,真誠歡迎熱愛開源的伙伴加入到開源社區(qū)中來,為中國開源崛起獻上一份自己的力量,讓本土開源走向全球。
參與 DolphinScheduler 社區(qū)有非常多的參與貢獻的方式,包括:
貢獻第一個PR(文檔、代碼)?我們也希望是簡單的,第一個PR用于熟悉提交的流程和社區(qū)協作以及感受社區(qū)的友好度。
社區(qū)匯總了以下適合新手的問題列表:https://github.com/apache/dolphinscheduler/issues/5689
非新手問題列表:https://github.com/apache/dolphinscheduler/issues?q=is%3Aopen+is%3Aissue+label%3A%22volunteer+wanted%22
如何參與貢獻鏈接:https://dolphinscheduler.apache.org/zh-cn/community/development/contribute.html
來吧,DolphinScheduler開源社區(qū)需要您的參與,為中國開源崛起添磚加瓦吧,哪怕只是小小的一塊瓦,匯聚起來的力量也是巨大的。
參與開源可以近距離與各路高手切磋,迅速提升自己的技能,如果您想參與貢獻,我們有個貢獻者種子孵化群,可以添加社區(qū)小助手微信(Leonard-ds) ,手把手教會您( 貢獻者不分水平高低,有問必答,關鍵是有一顆愿意貢獻的心 )。
添加社區(qū)小助手微信(Leonard-ds)?
添加小助手微信時請說明想參與貢獻。
來吧,開源社區(qū)非常期待您的參與。
< ?????>
更多精彩推薦
?PyDolphinScheduler 發(fā)布 4.0.3 版本,修復無法提交文件到資源中心的問題
?優(yōu)秀用戶案例有獎征集 | 活動火熱開啟,快來投稿!
?Apache DolphinScheduler 從 1.3.4 升級至3.1.2 過程中的問題記錄及解決方案
?Apache DolphinScheduler 3.1.5 發(fā)布,修復工作流實例甘特圖查看異常等問題
?去年辦了這么多場Meetup都沒有你,2023年趕緊安排起來!
?為什么工作流中的數據質量要盡早驗證,經常驗證?
?【每周 FAQ】第二期 | 回答你關于 Apache DolphinScheduler 的疑問文章來源:http://www.zghlxwxcb.cn/news/detail-423235.html
點擊閱讀原文,點亮Star支持我們喲文章來源地址http://www.zghlxwxcb.cn/news/detail-423235.html
到了這里,關于DolphinScheduler×T3出行 | 打造車聯網一站式數據應用交互體驗的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!