OpenHandX 數(shù)據(jù)服務為中心的企業(yè)架構設想
2009-12-20
作者:彭明華
本文檔中的任何部分都不得以任何手段任何形式進行復制與傳播
1 前言
隨著企業(yè)競爭的日益激烈,企業(yè)信息化的建設成為了關鍵因素,企業(yè)對計算機系統(tǒng)的需求越來越高,如:企業(yè)內部的ERP管理系統(tǒng)、決策分析系統(tǒng),對外的銷售及支付、客戶服務系統(tǒng)等系統(tǒng)越來越多,大型企業(yè)的情況尤為復雜,單獨做好一個系統(tǒng)或幾個系統(tǒng)再也無法適應企業(yè)信息化建設的發(fā)展。本文要談的是特大型企業(yè)應用,這類企業(yè)的特點是壟斷、使用系統(tǒng)的員工上萬、地域分布廣差異大,對系統(tǒng)的功能和性能上有著極高的要求,本文從目前的企業(yè)現(xiàn)狀、企業(yè)架構兩個方面說明。
2 目前的企業(yè)現(xiàn)狀
2.1 現(xiàn)狀1-多個系統(tǒng)百花齊放
這是目前大多數(shù)企業(yè)的現(xiàn)狀,這類企業(yè)管理層次太多,機構和部門之間的利益及關系比較微妙。采購的成品的軟件系統(tǒng)也很難適應企業(yè)多元化的應用,因此大部分企業(yè)會選擇自主開發(fā)或對成品系統(tǒng)本地化的大改造。這類的軟件系統(tǒng)基本是為某個機構或部門服務的,因此系統(tǒng)之間層次和定位比較混亂。主要表現(xiàn)為以下問題:
1、各個系統(tǒng)設計之初相互割裂,除了特殊業(yè)務功能上的需要基本沒有什么聯(lián)系,后期很難實現(xiàn)數(shù)據(jù)共享。
2、各個系統(tǒng)基礎數(shù)據(jù)冗余,每個都有自己的基礎數(shù)據(jù),如:組織架構、員工、產品等信息。基礎數(shù)據(jù)的變化和更新涉及所有系統(tǒng),并且無法做到時間上的統(tǒng)一和數(shù)據(jù)的一致性。給系統(tǒng)之間調用需要留下很多隱患。
3、系統(tǒng)之間的模塊冗余,類似的模塊且功能不一致。如:員工信息管理,產品信息管理、報表等。如:銷售系統(tǒng)的銷售報表與財務的銷售報表、客戶關系系統(tǒng)的銷售報表不一致,由此產生的歧義對于特大型企業(yè)是不允許的。
4、系統(tǒng)對外接口混亂,系統(tǒng)設計最初就是獨立的,沒有對外系統(tǒng)提供接口。后來由于業(yè)務需要臨時添加,造成接口不規(guī)范、重復、繁雜,并缺少監(jiān)控存在安全漏洞。
5、系統(tǒng)難以深程度整合。基于以上問題企業(yè)會做一些整合,雖然有portal和sso等登錄和界面上的用戶操作整合,但是功能和數(shù)據(jù)上的深程度整合沒有做到。
2.2 現(xiàn)狀2-ERP系統(tǒng)為中心
這類企業(yè)業(yè)務和管理上相對規(guī)范,能統(tǒng)一采購成品的ERP軟件系統(tǒng),企業(yè)的大部分業(yè)務需求都能通過ERP系統(tǒng)完成。這類企業(yè)應用架構是以 ERP系統(tǒng)為中心,在一段時間內數(shù)據(jù)比較統(tǒng)一,各個模塊之間協(xié)調一致。這在系統(tǒng)建設初期比較好,隨著企業(yè)的發(fā)展原有ERP系統(tǒng)不能滿足新的業(yè)務需求時,系統(tǒng)升級比較困難。不得不另外開發(fā)獨立的其他系統(tǒng),久而久之又形成了多個系統(tǒng)百花齊放難以控制的局面。
3 數(shù)據(jù)服務為中心的企業(yè)架構
數(shù)據(jù)服務為中心的企業(yè)架構是以企業(yè)的數(shù)據(jù)為核心。不管企業(yè)如何發(fā)展的,他的系統(tǒng)如何升級改造,數(shù)據(jù)永遠是企業(yè)的核心。數(shù)據(jù)服務為中心就是要建立統(tǒng)一的核心數(shù)據(jù)、統(tǒng)一的業(yè)務規(guī)則、統(tǒng)一的服務接口、統(tǒng)一的安全管理、提供高效準確的數(shù)據(jù)、提供復用的功能、提供良好的擴展性,并與前端業(yè)務系統(tǒng)無縫銜接實現(xiàn)深程度的整合。設計采用“數(shù)據(jù)為中心、服務為依托、SOA、ESB為技術手段”的思路。
3.1 基礎架構
初步建立數(shù)據(jù)為中心的企業(yè)架構,首先實現(xiàn)數(shù)據(jù)的統(tǒng)一和系統(tǒng)功能的一致性,滿足企業(yè)日常生產運行的需要。
1、真正實現(xiàn)數(shù)據(jù)統(tǒng)一管理,基礎數(shù)據(jù)和公共數(shù)據(jù)最大程度被復用,有效解決了多個系統(tǒng)基礎數(shù)據(jù)的不一致性,為系統(tǒng)間的調用和數(shù)據(jù)的決策分析打下良好基礎。
2、真正實現(xiàn)服務層與操作層的分離,數(shù)據(jù)服務組件以SOA的方式將服務發(fā)布到ESB,為操作層和其他服務組件調用提供接口。數(shù)據(jù)服務組件是企業(yè)基礎業(yè)務及核心業(yè)務功能的高度抽象及實現(xiàn),數(shù)據(jù)服務解決了系統(tǒng)間業(yè)務功能的不一致性。
3、企業(yè)數(shù)據(jù)總線ESB,是連接各個數(shù)據(jù)服務組件和服務層與操作層的橋梁,負責服務注冊發(fā)布、服務查找調用、服務安全控制。應為ESB設計好統(tǒng)一接口協(xié)議和服務協(xié)議,保證每個系統(tǒng)和服務組件之間都可以無縫地互連和兼容。ESB使多個系統(tǒng)和服務之間的層次更加清晰,降低了他們之間的耦合度,便于服務的擴展。
4、 前端系統(tǒng)主要功能是為用戶提供良好的界面,提供個性化方案,便于用戶錄入數(shù)據(jù)及數(shù)據(jù)展現(xiàn)。同時又為數(shù)據(jù)層提供高質量的業(yè)務數(shù)據(jù)。作為操作層的前端系統(tǒng)通過ESB能調用任何組件提供的數(shù)據(jù)服務,因此前端系統(tǒng)的功能可以做得非常強大。
3.2 完整架構
完整架構增加了安全控制層,抽象出更高程度的企業(yè)門戶,核心服務增加了更多的技術服務組件。同時也部署了地方級服務器。
1、更多的技術服務組件是為了滿足特大型企業(yè)的對數(shù)據(jù)挖掘分析、科學計算的要求。如:異步批量服務、云計算服務等。
2、安全控制層的安全控制有別于ESB的安全控制,安全控制層主要控制在用戶層面,并能根據(jù)接口提供的信息自動完成用戶登錄,創(chuàng)建會話令牌。ESB服務會根據(jù)令牌信息,控制該用戶訪問的數(shù)據(jù)權限及操作權限。
3、企業(yè)門戶不僅僅是統(tǒng)一用戶登錄或菜單界面的整合。首先企業(yè)門戶整合了所有的業(yè)務系統(tǒng),就象一套系統(tǒng)能完成所有的企業(yè)日常辦公,如:采購、生產、庫存、銷售、收付款、郵件、OA等。其次企業(yè)門戶提供富客戶端滿足復雜操作的業(yè)務,如:生產制造系統(tǒng),數(shù)據(jù)決策分析系統(tǒng)、郵件系統(tǒng)、多媒體系統(tǒng)。
4、地方級服務器解決兩類問題,一個是對數(shù)據(jù)緩存減少網絡帶寬,數(shù)據(jù)交換服務能自動完成與數(shù)據(jù)中心服務的數(shù)據(jù)同步,尤其是大型只讀類的數(shù)據(jù),如:多媒體數(shù)據(jù)、報表、郵件等,另一個是允許各地部署自己的特色業(yè)務系統(tǒng),滿足各地多元化的個性需求。
3.3 數(shù)據(jù)共享策略
數(shù)據(jù)共享一直是企業(yè)關心的,如何滿足不同系統(tǒng)、不同人群個性需求又要保證數(shù)據(jù)安全一直是最大的難題。數(shù)據(jù)共享有三個層面的問題需要解決:
1、請求的數(shù)據(jù)格式。是指請求發(fā)起方對接受方返回數(shù)據(jù)結果的樣式要求,如:Excel、PDF、XML、數(shù)據(jù)對象以及他們的填充樣式。這個問題可以雙方預先定義好格式的約定或模板,由發(fā)起方提供自定義的模板來解決,再由接受方將數(shù)據(jù)按照模板填充并返回。
2、請求的數(shù)據(jù)內容。是指請求發(fā)起方對接受方返回哪些數(shù)據(jù),以及數(shù)據(jù)顆粒度的要求,如:某個機構的銷售數(shù)據(jù)(按照天、產品、子機構等維度)、某個部門的損益數(shù)據(jù)(按照天、科目、人員等維度)。這個問題可以雙方預先定義一套語言或腳本,由發(fā)起方提供請求數(shù)據(jù)的腳本,再由接受方解析腳本返回數(shù)據(jù)。
3、數(shù)據(jù)安全控制。是指請求接受方根據(jù)發(fā)起方的身份返回他所能看到的數(shù)據(jù),或者說發(fā)起方是否能得到請求的數(shù)據(jù)。這個問題是由根據(jù)企業(yè)架構中安全數(shù)據(jù)組件服務來解決。