如何在運維場景中構建乙個優秀精準的異常檢查系統

2021-09-23 06:56:17 字數 987 閱讀 4389

在實際的運維場景中,構建乙個異常檢測系統往往需要兩個角色共同參與:領域專家和演算法開發人員。領域專家也就是我們的運維人員,他們對kpi曲線的行為很熟悉,可以通過觀察kpi曲線並結合自己的領域知識,判斷kpi曲線是否出現異常;演算法開發人員負責構建異常檢測系統,他們熟悉異常檢測器(演算法),但是實際中有各種不同型別的kpi曲線需要維護,所以需要為不同型別的kpi曲線選擇合適的異常檢測器以及合適的演算法引數。

在實際構建異常檢測系統時,首先需要運維人員結合自己的領域知識向演算法開發人員描述異常,然後開發人員根據這些描述來為kpi曲線選擇合適的檢測器和演算法引數,接著領域專家根據這些檢測器的檢測結果向開發人員反饋,來進一步優化檢測器。所以實際中經常需要經過多次迭代才能開發出可用的異常檢測系統,有時還會出現最終開發失敗的例子,這是因為:

1.運維人員難以事先給出準確、量化的異常定義

2.選擇和綜合不同的檢測器需要很多人力

3.檢測器演算法複雜,引數調節不直觀

實際中經常需要經過多次迭代才能開發出可用的異常檢測系統,有時還會出現最終開發失敗的例子。因此,我們就會問,有沒有乙個可以自動選擇異常檢測器和自動調節演算法引數的系統呢?答案是有!,我們實驗室的研究成果:基於機器學習的kpi自動化異常檢測系統(opprentice)就是針對它設計的,下文將主要介紹opprentice 的設計思想以及設計框架。

設計思想

設計框架

離線訓練分離器

總結

如何在 Linux 中查詢乙個檔案

對於新手而言,在 linux 中使用命令列可能會非常不方便。沒有圖形介面,很難在不同資料夾間瀏覽,找到需要的檔案。本篇教程中,我會展示如何在 linux 中查詢特定的檔案。第一步要做的是通過 ssh 連線到你的 linux 在 linux 中查詢檔案有兩種方法。一種是使用find命令,另外一種是使用...

如何在linux中執行乙個指令碼

如果是開機馬上執行的指令碼,可以將指令碼寫到rc.local中 如果是使用者登入後自動執行指令碼,可以將指令碼寫到相應的使用者目錄下 bash profile 若指令碼 bash profile 不存在,可以直接拷貝 etc profile 命名為 bash profile 如果是要任一使用者登入後...

非同步執行如何在乙個函式中實現

前言 非同步執行經常要用到2個函式,乙個函式處理ui執行緒的呼叫,另外乙個函式處理核心執行緒呼叫。並且中間要用很多命令來轉接不同的函式。這樣函式的 量和處理要麻煩很多。可以用模板函式做一下轉接。模板函式如下 用到的函式打包知 std bind與std function詳解 pragma once i...