嘉年華專訪 | 國際上智能運維研究

數據技術嘉年華等你來

張聖林,南開大學助理教授,於2017年7月獲清華大學工學博士學位(計算機科學與技術專業)並獲得清華大學優秀博士學位論文,導師是劉瑩老師和裴丹老師。

在攻讀博士學位期間,曾經赴美國佐治亞理工學院學習四個月,導師爲Prof. Jun (Jim) Xu。此外,在百度運維部、系統部有長達三年的實習經歷。主要研究方向爲基於機器學習的(人工)智能運維,包括異常檢測、故障定位、根因分析和故障預測等。以第一作者或通訊身份在IEEE Transactions on Service Computing、ACM SIGMETRICS、ACM CoNEXT、IEEE ISSRE、IEEE/ACM IWQOS等國際期刊或會議上發表論文十餘篇。

2017年11月至2018年5月,與裴丹教授一道,張聖林作爲核心人員參與了首屆AIOps挑戰賽的籌備工作,並籌辦了AIOps挑戰賽決賽暨首屆 AIOps 研討會。

本文選自張聖林老師在第29屆國際軟件可靠性工程旗艦會議 ISSRE 2018( IEEE International Symposium on Software Reliability Engineering)上的獲獎論文“Robust and Rapid Adaption for Concept Drift in Software System Anomaly Detection” 《指標模式漂移後的準確異常檢測》一文,文中提到的StepWise這個最新研究成果,可以快速且準確的適應異常檢測系統面臨的概念偏移問題。

張老師將在2018數據技術嘉年華分享“基於日誌分析的智能運維”一題,會從全心的視角分析智能運維這一話題,敬請期待。

掃描宣傳圖上的二維碼即可註冊參會。

1

介紹

StepWise 是清華 NetMan實驗室與搜狗公司合作的最新研究成果,能快速且準確的適應異常檢測系統面臨概念偏移的問題。概念偏移(Concept Drift) 是指異常檢測的對象(關鍵業務指標)時序數據發生劇變。概念漂移會直接導致異常檢測系統的準確率降低,而StepWise能夠使得異常檢測算法快速適應並恢復到原來的準確率。 StepWise能應對各種類型的異常檢測算法。該論文發表在ISSRE18,軟件可靠性工程的旗艦會議(CCF rank B),並且入選了該次會議的 Best Paper Finalist(三篇之一)。

獲獎證書

ISSRE'18 會議全稱爲第29屆國際軟件可靠性工程旗艦會議 ISSRE 2018(IEEE International Symposium on Software Reliability Engineering)。

2

背景

隨着Web服務如搜索引擎、電子商務和社交網絡等突飛猛進的發展,細緻的監控服務關鍵業務指標(KPI,比如頁面瀏覽量、在線用戶數、平均響應時間等時序數據流)對保障服務的穩定性尤爲重要。我們曾介紹過 KPI 異常檢測的框架(opprentice),包括現有的多種類型檢測器如滑動平均、時間序列分解(TSD)等。爲了能夠準確的檢測出異常,運維工程師需要花費大量精力選擇檢測器、調整參數和閾值等。

實際運維場景中調整好的檢測器也不是一勞永逸的,我們發現檢測準確率會隨着時間的推移而顯著降低,這是因爲 KPI 發生了概念偏移(Concept Drift)。在我們的語境下,Concept 是 KPI 的數據分佈,Concept Drift 意爲 KPI 的數據分佈發生了劇變。而這種變化一般是KPI曲線的階躍(如圖中所示的巨幅下降),或是緩慢的上升/下降(如內存泄露等逐漸惡化的場景)。

概念偏移被運維工程師分成符合預期的與不符合預期的,符合預期的是由運維工程師主動操作或者業務實際增長導致的 KPI 劇變,而不符合預期意味着異常的突變,比如軟件變更後導致服務性能受損甚至中斷,需要快速回滾到之前的版本。符合預期的概念偏移發生的次數更多,據統計在概念偏移總數中佔比超過80%。

