阿裏雲全球首批MVP楊繡專訪 - 技術要堅持刨根問底
自我介紹
我現在在人人車負責數據架構方麵的工作,搭建數據采集、抓取、存儲、計算、BI可視化等係統。
之前在百度網頁搜索部,是一名架構工程師(主要在抓取業務),技術方向是高並發分布式服務架構,負責大抓取係統內的架構模塊研發。
涉及高並發抓取器、鏈接緩存、壓力控製、時效性篩選等子係統。
工作的主要目標是係統性能優化、穩定性提升,為策略算法應用提供舒適的架構,這也是我自認為比較擅長的。
使用阿裏雲產品過程中,我提過很多工單,包括係統bug、易用性問題、功能建議。因為喜歡刨根問底,不滿足於“重啟一下”、“再試一次”之類的臨時性解決方法,我會很認真地描述使用場景、異常現象和可能的原因,要求客服和後台研發繼續分析給出明確原因。
這一點對阿裏雲改進產品體驗有一些幫助。
人人車和MaxCompute(原ODPS)的磨合和共同成長
早期,人人車的報表係統是使用RDS(MySQL)+ECS搭建而成,因為當時係統數據量很小,所以運行一段時間比較穩定。
隨著業務數據量變大,係統物理指標報警越來越多,我們需要經常給RDS增配,逐漸發現RDS實例每月也要花不少錢了,所以考慮將數據計算部署到可擴展性更好的計算平台上。
當時考慮Oracle和Hive兩種方案。按當時我們的業務場景和數據規模來看,Oracle完全能夠勝任,但是考慮到未來數據增長、Oracle維護成本較高,我們也不熟悉Oracle,所以直接就否掉了這個選項。
而Hive非常符合我們的技術背景,團隊裏很多人以前就用過,Hive SQL語法也非常簡單易學,可擴展性也很好。當時了解到阿裏雲有和Hive類似的數據平台MaxCompute(原ODPS),所以就安排時間試用了一下。
試用MaxCompute(原ODPS)前其實心裏還是傾向於Hive,因為作為Hadoop生態的開源平台開放性更好,我們也有相關經驗。我們參考網站的MaxCompute(原ODPS)幫助文檔,經過幾個小時的了解和體驗,沒有什麼不適的感覺,和Hive類似的語法、存儲方式、計算模型,但不需要我們自己部署、運維。
不足之處是不能支持我們的一些實時數據場景。
綜合考慮後,我們決定使用Maxcompute搭建數據倉庫,作為數據存儲和計算的平台,實時性場景另行解決。阿裏雲當時還有另一款產品-DPC(采雲間)是一套針對MaxCompute的SQL-IDE、任務管理和運維監控的web平台。
通過采雲間,我們可以
1. 在網頁上通過點選、拖拽設置定時同步任務,把Mysql的數據拉到MaxCompute的表格,操作比較方便;
2. 編寫SQL代碼實現業務統計邏輯;
3. 再設置同步任務將計算結果推送到我們BI係統的Mysql中。
後來采雲間停止維護,數加·大數據開發套件Data IDE。
使用MaxCompute(原ODPS)(+采雲間+數加)早期確實是遇到了很多問題,一些局部性的問題能夠得到客服和技術支持及時處理和修複,比如一些可穩定複現的bug,而不易複現但出現頻率很高的問題讓人非常困擾。
工單溝通不能讓那一邊的技術人員很好了解我們這邊發生了什麼問題,後來和數加支持團隊建立了定期溝通機製,將雙方的技術人員拉到了一個釘釘群能更順暢地溝通這種難以通過工單描述的現象和複現步驟。
曾經比較刻骨銘心的記憶有兩段,一段是關於產品功能的、一段是關於係統穩定性。
從一個平台遷移到另一個平台,我們經曆了兩次,第一次是將數據任務從RDS遷移到采雲間,第二次是從采雲間遷移到數加平台。我們的業務係統當時少說也有幾百個表,而做這件事隻有1或2個人,采雲間和數加當時在產品設計上可能沒有考慮這種場景,所以從Web頁麵沒有辦法批量設置數據上傳任務,而通過第三方軟件配置的數據上傳任務不能和阿裏雲的任務調度很好地集成在一起。
好在這種遷移並不多,忍一下就好了。聽說,年初上線的數據集成模塊能夠很好地解決這類問題。
2016年5月,我們的數據係統穩定性很差,平均每周一次故障導致任務流中斷。每當早上醒來發現數據沒有算完,整個一天都會心情很差。
究其原因,
- 一方麵是我們的任務結構設計有缺陷,如數據源變化、任務流依賴過於集中、關鍵路徑缺少監控。
- 另一方麵是MaxCompute(原ODPS)平台異常,如任務隊列阻塞、計算資源不足。
我們和阿裏雲團隊當麵分析了每次故障的原因,根據阿裏雲的建議對任務流進行了梳理、調整任務依賴關係,避免依賴過於集中,將不合理的定時觸發改為上遊任務觸發。
使用數加平台的運維係統對關鍵節點添加了”出錯報警”、”未完成報警”,同時也給關鍵路徑的每段SQL代碼添加一條統計代碼,監控每天核心任務數據量的異常變化;阿裏雲方麵則加強平台監控、優化了異常處理流程。
我們最大的感受是阿裏雲售後和技術支持團隊對用戶的問題和反饋非常重視、跟進也非常及時,值得一個大大的讚。
【阿裏雲花肉醬:阿裏雲並不完美,希望大家來一起幫助阿裏雲提升產品體驗 https://connect.aliyun.com/】
很榮幸作為阿裏雲全球MVP,
我認為這是阿裏雲對我們團隊的認可,我們在使用阿裏雲服務過程中提出的問題和建議,能夠幫助更多的用戶節省時間提高效率少走彎路
最後更新:2017-06-26 15:32:56