邱亮亮 李錦芝
摘要:本文概述了政務數據資源實時交換總線技術,分析了總體技術思路,研究了功能模塊設計。
關鍵詞:政務數據資源;實時交換;總線技術
中圖分類號:TP393.09 文獻標識碼:A 文章編號:1007-9416(2018)07-0164-02
《國務院關于印發促進大數據發展行動綱要》指出大數據應用能夠揭示傳統技術方式難以展現的關聯關系,推動政府數據開放共享,促進社會事業數據融合和資源整合,將極大提升政府整體數據分析能力,為有效處理復雜社會問題提供新的手段。建立“用數據說話、用數據決策、用數據管理、用數據創新”的管理機制,實現基于數據的科學決策,將推動政府管理理念和社會治理模式進步,加快建設與社會主義市場經濟體制和中國特色社會主義事業發展相適應的法治政府、創新政府、廉潔政府和服務型政府,逐步實現政府治理能力現代化。
1 政務數據資源實時交換總線技術概述
在大數據背景下,政府數據要充分開放共享,深度整合,智能化分析挖掘,才能達到提升價值,有效利用的目的。傳統的政務數據共享交換系統通常采用批量、定時的數據采集和數據共享技術,按照預設的共享交換時間從數據生產系統提取數據,成批交換到一個中心節點,然后在另一個預設時間從中心節點下發到數據消費系統。對于政府部門間共享交換數量量大,任務量多的城市往往需要避開業務繁忙時間,例如設定下班后的時間作執行數據共享交換任務。在此模式下數據共享交換的更新周期比較長,通常從生產系統形成新數據到消費系統取得數據需要2到3天的時間,這種延時幅度已嚴重制約跨部門業務的發展,特別是跨部門的聯合審批,聯合監管等業務,迫切需要找到更佳的數據共享實現模式。
2 總體技術思路
2.1 實現原理
政務數據資源實時交換總線的整體架構是顯式分布式架構,消息生產者producer、消息分發者broker(服務端)和消息消費者consumer都可以有多個。 消息生產者Producer,消息消費者consumer實現消息總線注冊的接口,數據從消息生產者producer發送到消息分發者broker,消息分發者broker承擔一個中間緩存和分發的作用。 消息分發者broker分發注冊到系統中的消息消費者consumer。消息分發者broker的作用類似于緩存,即活躍的數據和離線處理系統之間的緩存。客戶端和服務器端的通信,是基 于簡單,高性能,且與編程語言無關的TCP協議。
在分布式消息總線的支撐下,結合數據接口的敏捷感知同步微服務,實現對業務數據變化及時感知,批量、實時地快速同步。總線作為主數據中心與各二級數據中心或委辦局業務系統之間通訊的集成業務平臺,它將基于中間件平臺,支持跨平臺系統連接,實現主數據中心與二級數據中心、與各業務系統、業務系統與業務系統之間數據的交互和通信,體現整體系統多層結構的思想,是各系統通信的核心。
針對政府各委辦局業務系統的業務處理特點,信息總線可以可以制定相可以的處理流程,確定有關信息的傳遞機制,例如,傳遞的路由規則和優先級。通過獨立的監控模塊,可以監視信息總線上信息的收發,并有利于集成和測試的需要。
2.2 業務邏輯處理
(1)信息總線可以支持靈活的消息路由設定,以體現業務模型中的信息分發規則。信息總線可以負責消息的分發業務邏輯,各子系統可以不用關心消息的路由,信息總線可以可動態調整路由配置,無須重新啟動生產系統或修改任何已連接的系統。(2)為保證業務消息的準確無誤,信息總線可以支持能在消息分發過程中允許操作人員對消息作必要的校驗,以確保信息的可靠和準確。(3)信息總線可以支持優先級機制,與業務邏輯相結合,使得業務上重要的數據可以在各系統間優先傳送。相同優先級的消息可以遵循先進先出的處理順序。可以具備消息有效期功能,有效期長度可以支持從數秒至無限的時間范圍。一旦消息過期,可以從信息總線的永久存儲中刪除并記錄詳細日志。(4)為保護業務模型,保持模型的完整性,信息總線可以只處理定義的事件和消息。當收到未知類型消息時可以創建錯誤日志并向信息總線操作人員發出提示信息。(5)信息總線可以結合業務模型,提高消息的重用性,各種需要向多個系統發布的消息,可以將單一事件(消息)傳送至單一或多個定制該消息的子系統。(6)信息總線能夠結合工作流,有針對性的觸發處理事件。在特定事件發生時,信息總線可以能夠觸發子系統以采取適當行動。(7)當一些內部事件發生時,信息總線可以能夠觸發相可以的可配置處理流程以可以對所發生的事件,例如消息日志文件超出配置的限制時,可以觸發相可以的流程以對事件加以處理。(8)結合業務模型中的消息流,信息總線可以提供批量發送和即時發送兩種消息分發機制。(9)可以用系統將通過信息總線訪問主數據中心,信息總線組件可以提供必要的系統間安全保障,包括系統級驗證、系統消息訪問控制、對關鍵敏感數據加密、實時系統激活/禁用等。
2.3 可維護性
信息總線是可維護的,并且可以具備易于分析、變更、測試且穩定的特性。可以提供一個結構模型和多種輔助工具包。為確保信息總線具有較強的可維護性。
3 功能模塊設計
3.1 信息總線監控管理
信息總線可以有對其性能進行監控和管理的能力。信息總線的響可以時間參數將考慮為合同范圍指標,其響可以速度不能超過用戶可容忍范圍,平均時間不超過3秒。性能監控/管理作為需求的一部分,可以滿足下述要求:
(1)性能管理可以支持實時優化。通過消息追蹤記錄和事件日志監控追查異常情況。(2)為確保通過負載分布以達到更好的性能表現,信息總線可以支持多服務器分布式配置,同時動態均衡處理所有連接請求。(3)為監控和優化信息總線的性能,信息總線可以詳盡保留各種實時統計信息。(4)為防止惡意進程對信息總線處理和性能的干擾,信息總線可以內嵌可配置的保護功能,以阻止惡意進程的攻擊。
3.2 信息總線接口管理
3.2.1 SDK接口
分布式消息總線包含一個軟件開發包(SDK)提供可以用用于消息生產者、消息消費者的編程接口(API),以滿足集成擴展業務需求。SDK可以具備下列特性:
(1)支持各種業界主流的程序語言,如C#,C++和Java。(2)支持各種業界主流的服務器平臺技術,例如微軟Windows系統、常見Linux系統等。(3)提供負載均衡的連接配置方式,并且具備丟失連接自動恢復的容錯能力。(4)提供簡單的接口實現方案和完備的文檔資料。(5)可以為實施中的子系統提供信息總線內部的事務控制功能。(6)支持消息歷史記錄功能,并且可以配置其保存時間。
3.2.2 適配器方式
對于需要與主數據中心(二級數據中心)建立連接的子系統,在不能使用SDK修改其系統的情況下,信息總線可以提供適當的適配器以支持與這些現有系統的通訊接口,從而允許這些子系統與信息總線平臺有機集成。信息集成系統執行WS-Security的規范,實現信息集成系統信息傳送過程的安全,有效。通常來說,安全認證分為兩個方面,一方面是客戶端子系統調用接口時的用戶認證,客戶端子系統通過指定用戶名、密碼,或者裝載指定的數字證書,達到用戶認證的目的。另外一方面在有必要時可以對信息的內容進行數字簽名,保證信息在傳送過程中的安全性。
3.3 數據整合
(1)數據整合是把在不同數據源的數據收集、整理、清洗,轉換后加載到一個新的數據源,為數據消費者提供統一數據視圖的數據集成方式。(2)數據整合(Data Consolidation)的優勢是經過了數據校驗和數據清理,使數據更加真實,準確,可靠。(3)共享數據全流通體系除了能實現平臺系統各個節點之間的信息交換外,對于各可以用系統產生的數據整合也是重點解決的問題,在業務數據交換過程中完成數據整合是一個經濟、高效的方式。(4)利用交換標準,在數據交換過程中實現數據中心的數據整合,降低數據中心與各數據源系統之間的耦合度,支持非標準化的系統接入,最大限度的降低各數據源系統的改造量,實現自動化的數據整合利用。(5)消息總線本身并沒有包含數據整合功能,為了統一管理及監控,數據整合功能將統一封裝成“微服務”,形成“數據整合微服務”。(6)分布式消息總線將結合“數據整合微服務”、“數據敏捷感知同步微服務”,實現數據整合的數據整合規則、整合任務管理、整合任務監控等功能。
3.4 數據分發
在共享數據全流通體系中,消息總線本身并已經包含數據分發功能,再通過各委辦局的節點,安裝數據敏捷感知微服務,配置訪問業務數據庫參數,在信息總線支撐上,實現對業務數據變化及時感知,批量、實時地快速數據同步分發。各委辦局可安裝多個數據敏捷感知微服務,可對應多個本委辦局的多個業務數據庫。各節點可按需建立實時感知、響應、反饋鏈條。
3.5 消息管理
分布式消息總線的整體架構是顯式分布式架構,消息生產者producer、消息分發者broker(服務端)和消息消費者consumer都可以有多個。消息生產者Producer,消息消費者consumer實現消息總線注冊的接口,數據從消息生產者producer發送到消息分發者broker,消息分發者broker承擔一個中間緩存和分發的作用。消息分發者broker分發注冊到系統中的消息消費者consumer。消息分發者broker的作用類似于緩存,即活躍的數據和離線處理系統之間的緩存。客戶端和服務器端之間的通訊采用請求/回答的方式。
4 實踐探索
廣州市安全生產監督管理局與廣州市工商局消息總線對接應用。根據廣州市安監局的企業安全生產監管業務需要,對接廣州市工商局的企業基礎信息庫,構建實時數據同步總線,實現了企業基礎數據實時同步,有效提高了數據的及時性,同時實現了數據同步的透明化監控,為數據供需雙方單位建立起高效的數據流通與管控手段。
5 結語
文章通過實時點對點的數據共享交換,最大限度縮短了數據提供者數據共享者的交互時間,把傳統數據流通機制上需要2-3天進行的數據交換縮短到200-300毫秒,有效提高了數據的及時性,使政府的跨部門信息共享和業務協同更為高效。