監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關閉

集團企業(yè)ERP數(shù)據(jù)集中系統(tǒng)設計與實現(xiàn)

申請免費試用、咨詢電話:400-8352-114

來源:泛普軟件

引言

集團企業(yè)是現(xiàn)代市場經(jīng)濟發(fā)展到一定階段的必然產(chǎn)物。隨著中國經(jīng)濟的迅速發(fā)展和企業(yè)大規(guī)模的兼并重組。出現(xiàn)了一大批具有較強市場競爭能力的大型集團企業(yè)。這些企業(yè)是中國經(jīng)濟發(fā)展的中堅力量,掌握著國家的經(jīng)濟命脈。

集團企業(yè)一般具有下述特征:

(1)以產(chǎn)權關系為紐帶,以母子公司為主體;

(2)金字塔式的層級組織結構;

(3)地域分散的多法人聯(lián)合體。

ERP軟件是現(xiàn)代管理技術和現(xiàn)代信息技術結合的產(chǎn)物,是集團企業(yè)實現(xiàn)信息集成、有效規(guī)范管理的重要使能技術。目前的集團企業(yè)ERP主要有兩種系統(tǒng)結構:集中式和分布式。集中式ERP一般是基于B/S結構的多層應用系統(tǒng),具有管理維護簡單、便于監(jiān)控下屬企業(yè)、數(shù)據(jù)集中、管理集中以及便于數(shù)據(jù)挖掘分析等優(yōu)點,相比分布式系統(tǒng)其缺點是可靠性相對較低,系統(tǒng)一旦出現(xiàn)問題會影響整個企業(yè)集團的業(yè)務運行。與集中式的B/S結構的應用系統(tǒng)相比,分布式的C/S系統(tǒng)可充分利用客戶機強大的處理能力,應用功能更加豐富,運行效率也較高,但其缺點是數(shù)據(jù)相對分散,難以在整個集團企業(yè)范圍內(nèi)實現(xiàn)無重復、無沖突的共享,集團管理層也很難站在整個集團的高度對數(shù)據(jù)進行深度挖掘分析以作為輔助決策的依據(jù)。

從上面的分析可見,在分布式系統(tǒng)的基礎上實現(xiàn)數(shù)據(jù)集中可較好的結合二者的優(yōu)點,解決分布和集中的矛盾,使集團企業(yè)ERP在保持較高可靠性和運行效率的基礎上實現(xiàn)數(shù)據(jù)集中,更好的發(fā)揮ERP對企業(yè)管理的提升作用。為實現(xiàn)此目的,筆者設計了一個基于通訊中間件的數(shù)據(jù)集中應用系統(tǒng),該系統(tǒng)主要運行于ERP的后臺數(shù)據(jù)庫服務器上。

1、總體設計

erp系統(tǒng)的數(shù)據(jù)可分為三類:公有基礎字典、私有基礎字典、一般業(yè)務數(shù)據(jù)。公有基礎字典需要在整個企業(yè)集團內(nèi)共享,比如集團企業(yè)的組織機構信息、集團公有會計科目、集團公有報表格式和公式等。公有基礎字典是集團實現(xiàn)規(guī)范管理的基礎,在整個集團企業(yè)內(nèi)保持一致,一般由集團總部統(tǒng)一維護,然后統(tǒng)一下發(fā)到各下屬單位,除非總部授權,一般下屬單位沒有維護權限。私有基礎字典是需要各分支單位根據(jù)其業(yè)務特點和經(jīng)營范圍自行維護的基礎數(shù)據(jù),比如本單位組織結構、人員信息、私有會計科目、往來單位、設備、BOM、工藝路線、能力參數(shù)等信息。私有基礎字典雖然由各單位自行維護,但需要遵守集團統(tǒng)一的編碼和命名規(guī)范。同時部分私有基礎字典也可能被其他單位所引用,也需要在整個集團內(nèi)共享。公有基礎字典和私有基礎字典的共同特點是數(shù)據(jù)量小、更新頻率低。一般業(yè)務數(shù)據(jù)是企業(yè)日常經(jīng)營活動所產(chǎn)生的數(shù)據(jù),比如企業(yè)的生產(chǎn)、物流、財務等信息。這類數(shù)據(jù)的特點是數(shù)據(jù)量大、更新頻率高,除在有經(jīng)濟往來的單位外,一般不需要在各同級的單位之間共享,但需要匯總到上級單位和集團總部進行數(shù)據(jù)挖掘和數(shù)據(jù)分析,以作為決策支持的依據(jù)。