這是因爲運維工程師的日常工作就在做軟件的變更,包括軟件升級,擴容,遷移和配置更新,以滿足部署新特性、修復bug和提升系統性能的需求,比如擴容是把服務部署到更多的服務器上,單臺服務器上的請求量就會明顯下降,因爲全部的請求量是穩定的,這種情況就是一個預期之中的概念偏移:運維工程師認爲每臺服務器的PV會在很短時間內下降。這些正常的運維操作之後就會使得數據分佈發生符合預期的劇變,而異常檢測算法總是利用歷史的數據分佈,不能夠準確的預測新的數據分佈而做出準確的異常判斷。

如下圖所示,假設運維工程師使用時間序列分解(TSD)算法做爲異常檢測器,這個異常檢測的參數爲擴容以前的 KPI “量身定製”的,綠色的點線可反應其基準線和噪聲標準差的正常範圍。在8月3日擴容後 KPI 數據分佈變化了,TSD 就會產生很長時間(8月3日一天時間)的誤報,因爲算法本身使用歷史的數據預測新的“正常”數據。雖然檢測器可以逐漸跟上新的數據分佈的基準線,但新的噪聲標準差是很難適應的,還會有誤報/漏報(如8月6日)。因此 TSD 輸出的異常點不再符合運維工程師的需求。我們工作的目標就是適應新的數據分佈(運維工程師預期之中的概念偏移)應對各種異常檢測系統,以避免長時間的準確率損失。

概念偏移的示例

3

挑戰

1. 頻繁出現的符合預期的概念偏移:大型 web 服務每天都會有上千次的軟件升級和配置變更,使得 KPI 中會出現很多符合預期的概念偏移。

2. 海量的 KPI 數據:有數十個業務部署在上萬的服務器上。每個服務器上都有多種關鍵指標。

3. 不同類型的異常檢測器:針對不同的 KPI 曲線,實際會用到不同種類的異常檢測器甚至是幾種檢測器的組合。

4. 需要快速適應:發生預期之中的概念偏移,運維人員會收到大量的誤報和錯報。

4

設計思想

發生概念偏移後通過人工重新配置異常檢測器參數來應對是很不方便的,針對上述挑戰,我們提出了一個自動的、魯棒的、快速的能適應各種異常檢測器的概念偏移的系統 --StepWise。下圖是 StepWise 的設計框架。

StepWise系統框架

StepWise 主要分爲三個部分:

1. 概念偏移的檢測:StepWise 系統要位於異常檢測系統之前,KPI 數據流輸入後首先檢測是否有概念偏移。

2. 區分概念偏移是否符合預期:如果有概念偏移,我們需要區分其是否符合預期,不符合預期的概念偏移運維工程師要快速處理該異常,符合預期的進行下一步。

3. 迅速適應符合預期的概念偏移:就是要使得概念偏移後新的數據分佈也能快速適配原來精心設計的異常檢測算法和參數,輸出的數據進行異常檢測。

5

概念偏移的檢測:iSST-EVT

概念偏移的檢測等同於劇變檢測,我們之前介紹過的 FUNNEL 使用 improved SST(iSST)算法能快速、準確的檢測出KPI劇變,然而該算法應對海量KPI數據還有侷限性,它需要運維人員根據不同曲線的劇變分數指定閾值。

我們設計了iSST-EVT算法,利用極值理論(EVT)作爲自動設置閾值的工具,極值理論不需要對數據分佈(Uniform/Gamma/Frechet)進行假設,而是能通過通用的經驗參數來確定閾值。如下圖所示,用 iSST 算法可以得到原始 KPI 的劇變分數(圖 a 和 b 中綠色虛線所示,由奇異譜分解得到的沒有上界的數值,對應於 KPI 中的每個點),而確定劇變點需要對劇變分數設置閾值,這個閾值在不同的 KPI 曲線中不同,EVT 能夠自動給出閾值(圖 b 中紫色點所示),不再需要手動設置或對劇變分數的分佈做假設。

