天天看點

【雲栖号案例 | 網際網路】高德“一鍵”上雲 實作核心資料“3點産出”

雲栖号案例庫: 【點選檢視更多上雲案例】 不知道怎麼上雲?看雲栖号案例庫,了解不同行業不同發展階段的上雲方案,助力你上雲決策!

公司簡介

高德地圖旗下的高德開放平台是國内技術領先的LBS服務提供商,擁有先進的資料融合技術和海量的資料處理能力。服務超過三十萬款移動應用,日均處理定位請求及路徑規劃數百億次。高德開放平台向廣大開發者提供覆寫移動端和Web端的開發工具,開發者通過調用開發包或接口即可在應用或網頁中實作地圖顯示、标注、位置檢索等功能。使得LBS應用的開發過程更加容易。

高德正在進行的位置大資料探索與實踐,高德地圖開放平台通過其服務的三十萬款應用,每日百億級的位置請求和相關行為,對現實世界做了人群走向、區域熱度、行為偏好等分析和洞察,試圖通過資料畫像還原一個在我們身邊熟悉卻又陌生的世界。

2014年高德的資料架構依賴Flume進行資料采集,依賴一個僅含幾百台機器的hadoop叢集和Hive等軟體實作資料處理。2014年,高德的資料架構依賴Flume進行資料采集,依賴一個僅含幾百台機器的hadoop叢集和Hive等軟體實作資料處理。2014年9月份高德内部提出“上雲”,即将資料遷移到阿裡雲,使非流程化的作業得到流程化的管理。與其他複雜的資料遷移工作相比,2014年高德實作了“一鍵”上雲,将源資料的同步從Flume切換成TimeTunnel,後續再可配置化地切換資料。此外,遷移還伴随着代碼修改,2014年高德“上雲”僅修改了非常少的代碼,比如修改老版本M2中的接口等。上方的資料存儲層将資料媒體替換成OTS等雲端産品,以支援更加穩定的前台應用。高德将所有叢集資料都遷移到“雲上”僅花了兩個月時間。

業務痛點

從2014年“上雲”到如今2018年,高德經曆了飛速的發展,同時也暴露出了一些問題。

  • 煙囪過多,影響效率:

煙囪過多是資料倉庫中比較麻煩的問題,高德同樣存在該問題。資料使用者可能需要花費一個月尋找資料所在部門、資料的相關産品負責人以及研發人員以索要資料。2017年高德盤點資料倉庫時發現,高德内部存在二十個資料倉庫項目,并且各個資料倉庫間的資料備援度高達百分之三十,嚴重影響了團隊工作效率。此外,高德資料倉庫還存在高時延缺點,核心資料無法保證每天“7點産出”。基于以上兩個問題,高德發起了“魔方”項目,将二十個倉庫合并成一個以實作全集團的資料治理。

  • 彈性:

2018年十一期間,高德的資料處理量随業務快速增長,資料計算任務的性能和平台的穩定性都受到了極大的考驗。

解決方案

  • 效率提升:

應對這幾個挑戰的主體思路就是引入高效率的研發工具,在規範化的流程中實作協同開發,提高團隊的工作效率。

為此,高德首先統一了工具平台,引入了MaxCompute,下圖藍色部分皆為MaxCompute 為我們帶來的業務收益。在數百人的團隊中統一規範無疑是困難的,而MaxCompute提供了代碼編寫規範、排程配置規範以及研發自測規範等規範化子產品。其中,代碼編寫規範子產品使用 SQL Scan 工具自動化地檢查代碼是否符合規範,排程配置規範子產品提供了完善的使用者手冊及各種模闆輔助開發人員完成配置。統一流程要求實作定制化地管理資料開發流程,包括研發測試、開發自測、排程測試、QA測試以及最後的上線部署等流程。此外,統一模組化和語言、統一資料核定标準也非常重要。

【雲栖号案例 | 網際網路】高德“一鍵”上雲 實作核心資料“3點産出”

阿裡雲提供了一些優秀工具以建構規範化流程。

