數(shù)據(jù)中心中間件系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
:
[0001]本發(fā)明屬于軟件開發(fā)技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)中心中間件系統(tǒng)。
【背景技術(shù)】
:
[0002]現(xiàn)有的數(shù)據(jù)中心產(chǎn)品受到關(guān)系型數(shù)據(jù)庫軟件的深刻影響,定義數(shù)據(jù)標準就與定義表、字段的名稱、類型和大小緊密相關(guān),而采用ETL工具實現(xiàn)的數(shù)據(jù)轉(zhuǎn)換也是建立在不同業(yè)務(wù)系統(tǒng)中表和字段的映射指定,不僅在改變數(shù)據(jù)標準時需要修改相關(guān)的業(yè)務(wù)系統(tǒng)功能,而且相關(guān)定義的數(shù)據(jù)轉(zhuǎn)換規(guī)則也將需要重新定義;同時通過依靠ETL工具實現(xiàn)的應(yīng)用之間的數(shù)據(jù)共享和交換不受業(yè)務(wù)系統(tǒng)應(yīng)用邏輯的直接約束,無法明確系統(tǒng)對數(shù)據(jù)具有的讀寫權(quán)限,無法保障應(yīng)用系統(tǒng)數(shù)據(jù)的正確流向,數(shù)據(jù)的非法變更無法控制。
[0003]公開于該【背景技術(shù)】部分的信息僅僅旨在增加對本發(fā)明的總體背景的理解,而不應(yīng)當被視為承認或以任何形式暗示該信息構(gòu)成已為本領(lǐng)域一般技術(shù)人員所公知的現(xiàn)有技術(shù)。
【發(fā)明內(nèi)容】
:
[0004]本發(fā)明的目的在于提供一種數(shù)據(jù)中心中間件系統(tǒng),從而克服上述現(xiàn)有技術(shù)中的缺陷。
[0005]為實現(xiàn)上述目的,本發(fā)明提供了
[0006]數(shù)據(jù)中心中間件系統(tǒng),包括:
[0007]數(shù)據(jù)中心服務(wù)端,用于建立消息響應(yīng)中心,根據(jù)系統(tǒng)注冊的應(yīng)用對系統(tǒng)定義的數(shù)據(jù)對象的讀寫權(quán)限,向需要接受數(shù)據(jù)的數(shù)據(jù)中心客戶端發(fā)布數(shù)據(jù)消息通知,并根據(jù)數(shù)據(jù)中心客戶端請求推送數(shù)據(jù)信息,完成數(shù)據(jù)變更處理;數(shù)據(jù)中心服務(wù)端基于持久化數(shù)據(jù)存儲系統(tǒng)保存數(shù)據(jù),形成統(tǒng)一的數(shù)據(jù)倉庫;
[0008]數(shù)據(jù)中心管理系統(tǒng),針對常見的數(shù)據(jù)類型進行統(tǒng)一的抽象定義,形成標準數(shù)據(jù)類型,在對應(yīng)不同的數(shù)據(jù)庫或持久化存儲系統(tǒng)時轉(zhuǎn)換為系統(tǒng)支持的特定類型;
[0009]數(shù)據(jù)中心應(yīng)用端,用于提供二次開發(fā)接口,提供消息偵聽服務(wù),通過消息機制獲取數(shù)據(jù)中心服務(wù)端的數(shù)據(jù)變更信息,并通過調(diào)用數(shù)據(jù)中心服務(wù)端的數(shù)據(jù)接口獲取數(shù)據(jù),然后進行必要的處理,更新本地的實際數(shù)據(jù)庫數(shù)據(jù)。
[0010]優(yōu)選地,技術(shù)方案中,數(shù)據(jù)中心管理系統(tǒng)采用虛擬對象方式實現(xiàn)數(shù)據(jù)標準集定義,并支持數(shù)據(jù)對象之間的引用和繼承。
[0011]優(yōu)選地,技術(shù)方案中,數(shù)據(jù)中心管理系統(tǒng)建立數(shù)據(jù)中心描述語言,根據(jù)數(shù)據(jù)對象的定義,形成基于XML格式的描述文件,用于描述數(shù)據(jù)對象的特征和結(jié)構(gòu),用于各種開發(fā)語言根據(jù)此文件生成符合使用規(guī)范的數(shù)據(jù)模型和操作代碼。
[0012]優(yōu)選地,技術(shù)方案中,在數(shù)據(jù)中心管理系統(tǒng)注冊數(shù)據(jù)的提供者和使用者,保證數(shù)據(jù)建立和更新的流向,確保數(shù)據(jù)的可靠來源。
[0013]優(yōu)選地,技術(shù)方案中,在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立實時通訊機制,當數(shù)據(jù)發(fā)生變化時進行實時的更新通知。
[0014]優(yōu)選地,技術(shù)方案中,在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立數(shù)據(jù)傳輸機制,傳輸變更的數(shù)據(jù)。
[0015]優(yōu)選地,技術(shù)方案中,在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立文件傳輸機制,傳輸變更的文件。
[0016]優(yōu)選地,技術(shù)方案中,數(shù)據(jù)中心服務(wù)端提供的數(shù)據(jù)傳輸服務(wù)為WebService接口。
[0017]優(yōu)選地,技術(shù)方案中,建立特定數(shù)據(jù)的驗證機制,確保數(shù)據(jù)在符合特定的數(shù)據(jù)要求下進行同步更新。
[0018]優(yōu)選地,技術(shù)方案中,建立數(shù)據(jù)過濾機制,確保在數(shù)據(jù)同步時限定數(shù)據(jù)更新的范圍。
[0019]優(yōu)選地,技術(shù)方案中,建立數(shù)據(jù)版本規(guī)則,實現(xiàn)數(shù)據(jù)的版本管理,確保各個應(yīng)用系統(tǒng)數(shù)據(jù)獲取需要的數(shù)據(jù)版本。
[0020]優(yōu)選地,技術(shù)方案中,持久化數(shù)據(jù)存儲系統(tǒng)包括關(guān)系型數(shù)據(jù)庫、非關(guān)系型數(shù)據(jù)庫。
[0021]優(yōu)選地,技術(shù)方案中,關(guān)系型數(shù)據(jù)庫的類型包括:Oracle數(shù)據(jù)庫、Ms sql server數(shù)據(jù)庫、MySQL數(shù)據(jù)庫、DB2數(shù)據(jù)庫。
[0022]優(yōu)選地,技術(shù)方案中,非關(guān)系型數(shù)據(jù)庫的類型包括:Hadoop、MongoDB、DB40、ActiveDirectory。
[0023]基于數(shù)據(jù)中心中間件系統(tǒng)的數(shù)據(jù)同步方法,其步驟為:
[0024](I)啟動數(shù)據(jù)中心服務(wù)端應(yīng)用,建立服務(wù)端消息緩沖區(qū);
[0025](2)在數(shù)據(jù)中心管理系統(tǒng)中進行數(shù)據(jù)對象定義;
[0026](3)在數(shù)據(jù)中心管理系統(tǒng)中進行應(yīng)用注冊;
[0027](4)在數(shù)據(jù)中心管理系統(tǒng)中設(shè)定各個應(yīng)用系統(tǒng)與數(shù)據(jù)對象的關(guān)系,確定數(shù)據(jù)的提供者和使用者;
[0028](5)利用數(shù)據(jù)中心描述語言對應(yīng)用與數(shù)據(jù)的關(guān)系進行描述,并形成相關(guān)的描述文件,并根據(jù)應(yīng)用的開發(fā)語言形成本地化的開發(fā)組件,開發(fā)組件包括數(shù)據(jù)中心客戶端服務(wù)、數(shù)據(jù)對象定義以及數(shù)據(jù)操作API ;
[0029](6)應(yīng)用端根據(jù)數(shù)據(jù)處理需要以開發(fā)組件為基礎(chǔ)進行數(shù)據(jù)處理程序的具體實現(xiàn),形成本地操作數(shù)據(jù)的應(yīng)用程序,并在應(yīng)用端進行相關(guān)應(yīng)用的配置加載并運行開發(fā)組件;
[0030](7)數(shù)據(jù)中心客戶端啟動后將與數(shù)據(jù)中心服務(wù)端建立實時通訊機制,并形成應(yīng)用端消息隊列緩沖區(qū),等待消息通知;
[0031](8)提供數(shù)據(jù)的應(yīng)用端對數(shù)據(jù)進行變更,利用基于開發(fā)組件實現(xiàn)的程序方法進行變更數(shù)據(jù)封裝并由數(shù)據(jù)中心客戶端通過調(diào)用服務(wù)端的數(shù)據(jù)傳輸服務(wù)將數(shù)據(jù)傳送到數(shù)據(jù)中心,如包含變化的文件數(shù)據(jù),將調(diào)用服務(wù)端的文件傳輸服務(wù)將變更的文件傳送到數(shù)據(jù)中心,數(shù)據(jù)中心獲取數(shù)據(jù)后調(diào)用消息系統(tǒng)的方法向所有的數(shù)據(jù)使用者發(fā)送變更通知;
[0032](9)使用數(shù)據(jù)的應(yīng)用端接受到變更通知,向數(shù)據(jù)中心服務(wù)端發(fā)送數(shù)據(jù)傳輸請求,通過數(shù)據(jù)中心服務(wù)端提供的數(shù)據(jù)傳輸服務(wù)接受來自服務(wù)端的數(shù)據(jù),如有文件數(shù)據(jù)變更,則通過服務(wù)端提供的文件傳輸服務(wù)接收變更文件,接受后根據(jù)本地實現(xiàn)的數(shù)據(jù)處理方法獲取并更新本地數(shù)據(jù),并向服務(wù)端報告數(shù)據(jù)接受和處理狀態(tài),實現(xiàn)應(yīng)用之間的數(shù)據(jù)同步。
[0033]優(yōu)選地,技術(shù)方案中,步驟(5)中相關(guān)的描述文件為DDL文件。
[0034]優(yōu)選地,技術(shù)方案中,步驟(7)中實時通訊機制包括:JMS、Comet長連接。
[0035]優(yōu)選地,技術(shù)方案中,步驟(8)中數(shù)據(jù)傳輸服務(wù)為WebService。
[0036]優(yōu)選地,技術(shù)方案中,步驟(8)中文件傳輸服務(wù)包括:FTP、Socket通訊。
[0037]基于數(shù)據(jù)中心中間件系統(tǒng)的統(tǒng)一身份認證方法,其步驟為:
[0038](I)啟動數(shù)據(jù)中心服務(wù)端應(yīng)用,運行統(tǒng)一身份認證門戶;
[0039](2)在數(shù)據(jù)中心服務(wù)端建立統(tǒng)一身份登錄數(shù)據(jù)定義;
[0040](3)在數(shù)據(jù)中心管理系統(tǒng)中進行應(yīng)用注冊并建立對登錄數(shù)據(jù)的讀寫權(quán)限;
[0041](4)應(yīng)用系統(tǒng)部署數(shù)據(jù)中心客戶端,并啟用相關(guān)配置;
[0042](5)用戶使用瀏覽器訪問應(yīng)用系統(tǒng),通過應(yīng)用系統(tǒng)配置的數(shù)據(jù)中心的客戶端提供的統(tǒng)一身份認證的過濾器實施檢測,轉(zhuǎn)發(fā)到統(tǒng)一身份認證門戶獲取用戶存儲在本地的登錄令牌,如未檢測到登錄令牌則轉(zhuǎn)到統(tǒng)一身份門戶進行登錄驗證,驗證后生成本地的登錄令牌,并轉(zhuǎn)到應(yīng)用端;如檢測到登錄令牌則直接轉(zhuǎn)發(fā)到應(yīng)用端;
[0043](6)應(yīng)用端啟動驗證過濾,根據(jù)令牌獲取用戶的登錄信息,如無效則重新定位到統(tǒng)一身份認證門戶進行登錄驗證,如有效則交由應(yīng)用端程序處理進一步的行為。
[0044]基于數(shù)據(jù)中心中間件系統(tǒng)的主從式構(gòu)建方法,其步驟為:
[0045](I)部署啟動主數(shù)據(jù)中心服務(wù),并注冊從數(shù)據(jù)中心;
[0046](2)部署啟動從數(shù)據(jù)中心服務(wù),設(shè)置主數(shù)據(jù)中心地址;
[0047](3)在各數(shù)據(jù)中心中配置數(shù)據(jù)模型和應(yīng)用服務(wù)。
[0048]與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果:
[0049]本發(fā)明通過在應(yīng)用系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間建立數(shù)據(jù)中心中間件,使得傳統(tǒng)的數(shù)據(jù)中心實現(xiàn)了與數(shù)據(jù)庫系統(tǒng)的分離,可以形成獨立的可以替換的中間件系統(tǒng),可以為其部署和應(yīng)用提供更靈活的配置方案。同時通過建立應(yīng)用系統(tǒng)之間的數(shù)據(jù)同步服務(wù),可以以數(shù)據(jù)為基礎(chǔ)實現(xiàn)應(yīng)用系統(tǒng)的整合,而且可以支持不同開發(fā)語言開發(fā)的應(yīng)用系統(tǒng)之間的應(yīng)用整合。并且通過此中間件系統(tǒng)提供的統(tǒng)一身份認證可以實現(xiàn)應(yīng)用系統(tǒng)的用戶體系的整合以及單點登錄的實現(xiàn),使得應(yīng)用系統(tǒng)可以獨立設(shè)計實現(xiàn),統(tǒng)一應(yīng)用。因此,本發(fā)明提供了獨立于數(shù)據(jù)庫體系的數(shù)據(jù)中心解決方案,通過本發(fā)明可以實現(xiàn)各種獨立應(yīng)用系統(tǒng)的整合,形成統(tǒng)一的信息系統(tǒng)。
【附圖說明】
:
[0050]圖1是本發(fā)明數(shù)據(jù)中心中間件系統(tǒng)的功能結(jié)構(gòu)示意圖;
[0051]圖2是本發(fā)明數(shù)據(jù)中心中間件系統(tǒng)的流程示意圖;
[0052]圖3是本發(fā)明數(shù)據(jù)中心中間件系統(tǒng)的級聯(lián)部署圖示意圖。
【具體實施方式】
:
[0053]下面對本發(fā)明的【具體實施方式】進行詳細描述,但應(yīng)當理解本發(fā)明的保護范圍并不受【具體實施方式】的限制。
[0054]除非另有其它明確表示,否則在整個說明書和權(quán)利要求書中,術(shù)語“包括”或其變換如“包含”或“包括有”等等將被理解為包括所陳述的元件或組成部分,而并未排除其它元件或其它組成部分。
[0055]如圖1-2所示,數(shù)據(jù)中心中間件系統(tǒng),包括:
[0056]數(shù)據(jù)中心服務(wù)端,用于建立消息響應(yīng)中心,根據(jù)系統(tǒng)注冊的應(yīng)用對系統(tǒng)定義的數(shù)據(jù)對象的讀寫權(quán)限,向需要接受數(shù)據(jù)的數(shù)據(jù)中心客戶端發(fā)布數(shù)據(jù)消息通知,并根據(jù)數(shù)據(jù)中心客戶端請求推送數(shù)據(jù)信息,完成數(shù)據(jù)變更處理;數(shù)據(jù)中心服務(wù)端基于持久化數(shù)據(jù)存儲系統(tǒng)保存數(shù)據(jù),形成統(tǒng)一的數(shù)據(jù)倉庫;
[0057]數(shù)據(jù)中心管理系統(tǒng),針對常見的數(shù)據(jù)類型進行統(tǒng)一的抽象定義,形成標準數(shù)據(jù)類型,在對應(yīng)不同的數(shù)據(jù)庫或持久化存儲系統(tǒng)時轉(zhuǎn)換為系統(tǒng)支持的特定類型;采用虛擬對象方式實現(xiàn)數(shù)據(jù)標準集定義,并支持數(shù)據(jù)對象之間的引用和繼承。建立數(shù)據(jù)中心描述語言,根據(jù)數(shù)據(jù)對象的定義,形成基于XML格式的描述文件,用于描述數(shù)據(jù)對象的特征和結(jié)構(gòu),用于各種開發(fā)語言根據(jù)此文件生成符合使用規(guī)范的數(shù)據(jù)模型和操作代碼。在數(shù)據(jù)中心管理系統(tǒng)注冊數(shù)據(jù)的提供者和使用者,保證數(shù)據(jù)建立和更新的流向,確保數(shù)據(jù)的可靠來源。
[0058]數(shù)據(jù)中心應(yīng)用端,用于提供二次開發(fā)接口,提供消息偵聽服務(wù),通過消息機制獲取數(shù)據(jù)中心服務(wù)端的數(shù)據(jù)變更信息,并通過調(diào)用數(shù)據(jù)中心服務(wù)端的數(shù)據(jù)接口獲取數(shù)據(jù),然后進行必要的處理,更新本地的實際數(shù)據(jù)庫數(shù)據(jù)。
[0059]在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立實時通訊機制,當數(shù)據(jù)發(fā)生變化時進行實時的更新通知。在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立數(shù)據(jù)傳輸機制,傳輸變更的數(shù)據(jù)。在數(shù)據(jù)中心服務(wù)端和應(yīng)用端建立文件傳輸機制,傳輸變更的文件。數(shù)據(jù)中心服務(wù)端提供的數(shù)據(jù)傳輸服務(wù)為 WebService 接口。
[0060]建立特定數(shù)據(jù)的驗證機制,確