閱讀226 返回首頁    go 阿裏雲 go 技術社區[雲棲]


阿裏雲高級技術專家空見: CDN的數據化之路

想要實現優質高速的互聯網視頻服務,一定離不開高質量的內容分發網絡服務,就是我們常說的CDN,在10月13日雲棲大會視頻多媒體分論壇上,阿裏雲高級技術專家空見為大家講解了CDN服務過程中,數據處理、安全監測、日誌分析、智能分析是如何為CDN賦能的。下麵是演講主要內容提煉:

一、業務背景

目前阿裏雲CDN的邊緣節點的數量,國內有1200餘個,海外有200餘個,可承載的帶寬能力超過80Tbps,基本能覆蓋國內一半的分發要求,國內與海外的部署也是十分廣泛的。在產品方麵,CDN包括PCDN、安全加速、全站加速等各種子產品,因為分析的場景不同,所以對數據平台的擴展性也提出了更高的要求。從業務規模來看,阿裏雲CDN現在線上跑著百萬級的域名,每個域名的分析都要做,比傳統CDN高了兩個量級。如此龐大的業務,對於用戶內容的分發是好事情,對數據的回收和分析,卻是一個不小的挑戰。

3_1

二、數據需求

CDN的數據有三個關鍵字:海量、可靠、實時。

海量,CDN目前每秒鍾有大幾千萬的數據訪問,每天會沉澱出來5PB的係統日誌,所以離線數據通常在EB級別,這個對實時計算和離線分析都有很大的壓力;在監控這塊阿裏雲CDN每天達到千億級別,而且每年CDN數據增長都在100%之上,所以係統必須要有很強的擴展性,並提前設計好各個環節。

可靠,CDN的數據一定要是準確的,不能有毛刺的數據。因為數據的應用場景是很苛刻的,比如計費和監控,不能出現紕漏,不能漏報誤報。數據出來後,阿裏雲CDN還要在全球範圍內調度流量,一絲一毫的不準確都可能導致很嚴重的後果,所以對於數據的準確性要求很高。第二是係統本身的穩定,係統各個環境不能有明顯的瓶頸,係統要有足夠強的容災能力,係統的自動恢複方案也要是充分的。

實時,在從前,阿裏雲CDN是五分鍾分析一次數據,不管是計量還是計費,都以這個為標準。現在,因為有了更多的業務場景,以直播為例,如果一個主播推流斷掉了,不能馬上發現的話,影響的可能就是幾十、上百萬的用戶的觀看體驗。所以,在實時性上,阿裏雲CDN現在能做到分鍾以及秒級的實時,也就是說,在整個數據的要求上來看,不僅吞吐量要大,延遲也要足夠低。

3_2

如此大規模的數據,如此嚴苛的要求,阿裏雲CDN又如何應對呢?

三、數據收集

下麵我們看看阿裏雲CDN在數據收集方麵是怎麼做的。現在整個係統數據量化的程度還是比較高的,不光是用戶的訪問數據,係統的操作數據也是可以量化的。下麵是數據收集全貌圖:

3_3

數據來源,有兩個方麵,一個是左邊的節點,另一個是右邊的用戶。

先從從左邊的邊緣節點來看,它是從全球的邊緣節點去采集和處理,上麵的數據大部分都是訪問、回源的日誌,節點之間互相探測的日誌等,在總數據中占比80%以上。這裏的數據量級非常大,而且本身CDN就是分布式係統,所以阿裏雲CDN將一部分數據分析工作在節點上就先完成了,比如通用的流量、命中率、QPS等指標,會在節點上做預處理,同時,全量的數據也會通過流式傳輸往數據中心去走。

右麵是用戶數據,通過瀏覽器或SDK來訪問我們內容的用戶,還包括係統上的用戶,包括管理員管理配置、業務人員在後台對線上資源進行調配等,一般這裏的數據直接通過流式傳輸平台SLS客戶端直接發出。

在中心傳輸這一層,阿裏雲CDN采用阿裏雲本身的SLS產品,SLS支持對數據進行抽取、轉化、分發、檢索等功能,本身比較靈活,滿足了ETL的場景,並且可以在上麵做一些客戶定製化的處理。SLS下來後,再用Blink對數據進行流式處理,它有一個好處就是中間狀態可以保存,不需要應用和外部的第三方存儲再做交互,能夠滿足數據定製化分析的一些場景。原始的訪問及分析後的業務數據,最終會沉澱存儲在ODPS中。用戶也可以選擇其他存儲方式,比如可以提供文件下載功能的對象存儲OSS。另外,時序數據也會存在OTS數據庫中,以備實時檢索。

以上的數據收集,基本上都是采用阿裏雲的產品,阿裏雲CDN的技術專家們隻需要把係統串聯起來,保證整體可用性即可,如此,就能將更多精力集中在數據的分析和應用上了。

四、數據分析

在數據分析這塊,離線方麵會做的輕一點,做運營報表和數據挖掘。阿裏雲CDN更多的是做實時數據分析。這兩個分析係統,會將數據最終匯集到專家係統,用於檢測這些數據有沒有異常,找到異常問題的定位。找到問題根源後,根據其他平台產生的數據,關聯起來,用機器學習的算法做一個問題的分類。
3_4

數據分析的使用場景包括:
自動化運維,通過機器資源、線上問題的收斂,阿裏雲CDN目前隻需要三個運維就足夠了;
智能調度,實時根據大區、節點的情況,合理調度流量和進行節點建設;
用戶畫像,相當於給用戶提供一個體檢,給出當前服務的建議,優化業務;
事件中心,記錄當前節點上正在發生的事件,關注網絡抖動和發布情況。

五、數據應用

左邊是官網的截圖,用戶可以根據自己想要的維度,關注各類報表,看到CDN使用的情況。
中間是內部的監控係統,分鍾+秒級監控,用於問題的複排和打標。
右邊是事件的數據,顯示當前整個平台的流量、事件等級和匯集情況等。

3_5

除了業務層數據,阿裏雲CDN和阿裏雲IDST聯合,對CDN上分發的文本、圖片、視頻等內容進行鑒定,篩查涉黃等違規內容,防止IP被封。

六、總結

整個CDN數據化為了驅動係統,形成下發、執行、采集、分析的閉環。

3_6

在分享的最後,空見總結道:“從業務接入層,我們可以提供方便、快捷的接入環境;在策略執行層,我們可以快速把操作發布到線上,達到秒級生效;在數據生產層,我們將把所有的係統都量化起來,采集到海量、有效的數據;在決策中心層,我們相應對數據進行收斂,隻關注關鍵數據指標,整個是一個閉環的過程。有了數據化的係統,後麵的自動化、智能化才有更多發揮的空間。”

最後更新:2017-10-16 14:33:45

  上一篇:go  怡海軟件:嘮嘮CRM\ERP顧問的溝通技巧
  下一篇:go  《阿裏巴巴Java開發規約》插件全球首發!