1.提供了資料血緣可視化工具,幫助資料開發團隊及時地跟蹤源資料、資料的上遊和下遊等資訊。

2.提供了開發/測試流程并行的能力,以支援完善的協同開發和高效運轉的工作。

3.提供了代碼雲端版本管理工具,允許實時檢視代碼變更、代碼管理狀态并支援復原。

4.提供了一鍵資料探查工具,允許資料開發人員通過簡單的配置探查海量資料的字段空值率,有效值率,表重複率等資訊,極大地提高了資料開發人員的工作效率。

  • 彈性計算:

資料血緣可視化工具允許資料開發人員可視化地檢視系統資源配置,下圖展示了高德在2018年9月2日的系統實際使用計算水位,其中,藍線是系統配額水位,黃線是系統的實際計算水位。

  • 阿裡雲提供的彈性計算能力允許在一定彈性資料量範圍内保證系統資源的正常計算和輸出。此外,阿裡雲還提供了穩定的計算環境,保證計算任務高效地運轉,同時避免資源競争問題。
  • 另外,為了更好地利用系統計算資源,高德團隊提出了“提高藍線、打散黃線”方案,申請擴大叢集資源配額提升算力空間,通過排程錯峰打散實際資源水位。
【雲栖号案例 | 網際網路】高德“一鍵”上雲 實作核心資料“3點産出”

上雲價值

  • 在規範化的流程以及衆多效率工具的幫助下,高德在規定時間内完成了“魔方”項目開發,得到了一緻好評。高德最終統一了資料倉庫,将内部所有百P級資料的月增速降低了40%,同時資料計算效率提升了30%。即使在2018年十一的流量轟炸時期,高德仍然實作了核心資料的“5點産出”目标(5點到7點需完成核心資料計算任務)。
  • 在擴容方面,MaxCompute為高德帶來了一鍵資源擴容能力,使得叢集擴容在小時級别的時間内完成。最後,高德還實作了計算優化,提供了人員線上值守等保障。上圖同時展示了高德在2018年10月2日的系統計算水位,藍線代表的“系統配額水位”遠高于9月2日的,說明叢集擴容工作已順利完成。同時,黃色代表的“實際資源配額水位”已完全被藍線cover,更好地保障了資源計算任務。此外,黃色高峰被明顯打散,一些重要非核心資料被錯峰排程到7點,說明計算資源的錯峰排程工作也已順利完成。阿裡雲提供的一鍵運維排程工具能夠保證系統友善的進行排程錯峰,節省人力。MaxCompute為高德帶來的彈性能力使得高德于2018年10月2日實作了核心資料“3點産出”的驕人成果。

相關産品

  • 大資料計算服務 · MaxCompute

    MaxCompute(原ODPS)是一項大資料計算服務,它能提供快速、完全托管的PB級資料倉庫解決方案,使您可以經濟并高效的分析處理海量資料。

更多關于阿裡雲MaxCompute的介紹,

參見MaxCompute産品詳情頁

  • 雲資料庫RDS MySQL版

MySQL 是全球最受歡迎的開源資料庫之一,作為開源軟體組合 LAMP(Linux + Apache + MySQL + Perl/PHP/Python)中的重要一環,廣泛應用于各類應用場景。

更多關于雲資料庫RDS MySQL版的介紹,

參見雲資料庫RDS MySQL版産品詳情頁
  • 雲資料庫MongoDB版

雲資料庫MongoDB版支援ReplicaSet和Sharding兩種部署架構,具備安全審計,時間點備份等多項企業能力。在網際網路、物聯網、遊戲、金融等領域被廣泛采用。

更多關于雲資料庫MongoDB版的介紹,

參見雲資料庫MongoDB版産品詳情頁

【雲栖号線上課堂】每天都有産品技術專家分享!

線上課堂位址:

https://yqh.aliyun.com/zhibo

立即加入社群,與專家面對面,及時了解課程最新動态!

【雲栖号線上課堂 社群】

https://c.tb.cn/F3.Z8gvnK