針對不同的數(shù)據(jù),系統(tǒng)采用不同的數(shù)據(jù)復制策略。對于公有基礎字典數(shù)據(jù)采用只下載不上傳的策略;對于需要全局共享的私有基礎字典定時的上傳和下載,以保持數(shù)據(jù)在整個集團的一致性,對不需要全局共享的私有基礎數(shù)據(jù)處理方法等同于一般業(yè)務數(shù)據(jù);對業(yè)務數(shù)據(jù)一般采取只上傳不下載的策略,有業(yè)務往來的單位之間采用定點傳輸?shù)姆绞綄崿F(xiàn)數(shù)據(jù)共享。對于部分業(yè)務數(shù)據(jù)比如物流、庫存等數(shù)據(jù),需要通過廣域網(wǎng)的方式到其他單位查詢相關數(shù)據(jù),如果這種異地請求過于頻繁,將會嚴重影響數(shù)據(jù)庫服務器的處理性能和業(yè)務處理的響應時間,因此對庫存等部分業(yè)務數(shù)據(jù)也采用全局復制的方式,即在所有數(shù)據(jù)庫服務器之間進行同步復制。

系統(tǒng)還采用了通訊中間件以實現(xiàn)地域分散的各子(分)公司之間以及他們與集團總部的通訊。通訊中間件可采用IBM的MQ消息中間件或國內(nèi)廠商的一些成熟產(chǎn)品。通訊中間件運行于系統(tǒng)中所有的數(shù)據(jù)庫服務器和部分進行業(yè)務處理的微機上,其作用是屏蔽硬件和網(wǎng)絡傳輸機制以及操作系統(tǒng)的差異,為軟件系統(tǒng)間的通信建立一個基于命名服務的虛擬網(wǎng)絡。

根據(jù)集團企業(yè)呈典型的樹狀結構的組織機構特點,對每個子(分)公司給予邏輯上統(tǒng)一的上下級節(jié)點編碼,不同單位之間的數(shù)據(jù)復制只針對其直接上下級節(jié)點進行,這樣逐級進行,最終在全網(wǎng)內(nèi)實現(xiàn)數(shù)據(jù)復制。在增加一個網(wǎng)絡節(jié)點時,只需按統(tǒng)一的編碼規(guī)則對其進行編碼,在接入網(wǎng)絡后,即可實現(xiàn)對該節(jié)點的復制。

對于某些特定業(yè)務,比如統(tǒng)計查詢,如果涉及到對海量數(shù)據(jù)的處理,直接通過前臺軟件來處理可能需要很長的時間,因此有必要利用服務器強大的處理能力,根據(jù)具體需要對數(shù)據(jù)進行一定的預處理(包括及時或定時處理)得到一些中間處理結果,這樣有利于縮短系統(tǒng)對這些特定業(yè)務的響應時間。

2、系統(tǒng)實現(xiàn)技術

數(shù)據(jù)集中系統(tǒng)的實現(xiàn)技術主要包括兩方面:數(shù)據(jù)報文的組成和數(shù)據(jù)復制方法。

2.1、數(shù)據(jù)報文

數(shù)據(jù)報文格式的定義對數(shù)據(jù)集中程序的編碼和維護起著至關重要的作用,它決定了對數(shù)據(jù)的打包和解包的方式以及對數(shù)據(jù)處理的各個方面。

