1. 程式人生 > >阿裏雲高級技術專家空見: CDN的數據化之路

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

cdn 運維 cdn服務

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


一、業務背景

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

技術分享

二、數據需求

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

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

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

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

技術分享

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

三、數據收集

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

技術分享


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

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

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

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

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

四、數據分析

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


技術分享


數據分析的使用場景包括:

自動化運維,通過機器資源、線上問題的收斂,阿裏雲CDN目前只需要三個運維就足夠了;

智能調度,實時根據大區、節點的情況,合理調度流量和進行節點建設;

用戶畫像,相當於給用戶提供一個體檢,給出當前服務的建議,優化業務;

事件中心,記錄當前節點上正在發生的事件,關註網絡抖動和發布情況。

五、數據應用

左邊是官網的截圖,用戶可以根據自己想要的維度,關註各類報表,看到CDN使用的情況。

中間是內部的監控系統,分鐘+秒級監控,用於問題的復排和打標。

右邊是事件的數據,顯示當前整個平臺的流量、事件等級和匯集情況等。


技術分享


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

六、總結

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


技術分享


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


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