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

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

3_0

1、業務背景

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

3_1

2、數據需求

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

海量,CDN目前每秒鐘有大幾千萬的數據訪問,天天會沉澱出來5PB的系統日誌,因此離線數據一般在EB級別,這個對實時計算和離線分析都有很大的壓力;在監控這塊阿里雲CDN天天達到千億級別,並且每一年CDN數據增加都在100%之上,因此係統必需要有很強的擴展性,並提早設計好各個環節。安全

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

實時,在從前,阿里雲CDN是五分鐘分析一次數據,不論是計量仍是計費,都以這個爲標準。如今,由於有了更多的業務場景,以直播爲例,若是一個主播推流斷掉了,不能立刻發現的話,影響的可能就是幾10、上百萬的用戶的觀看體驗。因此,在實時性上,阿里雲CDN如今能作到分鐘以及秒級的實時,也就是說,在整個數據的要求上來看,不只吞吐量要大,延遲也要足夠低。運維

3_2

如此大規模的數據,如此嚴苛的要求,阿里雲CDN又如何應對呢?機器學習

3、數據收集

下面咱們看看阿里雲CDN在數據收集方面是怎麼作的。如今整個系統數據量化的程度仍是比較高的,不光是用戶的訪問數據,系統的操做數據也是能夠量化的。下面是數據收集全貌圖:分佈式

3_3

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

先從從左邊的邊緣節點來看,它是從全球的邊緣節點去採集和處理,上面的數據大部分都是訪問、回源的日誌,節點之間互相探測的日誌等,在總數據中佔比80%以上。這裏的數據量級很是大,並且自己CDN就是分佈式系統,因此阿里雲CDN將一部分數據分析工做在節點上就先完成了,好比通用的流量、命中率、QPS等指標,會在節點上作預處理,同時,全量的數據也會經過流式傳輸往數據中心去走。優化

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

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

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

4、數據分析

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

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

5、數據應用

左邊是官網的截圖,用戶能夠根據本身想要的維度,關注各種報表,看到CDN使用的狀況。
中間是內部的監控系統,分鐘+秒級監控,用於問題的復排和打標。
右邊是事件的數據,顯示當前整個平臺的流量、事件等級和聚集狀況等。

3_5

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

6、總結

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

3_6

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

相關文章
相關標籤/搜索