在報文的壓縮和加密方面,系統(tǒng)將直接利用通訊中間件提供的壓縮機制和安全管理功能。數(shù)據(jù)加密是通過某種算法對數(shù)據(jù)進行編碼防止信息被非法獲取,比較常用的方法都是基于復雜的算法,通過密鑰來對進行數(shù)據(jù)加密,主要的算法有DESTriple、DES、RC2/RC4/RC5、RSA等。

在報文格式方面,由于ERP中需要復制業(yè)務數(shù)據(jù)類型較多,有大量的基礎數(shù)據(jù)和業(yè)務數(shù)據(jù)在各分支機構數(shù)據(jù)庫服務器之間進行復制,因此有必要對報文格式采用統(tǒng)一的編碼規(guī)則,以便于數(shù)據(jù)集中系統(tǒng)中報文處理模塊的維護。

下面對報文格式中各個部分作用加以詳細說明:

(1)業(yè)務類型:指明報文的業(yè)務類型,它決定了對哪一個數(shù)據(jù)表進行操作,由4個字節(jié)構成:第一個字節(jié):表示子系統(tǒng)編號,如:①生產(chǎn)系統(tǒng);②物流系統(tǒng);③財務系統(tǒng);④人事系統(tǒng)等。第二個字節(jié):表示子系統(tǒng)中的業(yè)務類編號,如:①公有基礎字典;②私有基礎字典;③一般業(yè)務數(shù)據(jù)。第三、四兩個字節(jié):表示子系統(tǒng)中的某種業(yè)務類中具體數(shù)據(jù)類型的編號:0l一50為需要全網(wǎng)復制的數(shù)據(jù);51—70為逐級向上復制的數(shù)據(jù);71—80為需要逐級向下復制的數(shù)據(jù);81—99為定點復制的數(shù)據(jù)。

例如,如果報文頭為1301,則說明報文數(shù)據(jù)為生產(chǎn)系統(tǒng)中的需要全網(wǎng)復制的業(yè)務數(shù)據(jù)中某個數(shù)據(jù)表的編號。

(2)消息類型:指明報文內(nèi)容是需要復制的原始數(shù)據(jù)信息還是返回的確認信息,用以表明對報文的處理方式,由一個字節(jié)構成:

s:表示需要復制的原始數(shù)據(jù)信息(Source)。

R:表示返回確認信息(Resu]t),指數(shù)據(jù)接收方對成功處理的數(shù)據(jù)返回數(shù)據(jù)發(fā)送方的確認信息。

數(shù)據(jù)集中系統(tǒng)在通信環(huán)節(jié)中采用了消息中間件,在進行數(shù)據(jù)復制的過程中,大致需要經(jīng)過以下環(huán)節(jié):數(shù)據(jù)提取一數(shù)據(jù)打包一調(diào)用中間件通訊函數(shù)發(fā)送消息一數(shù)據(jù)接收方中間件接收到消息一后臺守護進程從中間件消息隊列中檢索到消息一數(shù)據(jù)解包一保存數(shù)據(jù)一返回確認信息一發(fā)送方接收并處理確認信息。在上述環(huán)節(jié)中任一環(huán)節(jié)出現(xiàn)錯誤就會導致復制的失敗,其最終表現(xiàn)為對數(shù)據(jù)的復制沒有得到確認,必須x,l-相應的數(shù)據(jù)進行重新復制。因此,在數(shù)據(jù)接收方處理數(shù)據(jù)后,對處理不成功的數(shù)據(jù)就沒有必要返回確認信息,因為數(shù)據(jù)的復制沒有收到確認信息,必然會重新復制。

(3)操作類型:指明對報文進行操作的類型,由1個字節(jié)構成。yj,-為以下幾種類型:I:表示插入操作(Insert),指新增一條新的數(shù)據(jù)信息。

U:表示更新操作(Update),指更新原有的一條數(shù)據(jù)信息。

D:表示刪除操作(Delete),指刪除原有的一條數(shù)據(jù)信息。

(4)報文長度:指明報文的總長度,由6個字節(jié)構成。即能標識的最大報文長度為999.999K字節(jié)。

