胡聰,王鵬,張翠翠,劉翠玲
(國網安徽省電力有限公司信息通信分公司,合肥230041)
隨著電網核心業務數字化、智能化的發展,各專業數據分析服務數量不斷增長,這些服務具有種類多樣、標準不一、共享度不高的特征,主要用于本專業業務分析及預測,缺乏公司層級統一管理及成果共享[1-2]。根據國家電網公司戰略部署,數據中臺初步建成,數據分析服務將通過數據中臺統一構建,用于支撐跨部門、跨層級數據共享分析應用[3-4]。為有效管理公司數據資產并規避數據分析服務應用門檻高、數據難讀懂、服務獲取難等問題,亟需基于數據中臺建立企業級數據分析服務構建標準及構建能力,實現公司共性數據分析服務資產的沉淀,滿足橫向跨專業間、縱向跨層級間的分析結果數據共享及分析挖掘需求,為各專業提供統一的數據分析服務,提升數據管理水平,打造數據資產良性生態環境[5-6]。
企業中臺按照服務能力類型劃分共享為業務中臺、數據中臺。其中數據中臺以公司數據中心為基礎,根據數據共享和分析應用的需求,沉淀共性數據服務能力,通過數據服務滿足橫向跨專業間、縱向不同層級間數據共享、分析挖掘需求[7-8]。
數據分析服務構建將以業務應用、業務中臺、普通用戶等數據分析服務需求的快速響應和高效構建為目標,完成企業級數據分析服務總體設計、形成數據分析服務標準規范及典型技術方案,指導試點單位開展數據分析服務(含數據分析場景)構建及應用,完成數據分析服務能力驗證及評估,實現數據分析服務的統一管理及兩級服務貫通,打造公司服務設計、服務構建、服務應用、服務管理一體化數據分析服務體系。以分析場景服務沉淀和服務共享為目標,各新建業務系統分析場景全面基于數據中臺構建,并以服務化方式發布,實現對數據中臺分析服務統一、標準管理,支撐分析服務跨專業、跨層級共享工作[9-10]。
結合電力行業特點,分別給出了數據中臺的數據服務接口集成架構、數據服務接口流程、數據服務接口設計、數據服務接口注冊發布、數據服務接口形式。
數據服務接口是通過數據中臺的數據服務組件,實現安全、友好、可控的對內對外數據服務統一訪問。其中數據服務組件應支持數據中臺組件接口和第三方接口的數據服務接口統一注冊、管理和調度等全生命周期的管理,支持免認證、token、Basic等認證形式,主要提供Web Service和Rest Service兩種接口形式。數據服務接口總體集成架構如圖1所示。
圖1 數據服務接口總體集成架構
數據服務接口流程請求/響應模式由使用者發起請求,數據中臺相關組件處理請求,具體交互過程如下圖2所示。
圖2 數據服務接口流程
服務提供者基于數據服務組件(數據中臺)注冊相關數據服務接口定義信息,支持數據中臺各組件API接口及第三方接口的注冊;
服務調用者通過數據服務組件(數據中臺)查詢數據服務接口定義信息;
服務調用者獲取數據服務接口定義信息;
服務調用者向數據服務組件(數據中臺)發起數據服務接口請求,數據服務組件(數據中臺)請求進行鑒權、路由等處理,并將請求轉發到數據中臺相關組件或第三方接口;
服務提供者接收數據服務接口請求;
服務提供者對請求進行處理,并返回數據服務接口應答信息至數據服務組件,由數據服務組件對響應進行路由、轉換等處理,并轉發到服務調用者;
服務調用者接收數據服務接口應答結果。
數據服務接口設計應遵循以下要求:
(1)以業務應用需求為驅動,按需進行服務的生成,遵循企業級服務沉淀共享原則,避免重復生成同一類型、同一性質的服務接口;
(2)按照數據中臺數據存儲分層架構設計,基于共享層、分析層數據進行數據服務接口生成,原則上不基于貼源層生成服務接口;
(3)嚴格按照數據分級權限進行數據服務接口訪問控制,根據數據業務特點及應用特點設置服務接口的有效期約束,確保服務接口授權范圍符合安全管理要求。
數據中臺相關的數據服務需基于數據服務組件進行統一注冊、發布,并對外提供服務調用。為確保服務接口的有效運行,需常態開展服務接口運行的巡查監控,及時處理服務接口異常,主要的服務接口監控及異常處理規則如下:基于數據中臺數據服務接口監控管理功能,按照服務接口對應的業務應用調用頻度分別設置監控規則,并進行服務接口的常態監控。根據服務接口監測發現的異常,按以下處理規則進行服務接口異常的處理:針對服務接口狀態失效的異常情況,按照服務接口標準操作流程,進行服務狀態的重啟,并監測服務接口重啟后的狀態;針對服務接口訪問延遲、響應時間過長,結合監測日志分析結果,進行服務接口的訪問流量的優化配置或其他并發參數配置;針對服務接口異常重啟或參數配置優化無法解決的異常,轉入服務接口故障分析處理流程,進行詳細分析處理。版本更新分為新版本上線和舊版本下線兩個階段,數據服務接口版本更新如圖3所示,具體要求如下。
圖3 數據服務接口版本更新
數據服務提供者在數據中臺數據服務組件注冊新版本數據服務接口;數據中臺數據服務組件發布新版本數據服務并自動替換老版本數據服務,同時下線老版本數據服務;數據服務調用者調用新版本數據服務。
系統間交互的數據宜采用UTF-8字符集進行編碼。服務接口集成以Web Service和REST Service為載體。Web Service采用基于XML的數據格式,REST Service應采用基于JSON的數據格式。其中Web Service 協議棧相關協議要求如表1。
表1 Web Service 協議棧
REST Service為載體的Web Service 協議棧相關協議要求如表2。
表2 REST Service 協議棧
數據服務命名是為表示各個數據服務定制一個規范的名稱,用于能夠容易的識別、檢索出某一服務,因此,數據服務的命名規范如下:
數據服務名稱應由數據服務提供者組織機構、數據服務所屬應用域、自定義字段和版本號四部分組成,中間以“_”分隔,具體要求如下:數據服務提供者組織機構,以國家電網有限公司單位/部門簡稱命名;數據服務所屬應用域,根據業務部門的應用場景簡稱命名;自定義字段,服務提供者按需增加的字段,用作區分同類應用域下的數據服務;版本號,描述服務接口的版本信息,如v1.0.0。
在數據服務建設單位范圍內保證數據服務名稱唯一、無歧義。數據服務名稱允許出現中文、英文、數字、下劃線,且必須以中文或英文開頭,禁止以數值、下劃線等開頭,名稱長度不超過50個字符。數據服務命名應使用中性或褒義性質的詞語,避免貶義性質的詞語,避免使用生僻字。
依托國網安徽電力數據中臺,遵循數據服務建設規范要求,模擬數據服務請求及返回應答,數據服務請求示例如下所示。
https://apigateway.cn-sgcc.com/?Action=DeployApi&ApiId=d6f679aeb3be4b91b3688e887ca1fe16&StageName=release&Description=for_test1&<公共請求參數>
數據服務XML格式返回示例如下所示。
數據服務JSON格式返回示例如下所示。
{“RequestId”:“CEF72CEB-54B6-4AE8-B225-F876FF7BZ015”}
通過遵循數據中臺數據服務格式規范,實現統一數據服務格式,達到預期的數據中臺數據服務要求,進而可以分析得出本文設計的數據中臺數據服務規范的可行性。
針對當前電力數據中臺數據服務建設規范需要,本文提出了基于數據中臺的數據服務建設規范方法,給出了數據服務接口集成架構,闡述了數據中臺服務服務接口交互流程,設計了數據服務接口注冊發布、協議格式規約等,通過數據服務請求實驗驗證了數據服務建設規范的可行性。