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