張冬梅 徐東鏹



摘? 要:通信機房內動力環境設備日常告警數據中的一些關鍵信息可以用來與綜合資源管理系統數據進行對比、稽核。文章通過優化動環設備資源編碼規則,基于Python開發動環告警大數據分析工具,實現了動環告警數據與綜合資源管理系統數據的準確關聯與稽核,從而形成閉環管理,提升了動環資源數據準確性,節約了人工成本,提高了運維效率。
關鍵詞:動環告警;Python;大數據;數據稽核
中圖分類號:TP311? ? ? 文獻標識碼:A文章編號:2096-4706(2021)22-0034-04
Abstract: Some key information in the daily alarm data of power environment equipments in the communication room can be used to compare and audit with the data of the integrated resource management system. By optimizing the coding rules of power environment equipment resources and developing the power environment equipment alarm big data analysis tool based on Python, this paper realizes the accurate correlation and auditing between power environment equipment alarm data and integrated resource management system data, so as to form a closed-loop management, improve the accuracy of power environment resource data, save labor cost and improve operation and maintenance efficiency.
Keywords: power environment equipment alarm; Python; big data; data auditing
0? 引? 言
近年來,通信運營商因動力環境(以下簡稱動環)設備故障引發的通信網絡業務中斷風險日益增多,并引起重視,尤其是在高溫、雷雨、冰凍雨雪等災害性天氣下對通信重要業務的電源保障能力直接決定了一個通信運營商的通信服務能力,而完好、準確的動環監控在故障通知和處理中起著非常重要的作用,其中,動環資源中的所屬機房、所屬區縣、設備類型等資源信息的準確性對動環監控中的故障派單起著關鍵性作用,因此動環設備原始告警數據中含有準確的、可用的設備資源信息,可以用來進行二次的數據開發挖掘利用,可作為稽核綜合資源管理系統資源準確性的數據來源。
1? 動環告警處理基本原理和流程
1.1? FSU監控單元基本原理
在現有的電信運營商的通信機房中,常見的動環設備類型有變壓器、變換設備、高壓配電、低壓交流配電、發電機組、開關電源、低壓直流配電、UPS設備、蓄電池、空調、節能設備、動環監控、智能電表和其他設備,而每種設備類型都有很多不同的設備子類。通過安裝動環監控設備,現場設備的告警就可以通過FSU(Field Supervision Unit,現場監控單元)設備,以SDH、PTN等傳輸承載方式傳送到LSC(Local Supervision Center,區域監控中心)和CSC(Central Supervision Center中央監控中心),一般情況下,縣市區域中心設置LSC,省級區域中心設置CSC。這樣,從FSU,LSC到CSC就組成了一套動環監控系統,它能對通信機房的動力設備及環境進行遙測、遙信、遙控和遙調,實時監視其運行參數,監測和處理故障,記錄和處理相關數據,從而實現通信機房少人或無人值守和集中維護。
FSU硬件的設計應遵循結構化、規范化、模塊化、集成化的方式實現,以提高系統的可靠性、可維修性和維護保障性。
1.2? 動環告警監控流程
FSU采集到動環設備告警信息后,通過定義的A/B接口傳送至LSC、CSC,最后由CSC進行封裝成標準化告警后傳給集中故障系統,集中故障系統根據告警中的設備ID和綜合資源管理系統數據進行關聯,將告警信息關聯到綜合資源管理系統的站點、機房、區縣等信息,從而實現告警的派單,及時通知動力維護人員進行故障處理。除此之外,還可進行容量管理,動環拓撲管理等功能,具體如圖1所示。
2? 主要的技術手段及軟件設計
2.1? 提出一種新的動環資源編碼方法
現有的綜合資源管理系統動環資源編碼方法由機房編碼+設備類型編碼+序號組成,這種編碼能較快地關聯出通信機房資源信息,實現動力設備告警的快速定位,但缺點是如果機房名稱或者其他信息發生了變化,機房編碼就會改變,這樣動環編碼就會失效,無法實現資源關聯。通過研究告警報文發現,告警中含有FSU_ID和DEVICE_ID這2個字段,而且是不改變的,但DEVICE_ID是存在重復的,進一步分析得知,同一個FSU下的動環設備DEVICE_ID不會重復,根據此結論,重新制定編碼規則,以通過FSU_ID+DeviceID和LSC_ID+DeviceID作為綜合資管系統、集中故障監控系統,動環運維系統間關聯的唯一編碼,這樣就避免了因機房資源變化引起編碼變化,從而造成各種系統間數據無法匹配的情況,動環告警信息流如表1所示。
2.2? 軟件設計
基于上述優化后的動環編碼方法,集中故障系統和綜合資源管理系統就可以通過該編碼的唯一性特點進行一對一準確關聯。由于Python語言中Numpy和Pandas數據科學包對數據分析和處理有獨特優勢,因此,可以通過編寫Python軟件程序來進行數據處理和數據稽核。該程序主要分為數據讀取模塊、數據清洗模塊,數據提取模塊,數據整合模塊和數據輸出模塊,通過對告警大數據的清洗、整理和分析,利用Pandas的字符串方法提取動環告警大數據中設備編碼、設備類型等關鍵信息,利用編碼匹配方法與綜合資管數據進行核對校驗,對匹配不一致的數據派發異常編碼工單,運維人員登陸綜合資源管理系統進行數據核對和修改后,實現閉環管理。
2.3? 技術特點
2.3.1? 數據向量化
向量化數據處理特征,利用多維數組方法提升內存運行效率,節約計算資源。
2.3.2? 快速部署
基于Python開發語言實現,Python是一種開源、可移植的、面向對象的解釋性高級開發語言,擁有功能強大的內置和第三方庫,既可以開發小工具,也可以開發企業級應用,同時利用Docker云原生技術,可以快速部署Linux服務器上或網絡云上。
2.3.3? 編碼統一性
優化現有動環編碼方法,以FSU_ID+設備ID和LSC_ID+設備ID作為綜合資管系統、集中故障監控系統,動環運維系統間唯一編碼,該編碼具有不可變、唯一性的特點,適用于系統間數據關聯。
2.3.4? 數據接口豐富
pandas的數據IO讀寫接口非常豐富,可支持HTML、HDF5、JSON、SQL、SPAA、SASS、Stata、CSV、Excel等常見文件格式,可以通過reader和writer功能模塊實現數據文件的讀寫。
2.4? 軟件基礎環境配置
基礎環境概述:操作系統OS版本為Ubuntu 20.04,Python版本為3.8.5,編譯器為Visual StudioCode,版本為1.63.2,安裝Python和Pandas最簡單的方法是通過Anaconda或者是MiniAnaconda進行安裝,推薦使用MiniAnaconda安裝,節省安裝空間。Anaconda發行版是一個用于數據分析和科學計算的跨平臺發行版,這是推薦大多數用戶安裝方法。
首先,在Ubuntu Linux中創建虛擬環境Python38,命令為conda create -n python38 python=3.8.5,創建完成后使用命令conda info --env查看創建的虛擬環境,conda環境就像一個virtualenv,允許指定特定版本的Python和一組Python庫。已安裝好的虛擬環境如圖3所示。
其次,創建好虛擬環境后,使用命令conda activate python38進行虛擬環境激活,這樣可以避免不同安裝包之間的沖突。
最后,使用conda命令安裝Numpy,Pandas包,具體命令為conda install pandas,conda install numpy,本機安裝的Pandas版本為1.2.2,numpy版本為1.19.2,如果使用pip安裝命令,則為pip install pandas,pip install numpy,安裝包列表如圖4所示。
為確保Pandas安裝成功和相關硬件和軟件的運行正常,可以利用test方法來進行安裝后的測試,pd.test()是Pandas的一套詳盡的單元測試,涵蓋了97%的代碼庫,安裝成功測試如圖5所示。
其他依賴包安裝推薦
numexpr:用于加速某些數值運算。numexpr使用多核以及智能分塊和緩存來實現大幅加速。建議2.7.0或更高版本。
bottleneck:用于加速某些類型的nan評估。bottleneck使用專門的Cython例程來實現大幅加速。建議1.2.1 或更高版本。
2.5? 代碼編寫
本軟件基于Visual StudioCode編譯器開發,軟件版本為最新的1.63.2,代碼編寫完成后,可以點擊在終端中運行Python文件運行程序,為防止在讀取文件時候發生讀取IO異常,可以在程序中加入try? except來捕獲異常,避免程序崩潰,同時,在分析告警文件中發現很多分隔符不規范的問題,可以read_csv功能中加入on_bad_lines = “skip”來解決。運行結果如圖6所示。
3? 應用情況
通過開發動環告警大數據分析程序,每月可開展集中故障系統動環告警大數據和綜合網絡資源管理系統的數據進行對比分析,最后輸出設備類型不一致數據,同時,針對設備類型不一致數據,則由集中故障系統觸發電子運維系統(EOMS)資源勘誤工單,如圖7所示。運維人員在收到工單后,在綜合網絡資源管理系統側發起動環資源調整流程,對異常編碼進行資源修改,調整完成后,系統再次進行比對,直至完全一致,完結工單,最后形成資源調整的閉環管理方式,這樣就可以不斷提升動環資源中設備類型和設備編碼字段的準確性,這樣就解決了通信網絡資源管理中數據稽核方法的難題,實現了人工稽核轉為系統自動稽核,提升了運維工作效率,從而有針對性的提高網絡資源數據的準確性。根據統計,自2021年5月至2021年11月間,該工具在中國移動重慶公司開展應用以來,已累計處理分析動環告警大數據超過1.7億條,累計處理數據10.7 GB,動環告警數據與網絡資源數據的關聯匹配率達到99.5%以上,動環資源設備類型字段的準確率達到99.57%,動環告警監控準確率由之前的92%提升至99.5%以上,改善效果明顯。
4? 結? 論
動環設備與其他通信設備相比具有種類多,其共可分為約26大類設備,83子類設備,同時動環數據采集設備FSU設備的廠家品牌較多,動環運維系統不能對全部動環設備實時進行信息采集,這就造成動環運維系統上的設備類型存在人工錄入,不能保證100%準確,而FSU進行數據配置時必須按照集團動環告警標準化規范進行配置,簡言之,就是告警信息中所攜帶的設備類型是最準確的。由于設備類型的準確性在故障監控和告警處理中具有重要作用,目前集中故障監控根據《中國移動動環標準化字典表》進行標準化后,形成規范的設備類型和告警信息,再與資管數據中的動環資源所屬機房字段進行匹配,定位故障發生的機房、設備類型和名稱,通知維護人員及時處理和故障發布。但在日常資源管理工作中,動環資源的設備類型、設備子類的字段的準確性缺乏系統稽核的手段,往往只能采取現場檢查、核實的方式進行,往往費時費力,效果提升不好。
本文通過研究動環告警編碼方法,對現有動環編碼進行了優化,通過對通信網絡動環設備告警大數據進行數據分析和提取關鍵信息,實現了對綜合資源管理系統動環資源數據的稽核,提高了資源數據準確性。開發了基于Python的動環告警大數據分析工具,可定期實現對集中故障和綜合資源管理系統兩個系統的告警數據和資源數據進行對比稽核,提升了系統間關聯數據的準確性,進而提升了動環資源管理水平,有力支撐了動環告警監控工作,有利于縮短因停電造成的動環設備故障歷時,同時,節約了人工運維和開發成本,提高了運維效率。
參考文獻:
[1] 余輝雄.面向大數據分析下配網主動式運維分析 [J].通信電源技術,2019,36(12):119-120.
[2] 李棟.大數據分析在網絡監控中的實現與應用 [J].通信管理與技術,2020(4):44-46.
[3] 任帥.動環集中運維管理平臺應用探析 [J].通信電源技術,2020,37(3):64-67.
[4] 張帆.數據分析在科學統籌通信運營商動力運維成本中的應用研究 [J].信息與電腦(理論版),2018(17):153-154+157.
[5] 孔令誠.接入網機房動環監控自動派單的分析與實現 [J].中國新通信,2018,20(2):87-88.
作者簡介:張冬梅(19xx—),女,漢族,重慶人,副教授,碩士研究生,研究方向:電子信息技術。