(5)記錄數(shù):指明報文中的總記錄數(shù),由2個字節(jié)構成。

增加該部分內(nèi)容主要是為了便于系統(tǒng)解包模塊的處理:可以根據(jù)該信息很容易地從報文中分離出各條單項記錄數(shù)據(jù)。每個報文最多能包含99條記錄。如果報文包含BINARY、IMAGE和TEXT數(shù)據(jù)類型,由于這種數(shù)據(jù)信息量一般較大,所以每個報文只包含一條記錄。雖然可以不包含這部分內(nèi)容,但為了報文格式的統(tǒng)一,仍予以保留,只是其內(nèi)容恒為“01”。

(6)報文數(shù)據(jù):包含報文中的有效數(shù)據(jù)。具有以下特點:

(1)報文數(shù)據(jù)按字節(jié)順序存儲。

(2)每條記錄前包含6個字節(jié),用來表示該記錄的實際長度。因此,每條記錄的最大長度為999.999K字節(jié)。

對BINARY、IMAGE和TEXT等BLOB數(shù)據(jù)類型而言,不能也不必用4個字節(jié)來表示其長度,但為了報文格式的統(tǒng)一,仍予以保留,只是其內(nèi)容恒為“0000”。如果解包程序檢測到記錄數(shù)為1且記錄長度為“0000”,即可知該記錄包含BLOB數(shù)據(jù)類型。

2.2、數(shù)據(jù)復制方法

為了實現(xiàn)數(shù)據(jù)的高效、安全、完整的復制,根據(jù)業(yè)務類型的特點,采用以下方式:

(1)針對每個需要復制的數(shù)據(jù)表建立一個任務分發(fā)表;

(2)用觸發(fā)器適時生成分發(fā)任務;

(3)用守護進程定時或定點對分發(fā)表中的分發(fā)任務進行分發(fā)。

2.2.1、任務分發(fā)表

由于絕大多數(shù)數(shù)據(jù)都需進行多路分發(fā),即需要分發(fā)到多個網(wǎng)絡節(jié)點,而且對各節(jié)點的分發(fā)不可能一次性地分發(fā)成功,很可能只是部分分發(fā)成功,因此必須跟蹤每條信息對每個節(jié)點的分發(fā)狀態(tài)。同時為了減少對原數(shù)據(jù)表的操作量(大部分業(yè)務數(shù)據(jù)表的數(shù)據(jù)量較大,如果經(jīng)常對原數(shù)據(jù)表進行掃描,將嚴重影響數(shù)據(jù)庫的性能),針對每個需要進行多路分發(fā)的數(shù)據(jù)表建立一個任務分發(fā)表,在任務分發(fā)表中存放原數(shù)據(jù)表的全部字段信息,并增加一個機構節(jié)點標識字段,表示需要對哪些目標單位進行分發(fā)。任務表中應包含需要分發(fā)的節(jié)點信息和數(shù)據(jù)信息。數(shù)據(jù)集中系統(tǒng)直接從任務分發(fā)表中按節(jié)點標識分組提取分發(fā)信息并進行打包發(fā)送。為了統(tǒng)一操作,對任務分發(fā)表采用統(tǒng)一的命名規(guī)范,即任務分發(fā)表的表名統(tǒng)一由原數(shù)據(jù)表的表名加上后綴“-RW”構成。

2.2.2、分發(fā)任務的形成和任務分發(fā)

任務分發(fā)表中存放著所有需要進行分發(fā)的數(shù)據(jù)信息,因此,如何正確形成分發(fā)任務是整個復制過程中非常重要的一個環(huán)節(jié)。在設計中采用的方法是通過觸發(fā)器來產(chǎn)生分發(fā)任務的,它建立在插入操作(Insert)和更新操作(Update)基礎之上。

觸發(fā)器通過以下步驟確定需要對哪些節(jié)點產(chǎn)生分發(fā)并生成分發(fā)任務表:

