一百一十八

2021-10-12 17:39:44 字數 3792 閱讀 3994

隨著 it 技術的發展與普及,各類資訊化系統正日趨成為工業製造領域不可或缺的基礎能力,推動著業務部門、工廠產線的高效執行,因此對資訊化系統的高質量運維,是工業製造企業保持高效生產的關鍵。傳統上,企業 it 運維是通過系統指標的變化,例如處理器 / 記憶體使用率、磁碟吞吐量等,由人工判斷系統是否存在問題與隱患。隨著企業資訊化系統日趨多樣, 加之軟硬體平台不再緊密耦合,單一系統可能存在多個廠商的硬體與服務,因此資訊化系統的複雜程度正呈指數化增長,給工業製造企業的 it 部門帶來了巨大的挑戰。

雖然許多企業已經部署了自動化的運維監控系統,並基於專家規則對異常指標進行告警,但這種借助經驗構建的系統,無法讓運維人員通過告警資訊即時進行原因分析。而通過專家後期採集、分析整套系統的資料,又往往需要很長時間。同時,由於技術能力的差異,專家對監控指標的分析結論也會有差別, 為系統異常的及時甄別與處理埋下隱患。

在英特爾與南京基石資料技術有限責任公司(以下簡稱 「基石資料」)看來,要根本解決這一問題,需要從運維生態入手,

針對裝置日誌、執行資料等時序資料建模,建立 「it 健康分析」 系統來發現存在的系統隱患,進而推送給運維部門或者專門的優化部門進行優化改進,並能夠通過經驗積累實現自我優化。

如圖 2-2-19 所示,借助基於時序資料構建的 「it 健康分析」系統,企業一方面可以及時發現系統隱患,並通過常態優化或架構優化來予以修復;另一方面,模型也可對資訊化系統的運維維保進行支撐,並通過運維經驗和最佳實踐的積累,來不斷自我完善和優化。而要構建這樣的系統,工業製造企業需要解決三個方面的問題。

引入高精度、高效率的智慧型分析模型作為系統核心,減少運維系統對人力,尤其是對專家的依賴;

為智慧型分析模型提供強有力的硬體基礎設施,特別是高效能計算力的輸入;

以合理的系統架構設計,保證充分的計算、分析能力能 「 下放」 到運維一線。

基於以上分析,英特爾與基石資料首先引入 ai、大資料等技術, 通過機器學習、深度學習方法來建立智慧型模型,對複雜的時序指標資料進行分析並判別系統的執行狀態。基於海量資料訓練出的智慧型分析模型,不僅有著更勝於專家系統的準確率和效率, 更能大幅減少運維工作所需的人力,提高運維效率。一項統計資料表明,通過智慧型模型來**系統狀態變化,工作可以在秒級內完成,且分析準確率超過 98%。

為了使 「it 健康分析」 系統和智慧型分析模型發揮更大效能,英特爾為之提供了多種先進軟硬體產品與框架,為智慧型分析模型的訓練推理過程提供強勁算力和工具。同時,新方案還引入了「雲邊協同」 的新架構,一方面,通過就近部署智慧型分析模型, 提公升運維能力的實時性;另一方面,利用雲端的專家知識庫, 對發現的問題進行閉環管理,展開問題溯源與優化方案編制, 並將優化方案反饋回現場。

現在,這一全新的系統方案正廣泛地在 「 資料庫健康狀態評估」、「網路安全風險預警」 等實際場景中開展實踐,並取得了良好的應用效果。

基石資料以機器健康模型,提公升企業資料庫運維效率

■ 專案背景

作為 it 系統的核心元件之一,資料庫的健康對於企業資訊化系統的高效執行至關重要。傳統上,運維工程師需要通過資料庫管理系統 (database management system,dbms)等工具,以人工方式對資料庫進行統一的管理、控制和調配。但這種方式既繁瑣又缺乏效率,尤其當企業資訊化系統變得更為複雜,且與業務緊密關聯時,配置優化效果將直接影響企業生產的效率。以產線自動化監控系統為例,通過高畫質攝像頭採集的產線影象需要在資料庫中暫存後再送至後端處理,在這種高吞吐量的場景中,如何設定資料庫的快取機制,如何在阻塞發生前啟動相關 session 的處理等,都會直接影響該產線的生產效率和產品品質。

基石資料推出的機器健康模型能有效應對以上挑戰。這一模型利用資料庫豐富的時序化監控資料,例如連線狀態、處理器 / 記憶體使用率、磁碟讀寫時延、快取大小、等待時間等,通過機器學習或深度學習的方法進行訓練,並得到合理的資料庫健康**得分,進而幫助運維人員制定相應策略。

同時,這一健康**方法,也是英特爾與基石資料合作開展的 「it 健康分析」 系統在資料庫智慧型運維領域的重要落地,部署在邊緣的資料庫健康**系統所得到的**結果,可以與雲端的 d-smart 運維知識自動化系統形成互動,對方案實施迭代優化。

■ 基石資料機器健康模型方案描述