iSST-EVT 算法結果示例

6

區分概念偏移是否符合預期:DiD

當檢測出概念偏移,運維工程師需要根據其領域知識判斷其是否符合預期,我們提供了差分分析(DiD)的方法給運維工程師參考。當有準確的活動時刻輸入(如上線、配置變更、節假日),DiD 能得到當前的概念偏移是否由該活動導致的而排除其他季節等條件的影響,然後由運維工程師決定該概念偏移是否符合預期。如上線失敗與否都可能導致概念偏移,只有運維工程師才能根據其領域知識作出決策。

7

迅速適應符合預期的概念偏移:RLM

對符合預期的概念偏移需要快速使其數據分佈適配原來精心設計的異常檢測算法和參數,這裏我們通過大量的歷史概念偏移情況得到一個觀察,即新的數據分佈和久的數據分佈是可以線性擬合的,也就是說新的數據分佈是舊的數據分佈一個縮放版本。這是有物理意義的,因爲擴縮容等產生的概念偏移都是把服務器的流量平均分配到了更多或更少的服務器上。

根據這個觀察我們設計了使用魯棒的線性模型(RLM)進行適應的算法,如下圖所示,取概念偏移後新的數據分佈全部樣本 A,和它的時間段在週期歷史上對應的若干段按採樣時間逐點取中位數得到 B ,使用 RLM 得到 BA 的線性關係 f = RLM(B ~ A),接下來新收到的時間點數值就由此線性關係進行變化計算 A' = f(A)A' 即作爲異常檢測器的輸入。而後新的點也再加入 A 集合重覆上述得到 f 的過程。這一線性擬合的時間初始可用 6 分鐘的數據(正好是第一步概念偏移的檢測時間窗),停止計算 f 時間經實驗得到最好是 24 小時即一天的時間,之後的新來數據都用 f 進行線性變化。也就是說使用我們的方法,在 6 分鐘後就可以適應符合預期的概念偏移,在實際場景中是比較適合的。

RLM 算法過程示例

8

結論

我們的 StepWise 系統給出快速魯棒的概念偏移檢測與適應方法,通過 iSST-EVT、DiD 和 RLM 適應算法,運維工程師不再需要人工的設置檢測算法的參數和閾值,也使得異常檢測系統能夠持續有效的發揮作用。我們的評估實驗是基於搜狗搜索部門提供的真實運維數據,使用幾百條、六個月範圍有標註的 KPI 數據,發現對比傳統不做概念偏移適應的異常檢測方法,使用 StepWise 能使得多種常用異常檢測算法的平均準確率(F1-score)提升 206%,適應時間約爲 6 分鐘。

掃描上方二維碼,參加數據技術嘉年華

更多精彩,請實時關注2018數據技術嘉年華,張老師將更多的技術乾貨面對面分享給屏幕前的你!限時註冊報名享受到場退費0元享活動(限99元票種)

時間2018年11月16日-17日(週五、週六)

地址北京市東三環中路61號富力萬麗酒店

超值贈送(限時優惠)

本次大會由 雲和恩墨 鼎力支持,恰逢雲平臺【墨天輪】上線開放,註冊雲服務平臺,您將可以得到大會『免費』參會的限時禮遇 + 雲服務大禮包

註冊獲贈服務禮包:價值 ¥20000 雲服務優惠券; 限時購票參會返還:現場參會即原路退還全部購票費用(僅限單價99元票種)

注:退款在會後5個工作日內完成。

請掃描以下二維碼,在網站完成註冊即可購買限時優惠門票,並獲贈雲服務大禮包:

票種

溫馨提示:本次大會不支持退票,敬請諒解。

部分嘉賓

歷屆精彩

主會場

嘉賓風采

高人氣分會場

交流諮詢展區

-- 數據精彩即將上演,歡迎更多的夥伴加入!--

媒體合作&商務合作:佟女士 010-59007017-7033

11月16-17日,讓我們攜夥伴一起相約北京!

如果其他問題,歡迎大家留言諮詢哦。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章