(1)獲取本地數(shù)據(jù)庫服務器通訊中間件節(jié)點名稱;

(2)通過本地節(jié)點名稱獲取上下級節(jié)點名稱。如果本地機構代碼等于上級機構代碼,則說明該節(jié)點為頂級節(jié)點,觸發(fā)器將不對上級節(jié)點產(chǎn)生分發(fā)信息。

(3)觸發(fā)器根據(jù)所操作的數(shù)據(jù)需要復制的范圍(全網(wǎng)、向上、向下、定點復制)生成相應的記錄到任務分發(fā)表。

2.2.3、數(shù)據(jù)復制流程

數(shù)據(jù)復制流程包括數(shù)據(jù)分發(fā)處理流程和數(shù)據(jù)接收處理流程,流程圖如下:

(1)數(shù)據(jù)分發(fā)處理流程圖

數(shù)據(jù)復制前應首先設定固定的開始時間和輪循次數(shù),開始時間一般設在零點,從而減輕數(shù)據(jù)復制對業(yè)務系統(tǒng)的影響。達到設定的開始H,1間后,系統(tǒng)開始檢索分發(fā)任務表,如果分發(fā)任務表存在需要分發(fā)的數(shù)據(jù)并且尚未達到設定的輪循次數(shù)的上限,系統(tǒng)則按分發(fā)目的地址檢索出分發(fā)信息并按報文格式進行打包分發(fā)。如果沒有分發(fā)任務或超過輪循次數(shù)的上限則結束數(shù)據(jù)分發(fā)流程等待下次開始時間。

(2)數(shù)據(jù)接收處理流程圖

數(shù)據(jù)接收端程序為一后臺守護進程,當守護進程檢測到通訊中間件發(fā)過來的數(shù)據(jù)報文時,首先提取報文頭并根據(jù)報文頭確定報文類型、報文長度等信息,從而調(diào)用相應的報文處理模塊。如果消息類型是接收端數(shù)據(jù)更新成功后發(fā)過來的確認信息,則刪除分發(fā)任務表中已經(jīng)發(fā)送成功的數(shù)據(jù)并等待新的數(shù)據(jù)報文。如果消息類型是需要復制的原始數(shù)據(jù),則調(diào)用數(shù)據(jù)更新模塊將數(shù)據(jù)報文中的數(shù)據(jù)逐條更新到相應的數(shù)據(jù)庫表,如果更新成功則生成確認信息并將確認信息打包成數(shù)據(jù)報文發(fā)送回數(shù)據(jù)發(fā)送端,出現(xiàn)異常更新不成功則放棄該報文,數(shù)據(jù)發(fā)送端在沒有收到確認消息的情況下會重新發(fā)送數(shù)據(jù),直到成功。

3、結束語

分布式集團企業(yè)ERP數(shù)據(jù)集中系統(tǒng)可實現(xiàn)集團公司總部與下屬公司的ERP軟件數(shù)據(jù)復制,以保持它們之間數(shù)據(jù)的一致性和完整性;另外,針對海量數(shù)據(jù)查詢業(yè)務,系統(tǒng)還提供一定的預處理功能,以提高查詢效率。在分布式系統(tǒng)的基礎上實現(xiàn)數(shù)據(jù)集中可較好的解決分布和集中的矛盾,使集團企業(yè)ERP在保持較高可靠性和高運行效率的基礎上實現(xiàn)數(shù)據(jù)集中、應用集中、管理集中,更好的發(fā)揮ERP作為企業(yè)管理信息平臺的作用。

發(fā)布:2007-04-27 16:38    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
成都OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普成都OA信息化其他應用

成都OA軟件 成都軟件動態(tài) 成都OA信息化 成都OA客戶 成都OA快播 成都OA行業(yè)資訊 成都監(jiān)控公司 成都倉庫管理軟件 成都餐飲管理軟件 成都物業(yè)管理軟件 成都網(wǎng)站建設公司 成都軟件開發(fā)公司 成都門禁系統(tǒng)