基石資料機器健康模型方案基本架構如圖 2-2-20 所示,貼近電網管線、電力生產等一線部署的機器健康模型,由資料預處理、模型訓練 & 驗證以及**系統幾部分組成,可以使用訓練資料,通過特定演算法訓練模型,並利用測試資料對模型效果進行驗證,迭代優化模型。最終的**結果將傳送到位於雲端的 d-smart 運維知識庫,並可以對接內外部專家系統、廠商支撐、系統優化團隊以及專門的 it 系統健康管理團隊,根據**結果對資料庫狀況進行分析,開展進一步優化。

機器健康模型會對資料庫當前的健康狀態進行評價打分,並**未來一段時間內的健康得分。因此如圖2-2-21所示,模型的輸入資料x包括了會話連線狀態、處理器/記憶體使用率、磁碟讀寫時延、快取大小等具有時序特徵的資料庫監控資料,輸出y則是資料庫的健康得分,包括當前分數和未來時間的**分。分數為百分制,如96分。模型需要通過健康得分(標籤)來調整優化模型的引數,因此模型採用的是監督學習的方法。

模型首先從一線資料中獲得供訓練和測試使用的資料集,這些資料已經預先打好標籤,並按照 80%:20% 的訓練與測試比例進行劃分。如圖2-2-22所示,方案中針對資料庫運維的健康模型使用了7類68個維度的指標,並預先設定了各個指標的健康度得分。由此,系統可以得到一組以時間序列排列的資料庫健康得分資料。

在獲取資料集之後,系統首先進行缺失值處理。資料集中的缺失值會帶來雜訊,從而對最後的**結果造成偏差,因此方案採用了平均值填充或上下值填充的方式來予以處理。前者是將均值填入缺失值,後者是將前乙個值或後乙個值填入缺失值, 不同缺失值填充方法會對**結果造成差異,一般建議每行資料如果缺失率小於0.6則填充平均值。示例**如下:

特徵選擇是資料預處理環節中的重要步驟,進行合理的特徵選擇可以降低維度,查詢和選擇最有用的特徵,提高模型的可解釋性。另外,特徵選擇還能減少不必要的計算量,加快訓練速度,同時降低模型方差,提高泛化效果。

在使用梯度下降一類的機器演算法中,如果能保證不同特徵的取值在相同或相近的範圍內,比如都處於 0-1 之間,那麼梯度下降演算法會收斂的很快。因此在資料預處理的最後,方案對資料進行了特徵縮放處理。

經過預處理的資料集需要選擇合適的演算法進行訓練,方案根據資料庫時序資料的特點擊擇多種演算法進行了比較,包括支援向量回歸(support vactor regression,svr)演算法、rnn- lstm 演算法,gbdt 演算法、xgboost 演算法以及隨機森林演算法等。通過驗證比較表明,在時序化的資料庫健康**環境中, xgboost 以及隨機森林演算法的**準確度和效率較高。

在上述過程中,機器健康模型選擇了英特爾® 至強® 可擴充套件處理器來為整個訓練推理過程提供強勁算力。這一系列的處理器不僅整合了更多的核心和執行緒,對微架構也進行了全面公升級優化,並配備了更快、效率更高的快取記憶體來提公升處理效能。同時,其整合的英特爾® dl boost 技術,對 int8 數值型別資料有著更好的支援,可大幅提公升方案的模型推理速度。

■ 方案成效

通過在多個電力系統生產環境中的實際部署,驗證了採用xgboost 或隨機森林演算法的機器健康模型可對資料庫健康狀況進行有效**。如圖 2-2-23 所示,上圖是模型**結果, 下圖是實際情況,兩者的均方誤差(mean squared error, mse)為 0.28,而在採用 xgboost 演算法的情況下,均方誤差可進一步縮減到 0.218。同時,得益於基於英特爾 ® 架構的處理器的強大算力,兩種演算法的訓練時間均在數秒內,滿足了工業製造企業**實時性的要求。

利用機器健康模型,及以其為核心的 「it 健康分析」 系統,基石資料針對某電力企業省級公司的 20 多套系統進行了it 健康分析巡檢,僅在乙個多月時間裡,就發現問題 143 個,並全部完成溯源工作。同時,利用**結果,使用者還通過系統配置 調整、sql 調整、引數調整等方法,提公升了系統效能,使一體化電量與線損系統、資料管理服務、結構化資料中心等與業 務息息相關的核心資訊化系統的健康分,由不足 80 分上公升至90 分以上,獲得了從管理層到生產一線的一致好評。

PHP 一百一十八 中文數字轉換成陣列

function a v 在第一位的時候 就 1 保證值不變 不會出現執行異常 if strpos v,0 在最後一位時 變成 0 保證值不變 if strripos v,strlen v 1 v sum v.eval v return sum return v vars explode 一,二,十...

第三百一十八節,Django框架,訊號

第三百一十八節,django框架,訊號 django中提供了 訊號排程 用於在框架執行操作時解耦。通俗來講,就是一些動作發生的時候,訊號允許特定的傳送者去提醒一些接受者。也就是當程式有指定動作時,觸發乙個訊號函式 1 django內建訊號 model signals 資料庫操作時 pre init ...

MySQL百一題庫 mysql百問

mysql百問 mysql有哪些模組 mysql儲存引擎有哪些 主要有這些儲存引擎 myisam innodb memory archive memory 是儲存到記憶體中,重啟後資料會丟失,不太常用。archive 用作歸檔,可以儲存更多資料,基本不會用作線上環境的查詢。myisam 是mysql...