本發(fā)明涉及異構(gòu)數(shù)據(jù)處理領(lǐng)域,具體涉及云環(huán)境中異構(gòu)數(shù)據(jù)的共享、交換與集成技術(shù)。本發(fā)明基于數(shù)據(jù)交換模型實現(xiàn)交換數(shù)據(jù)在異構(gòu)數(shù)據(jù)庫和應用系統(tǒng)中的數(shù)據(jù)交換,通過數(shù)據(jù)交換模型對不同的數(shù)據(jù)源進行統(tǒng)一存儲管理,并結(jié)合數(shù)據(jù)倉庫,為用戶提供統(tǒng)計、分析等服務。通過本發(fā)明所提出的云環(huán)境中數(shù)據(jù)交換與共享方法及系統(tǒng)可以為用戶屏蔽底層不同的數(shù)據(jù)源,從而使使用不同數(shù)據(jù)庫的應用系統(tǒng)之間能共享、交換數(shù)據(jù)和信息。
背景技術(shù):
::近年來,隨著信息技術(shù)的深入發(fā)展,數(shù)據(jù)模型和各業(yè)務流程不斷完善,出現(xiàn)了大量的不同類型的數(shù)據(jù)庫系統(tǒng),比如關(guān)系數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫和JSON數(shù)據(jù)庫等。這些數(shù)據(jù)庫系統(tǒng)不僅軟硬件平臺各異,不同數(shù)據(jù)庫之間的數(shù)據(jù)結(jié)構(gòu)和存儲方式也來自不同的數(shù)據(jù)庫模型而各不相同,不同數(shù)據(jù)庫中有相同語義的對象可能具有不同的名稱,而且這些對象可能由不同的單位進行度量,致使相互的異構(gòu)數(shù)據(jù)庫系統(tǒng)之間不能進行共享,使得各個數(shù)據(jù)庫系統(tǒng)之間的交互變得越來越復雜和困難,大大降低了數(shù)據(jù)的利用價值。在數(shù)據(jù)聯(lián)通方面,典型問題就是“信息孤島”的出現(xiàn)。各個信息化系統(tǒng)各自為戰(zhàn),各自擁有自己的數(shù)據(jù)存儲模式,各自擁有自己的系統(tǒng)架構(gòu),這對企業(yè)各個部門之間、各個企業(yè)之間進行數(shù)據(jù)交換形成了巨大的障礙。同時,這種“信息孤島”往往伴隨著系統(tǒng)耦合性高的問題,這又造成了系統(tǒng)可改造性能低,既不便于自己業(yè)務的拓展,也不利于引入第三方服務,不能快速的適應互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,逐漸造成了自我封閉的困境。數(shù)據(jù)交換的目的就是消除這種信息孤島,為用戶提供一個統(tǒng)一的查詢接口,屏蔽底層數(shù)據(jù)源的不同,使得用戶不必再考慮底層數(shù)據(jù)源的數(shù)據(jù)模型、物理位置和語義異構(gòu)等問題,將多個分布、異構(gòu)數(shù)據(jù)源集成在一起,從而使這些使用不同數(shù)據(jù)庫的應用系統(tǒng)之間能共享、交換數(shù)據(jù)和信息,形成一個虛擬的、統(tǒng)一的系統(tǒng)。目前針對數(shù)據(jù)交換的需求,比較成型的解決辦法主要有兩種:一種是傳統(tǒng)的EDI(ElectronicDataInterchange)技術(shù),也就是所謂的電子數(shù)據(jù)交換技術(shù),將數(shù)據(jù)標準化和格式化,并通過計算機網(wǎng)絡(luò),在計算機網(wǎng)絡(luò)系統(tǒng)之間進行數(shù)據(jù)交換和自動處理。EDI發(fā)送方取出要發(fā)送的數(shù)據(jù)轉(zhuǎn)換成平面文件,然后將平面文件翻譯為統(tǒng)一標準EDI報文并組成EDI信件,發(fā)送給接收方,接收方收到后將信件拆開并翻譯為平面文件,轉(zhuǎn)換并送到應用系統(tǒng)中進行處理。由于EDI是采用統(tǒng)一標準編制數(shù)據(jù)信息的,數(shù)據(jù)交換必須按規(guī)定程式進行,一旦目的端變了,就要做出新規(guī)定,缺少擴充性,無法滿足業(yè)務系統(tǒng)中不同異構(gòu)數(shù)據(jù)源進行數(shù)據(jù)交換的需求。另一種為建立數(shù)據(jù)倉庫,其用于交換和處理數(shù)據(jù)的技術(shù)大致有三種。其一,最常用的方法就是ETL(Extract-Transform-Load),通過ETL技術(shù),將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)如關(guān)系數(shù)據(jù)、平面數(shù)據(jù)文件等抽取到臨時中間層后經(jīng)過清洗、轉(zhuǎn)換、集成,最后加載到數(shù)據(jù)倉庫或數(shù)據(jù)集市中,即從數(shù)據(jù)源抽取出所需的數(shù)據(jù),經(jīng)過數(shù)據(jù)清洗并轉(zhuǎn)換為一個標準的格式,最終按照預先定義好的數(shù)據(jù)倉庫模型將數(shù)據(jù)加載到數(shù)據(jù)倉庫中去,從而實現(xiàn)數(shù)據(jù)在系統(tǒng)間的轉(zhuǎn)移;在這個過程中還可對數(shù)據(jù)順帶做一些修改,使其滿足條件,最后完成整個數(shù)據(jù)交換工作。在傳統(tǒng)行業(yè)的數(shù)據(jù)倉庫項目中,大多會采用一些現(xiàn)成的ETL工具,如Informatica、Datastage、微軟SSIS等,但專業(yè)的ETL廠商的產(chǎn)品(Informatica等)往往功能復雜配置繁瑣,其高昂的價格也會使一般用戶望而卻步,而整體數(shù)據(jù)倉庫方案供應商或數(shù)據(jù)庫提供商(OracleWarehouseBuilder等)提供的相應的ETL工具僅對自己廠商的相關(guān)產(chǎn)品有很好的支持并能發(fā)揮出最大效率,但其結(jié)構(gòu)相對封閉,無法支持多個異構(gòu)數(shù)據(jù)源的數(shù)據(jù)進行數(shù)據(jù)交換。目前國內(nèi)同類軟件開發(fā)相對落后,較成熟的異構(gòu)數(shù)據(jù)轉(zhuǎn)換產(chǎn)品非常少,軟件的可操作性較差,在功能、性能上都不夠理想。其二,另外一個流行的方法就是ELT(Extract-Load-Transform),與ETL不同的是,數(shù)據(jù)從數(shù)據(jù)源中的數(shù)據(jù)庫被抽取出來后,裝入暫存區(qū)并進行清洗和優(yōu)化,而在數(shù)據(jù)倉庫中則進行和數(shù)據(jù)交換與集成有關(guān)的純粹的轉(zhuǎn)換,但該方法僅適用于數(shù)據(jù)比較靈巧、結(jié)構(gòu)化非常好以及數(shù)據(jù)量非常小的場合。其三,CDC(ChangeDataCapture)即增量數(shù)據(jù)采集技術(shù),在源系統(tǒng)上安裝一個第三方應用程序從數(shù)據(jù)庫日志中提取數(shù)據(jù)來收集數(shù)據(jù)的變化,將增量數(shù)據(jù)從數(shù)據(jù)源中抽取出來,并傳送到數(shù)據(jù)倉庫中。在目標端,安裝同樣的第三方應用系統(tǒng),用于處理每個抽取過來的數(shù)據(jù),并裝入數(shù)據(jù)倉庫的暫存區(qū),然后對數(shù)據(jù)進行清洗、優(yōu)化并轉(zhuǎn)換到其在數(shù)據(jù)倉庫中的最終目的地。此種方法適用于需要以近乎實時的方式處理數(shù)據(jù)、數(shù)據(jù)的可用性非常關(guān)鍵的場合,但此種方法關(guān)注于動態(tài)變化的增量數(shù)據(jù),不能適用于全量數(shù)據(jù)。所以,需要一種異構(gòu)數(shù)據(jù)間進行交換和集成的方法,該方法既可以滿足用戶對種類繁多的異構(gòu)數(shù)據(jù)源進行整合的需求,進而使它們成為對聯(lián)機分析系統(tǒng)和數(shù)據(jù)挖掘等決策分析有用的數(shù)據(jù),又可以通過全量/增量方式進行數(shù)據(jù)的后期更新。技術(shù)實現(xiàn)要素:本發(fā)明的目的是針對現(xiàn)有異構(gòu)數(shù)據(jù)源之間數(shù)據(jù)交換和集成困難的問題,提供一種云環(huán)境中數(shù)據(jù)交換與共享方法。本發(fā)明為實現(xiàn)上述目的所采用的技術(shù)方案為:一種云環(huán)境中數(shù)據(jù)交換與共享方法,其步驟包括:1)在前置區(qū)部署交換數(shù)據(jù)庫和數(shù)據(jù)交換模塊,在后臺部署數(shù)據(jù)接入與認證管理模塊、數(shù)據(jù)倉庫管理模塊、中間數(shù)據(jù)庫、以及數(shù)據(jù)倉庫;2)建立數(shù)據(jù)交換模型,該數(shù)據(jù)交換模型定義交換數(shù)據(jù)庫與中間數(shù)據(jù)庫中的各個數(shù)據(jù)庫、數(shù)據(jù)表、數(shù)據(jù)項以及數(shù)據(jù)相互之間的對應關(guān)系;3)通過前置區(qū)的數(shù)據(jù)交換模塊管理交換數(shù)據(jù)庫,通過交換數(shù)據(jù)庫從數(shù)據(jù)源接收采集的數(shù)據(jù),數(shù)據(jù)交換模塊依據(jù)數(shù)據(jù)交換模型中的數(shù)據(jù)轉(zhuǎn)換規(guī)則進行數(shù)據(jù)轉(zhuǎn)換,并將轉(zhuǎn)換后的數(shù)據(jù)推送給后臺的數(shù)據(jù)接入與認證管理模塊;4)后臺的數(shù)據(jù)接入與認證管理模塊對接收到的數(shù)據(jù)進行認證和校驗,然后將數(shù)據(jù)寫入中間數(shù)據(jù)庫;5)后臺的數(shù)據(jù)倉庫管理模塊根據(jù)管理制度,以特定的時間周期從中間數(shù)據(jù)庫中提取數(shù)據(jù)進行處理、統(tǒng)計與分析,將所得結(jié)果作為數(shù)據(jù)產(chǎn)品存儲在數(shù)據(jù)倉庫中。一種云環(huán)境中異構(gòu)數(shù)據(jù)交換與共享系統(tǒng),該系統(tǒng)包括:數(shù)據(jù)源、前置區(qū)、后臺,該前置區(qū)包括數(shù)據(jù)交換模塊、交換數(shù)據(jù)庫,該后臺包括數(shù)據(jù)接入與認證管理模塊、數(shù)據(jù)倉庫管理模塊、輔助服務模塊以及中間數(shù)據(jù)庫、數(shù)據(jù)倉庫、備份數(shù)據(jù)庫,其中:所述數(shù)據(jù)交換模塊在交換端的前置區(qū)中值守交換數(shù)據(jù)庫,交換端的采集方根據(jù)管理要求采集數(shù)據(jù)后將其提取、推送到交換數(shù)據(jù)庫中。而后給數(shù)據(jù)交換模塊發(fā)送消息,提交數(shù)據(jù)交換請求,完成數(shù)據(jù)的提交與交換過程。所述“交換端”是指與其他采集系統(tǒng)進行交互的部分;“值守”是指數(shù)據(jù)交換模塊按照預定的時間,周期性地從交換數(shù)據(jù)庫中提取最新數(shù)據(jù),并將其發(fā)送給數(shù)據(jù)接入與認證管理模塊;“交換端的采集方”是指采集交換數(shù)據(jù)的線程,通過其定義的數(shù)據(jù)采集接口采集到數(shù)據(jù)后推送到本系統(tǒng)的交換數(shù)據(jù)庫中。所述數(shù)據(jù)接入與認證管理模塊中包括一個數(shù)據(jù)接入與認證服務器,用來與前置區(qū)進行通信與數(shù)據(jù)交換,前置區(qū)數(shù)據(jù)交換到系統(tǒng)中后,根據(jù)當前數(shù)據(jù)包的標簽對數(shù)據(jù)源的標簽信息進行認證,完成認證后,將數(shù)據(jù)解密。同時,根據(jù)數(shù)據(jù)標準對其中的數(shù)據(jù)進行校驗,完成這一工作后,將數(shù)據(jù)寫入中間數(shù)據(jù)庫中,完成數(shù)據(jù)交換的基本步驟。所述數(shù)據(jù)倉庫管理模塊用于在數(shù)據(jù)增量過程中,根據(jù)管理制度以特定的時間周期,對數(shù)據(jù)倉庫中的信息進行迭代。所述輔助服務模塊為系統(tǒng)的正常運轉(zhuǎn)提供數(shù)據(jù)備份、大數(shù)據(jù)處理分析以及數(shù)據(jù)加密解密等服務服務。在前置區(qū)中,數(shù)據(jù)源在增量過程中將數(shù)據(jù)推送到交換數(shù)據(jù)庫中,而后將推送結(jié)果信息提交給數(shù)據(jù)交換模塊。數(shù)據(jù)交換模塊接收到這一信息后,根據(jù)基線與數(shù)據(jù)源身份從交換數(shù)據(jù)庫中提取對應的數(shù)據(jù)集加密封裝后,填寫標簽,而后將數(shù)據(jù)向后臺轉(zhuǎn)發(fā)。數(shù)據(jù)在每個特定的時間段都需要標識出一個數(shù)據(jù)版本,其中的“基線”即是用來標識時間段的信息。在后臺中,后臺的數(shù)據(jù)接入與認證管理模塊接收到前置區(qū)的數(shù)據(jù)轉(zhuǎn)發(fā)請求后,接收數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的標簽內(nèi)容首先進行數(shù)據(jù)包的認證。完成這一工作后,將數(shù)據(jù)進行校驗,通過校驗的數(shù)據(jù)寫入中間數(shù)據(jù)庫中,在寫入過程中將數(shù)據(jù)源與基線信息與原始數(shù)據(jù)一并寫入。另一方面,數(shù)據(jù)倉庫管理模塊根據(jù)管理制度,定期從中間數(shù)據(jù)庫中提取數(shù)據(jù)進行處理、統(tǒng)計與分析。在這一過程中根據(jù)系統(tǒng)配置的統(tǒng)計量進行計算,計算的結(jié)果作為數(shù)據(jù)產(chǎn)品存儲在數(shù)據(jù)倉庫中,輔助服務模塊面向不同環(huán)節(jié)提供大數(shù)據(jù)并行集群基本處理、數(shù)據(jù)加密解密以及數(shù)據(jù)備份的支撐服務。本發(fā)明的有益效果如下:本發(fā)明采用http協(xié)議通過Web服務調(diào)用的方式完成不同安全域下的應用系統(tǒng)之間的數(shù)據(jù)交換,具有容錯處理機制,可以為行業(yè)應用系統(tǒng)以及各數(shù)據(jù)庫系統(tǒng)中提供一種低耦合的、穩(wěn)定安全的數(shù)據(jù)交換與集成方案,解決當前信息集成領(lǐng)域需要對數(shù)據(jù)交換集成功能進行重復開發(fā),以及現(xiàn)有數(shù)據(jù)交換與集成方法不能滿足各種應用場景下的信息領(lǐng)域需求、與應用系統(tǒng)耦合度高可擴展性差的問題,降低數(shù)據(jù)交換和維護成本,保證數(shù)據(jù)庫的安全性和正確性,避免了重復建設(shè)和資源浪費。附圖說明圖1是實施例提供的系統(tǒng)架構(gòu)示意圖;圖2是實施例提供的系統(tǒng)基本組織關(guān)系示意圖;圖3是總體數(shù)據(jù)交換執(zhí)行流程示意圖;圖4是后臺中間數(shù)據(jù)庫的完整寫入執(zhí)行流程示意圖;圖5是后臺數(shù)據(jù)倉庫產(chǎn)品加工的完整執(zhí)行流程示意圖;圖6是數(shù)據(jù)產(chǎn)品加工過程中大數(shù)據(jù)處理執(zhí)行流程示意圖。具體實施方式下面通過具體實施例和附圖,對本發(fā)明做進一步說明。針對大型分布式信息系統(tǒng)數(shù)據(jù)交換與集成的需求,本發(fā)明提出一種云環(huán)境中數(shù)據(jù)交換與共享方法以及應用該方法的系統(tǒng)。這一方法在日常采集、交換的基礎(chǔ)上,結(jié)合離線數(shù)據(jù)倉庫與實時在線分析的手段,為不同用戶提供行業(yè)信息統(tǒng)計、分析與輔助決策的服務。圖1中展示了這一系統(tǒng)的整體架構(gòu)方案,包括前置接入層、中間數(shù)據(jù)層和數(shù)據(jù)產(chǎn)品層。圖2中展示了這一系統(tǒng)的基本組織關(guān)系,包括數(shù)據(jù)源、前置區(qū)、后臺,其中前置區(qū)包括數(shù)據(jù)交換模塊、交換數(shù)據(jù)庫,后臺包括數(shù)據(jù)接入與認證管理模塊、數(shù)據(jù)倉庫管理模塊、輔助服務模塊以及中間數(shù)據(jù)庫、數(shù)據(jù)倉庫等。所述數(shù)據(jù)交換模塊在交換端的前置區(qū)中值守交換數(shù)據(jù)庫,交換端的數(shù)據(jù)源根據(jù)管理要求采集數(shù)據(jù)后將其提取、推送到交換數(shù)據(jù)庫中,而后將交換請求提交給交換值守,完成數(shù)據(jù)的提交與交換過程,主要包括數(shù)據(jù)交換信息接口、交換數(shù)據(jù)庫管理、數(shù)據(jù)交換任務組織、交換數(shù)據(jù)提取轉(zhuǎn)換與傳輸?shù)裙δ?。所述?shù)據(jù)接入與認證管理模塊根據(jù)當前數(shù)據(jù)包的標簽對交換源的標簽信息進行認證,完成認證后,將數(shù)據(jù)解密。同時,根據(jù)數(shù)據(jù)標準對其中的數(shù)據(jù)進行校驗,并將數(shù)據(jù)寫入中間庫中,完成數(shù)據(jù)交換的基本步驟,主要包括數(shù)據(jù)接入認證、數(shù)據(jù)預處理、中間庫管理、數(shù)據(jù)基線編碼管理等功能。所述數(shù)據(jù)倉庫管理模塊根據(jù)上層數(shù)據(jù)服務的分析模型構(gòu)造對應的統(tǒng)計量與存儲模型。在數(shù)據(jù)增量過程中,根據(jù)管理制度以特定的時間周期,對倉庫中的信息進行迭代,主要完成數(shù)據(jù)倉庫與統(tǒng)計量配置、數(shù)據(jù)統(tǒng)計任務執(zhí)行、數(shù)據(jù)倉庫吞吐管理等。1.數(shù)據(jù)交換模型數(shù)據(jù)交換模型,是數(shù)據(jù)交換的重要依據(jù),定義了在交換數(shù)據(jù)庫與中間數(shù)據(jù)庫中,其各個數(shù)據(jù)庫、數(shù)據(jù)表、數(shù)據(jù)項以及數(shù)據(jù)相互之間的對應關(guān)系,采用分層定義的方法,將其定義為一個兩元組:dbExchangeModel={(modelname,dbRelationModel,time)i|i=0,1,...,n}其中,modelname表示該模型的唯一標識,dbRelationModel為交換的數(shù)據(jù)庫之間相關(guān)內(nèi)容的對應關(guān)系模型,time記錄該模型創(chuàng)建以及修改的時間。在一個中間數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)交換模型為一個模型集合,可以有多個數(shù)據(jù)交換模型對象,用來定義不同的其他數(shù)據(jù)庫應用與中間數(shù)據(jù)庫系統(tǒng)之間數(shù)據(jù)的交換規(guī)則。進一步,將dbRelationModel定義為如下一個三元組:dbRelationModel=(dbname,jsondbname,tableSet)其中,dbname表示交換數(shù)據(jù)庫在與中間數(shù)據(jù)庫進行數(shù)據(jù)交換的數(shù)據(jù)庫名稱,jsondbname表示數(shù)據(jù)交換時存儲在中間數(shù)據(jù)庫中的數(shù)據(jù)庫名稱,tableSet={tablej|j=0,1,...,m}是在交換數(shù)據(jù)庫中要進行數(shù)據(jù)交換的數(shù)據(jù)表模型對象組成的集合,數(shù)據(jù)表模型table規(guī)定不同數(shù)據(jù)庫中進行數(shù)據(jù)交換時數(shù)據(jù)表之間對應關(guān)系的規(guī)則,定義如下:table=(tablename,tablealias,type,primaryKey,columnSet)其中,tablename表示交換數(shù)據(jù)庫中數(shù)據(jù)表的名稱,tablealias為該數(shù)據(jù)表交換到中間數(shù)據(jù)庫后的數(shù)據(jù)表名稱;type定義該數(shù)據(jù)表在數(shù)據(jù)交換過程中的交換模式,包括全量交換ALL和增量交換INCRE;primaryKey標記該數(shù)據(jù)表中的主鍵集合,當只有一個主鍵時,集合內(nèi)只有一個值,主鍵集合中的每一個主鍵值都在columnSet中有定義,即滿足columnSet={columnk|k=0,1,...,columnsN-1}是在交換數(shù)據(jù)庫中要進行數(shù)據(jù)交換的數(shù)據(jù)項模型對象組成的集合,其columnsN是數(shù)據(jù)表中要進行數(shù)據(jù)交換的數(shù)據(jù)項數(shù)量,數(shù)據(jù)項模型column定義了交換數(shù)據(jù)庫與中間數(shù)據(jù)庫中,數(shù)據(jù)項之間的交換規(guī)則。由于同一個數(shù)據(jù)項的不同數(shù)據(jù)之間還存在對應關(guān)系,需要將數(shù)據(jù)項模型column再定義為一個三元組:column=(columnname,columnalias,datatype,dataRelationSet}其中,columnname為交換數(shù)據(jù)庫中該數(shù)據(jù)項的名稱,columnalias表示該數(shù)據(jù)表交換到中間數(shù)據(jù)庫后的數(shù)據(jù)項名稱,datatype規(guī)定該數(shù)據(jù)項的數(shù)據(jù)值屬性,規(guī)定為TEXT、NUMBER、DATE等,dataRelationSet={(prevalue1t,prevalue2t,postvalue1t,postvalue2t)|t=0,1,2,...}是在此數(shù)據(jù)庫中進行數(shù)據(jù)交換過程時,交換數(shù)據(jù)庫與中間數(shù)據(jù)庫之間數(shù)據(jù)值的轉(zhuǎn)換關(guān)系集合,其中,prevalue1表示數(shù)值轉(zhuǎn)換時在交換數(shù)據(jù)庫中數(shù)值轉(zhuǎn)換區(qū)段的起始數(shù)值,prevalue2表示數(shù)值轉(zhuǎn)換時在交換數(shù)據(jù)庫中數(shù)值轉(zhuǎn)換區(qū)段的結(jié)束數(shù)值,postvalue1表示數(shù)值轉(zhuǎn)換時在中間數(shù)據(jù)庫中數(shù)值轉(zhuǎn)換區(qū)段的起始數(shù)值,postvalue2表示數(shù)值轉(zhuǎn)換時在中間數(shù)據(jù)庫中數(shù)值轉(zhuǎn)換區(qū)段的結(jié)束數(shù)值,t表示數(shù)值轉(zhuǎn)換區(qū)間段的序號。在表示TXT等非數(shù)值型數(shù)據(jù)、單個數(shù)值轉(zhuǎn)換映射時,將postvalue1與postvalue2置為NULL即可。2.數(shù)據(jù)交換如圖所示,數(shù)據(jù)交換總體流程如圖3所示:1)在系統(tǒng)啟動時,后臺的數(shù)據(jù)接入與認證服務器初始化AES密鑰key1、初始化RSA密鑰對;2)數(shù)據(jù)源訪問數(shù)據(jù)交換與集成系統(tǒng)接口請求進行數(shù)據(jù)交換認證;3)根據(jù)當前數(shù)據(jù)包的標簽對數(shù)據(jù)源的標簽信息進行認證,若當前數(shù)據(jù)源身份不合法,提示認證失敗,流程結(jié)束;4)若當前數(shù)據(jù)源身份合法,獲取當前的基線信息,并返回給數(shù)據(jù)源身份認證與基線信息;5)數(shù)據(jù)源將要寫入的數(shù)據(jù)、認證信息和基線信息寫入到前置區(qū)交換數(shù)據(jù)庫;6)數(shù)據(jù)寫入完成后,數(shù)據(jù)源發(fā)送寫入完成消息給數(shù)據(jù)交換與集成系統(tǒng),通知數(shù)據(jù)寫入完成;7)數(shù)據(jù)交換與集成系統(tǒng)接收到數(shù)據(jù)源的消息后,從交換數(shù)據(jù)庫中提取與數(shù)據(jù)源對應的基線數(shù)據(jù);8)前置區(qū)數(shù)據(jù)交換模塊初始化AES密鑰key2;9)后臺將RSA公鑰發(fā)送給前置區(qū);10)前置區(qū)使用RSA公鑰加密自己的AES密鑰key2,并發(fā)送給后臺;11)后臺使用RSA私鑰解密AES密鑰key2,并加密自己的AES密鑰key1后發(fā)送給前置區(qū);12)前置區(qū)解密出AES密鑰key1;13)前置區(qū)與后臺都通過key1與key2組合出AES密鑰key;14)將當前基線數(shù)據(jù)使用AES密鑰key進行加密打包,并封裝對應的數(shù)據(jù)源與基線標簽以及數(shù)字簽名后,傳輸給后臺數(shù)據(jù)接入與認證模塊;15)后臺數(shù)據(jù)接入與認證模塊收到前置區(qū)傳送的數(shù)據(jù)后,根據(jù)數(shù)據(jù)包的標簽內(nèi)容進行數(shù)據(jù)包的認證;16)后臺對接收到的數(shù)據(jù)進行一致性校驗,通過校驗的數(shù)據(jù)根據(jù)數(shù)據(jù)的增量模式進行本地數(shù)據(jù)合并與處理;17)后臺完成數(shù)據(jù)寫入,返回寫入結(jié)果信息;18)數(shù)據(jù)接入與認證模塊返回給數(shù)據(jù)源數(shù)據(jù)寫入結(jié)果信息;19)刪除源數(shù)據(jù)庫的基線數(shù)據(jù),并提示寫入的結(jié)果錯誤信息,流程結(jié)束。當要交換的數(shù)據(jù)量大時,根據(jù)數(shù)據(jù)庫以及數(shù)據(jù)表進行分包發(fā)送,在數(shù)據(jù)包中,標識分包的類型以及發(fā)送是否結(jié)束并關(guān)閉連接等信息。3.后臺數(shù)據(jù)提交圖4展示了在后臺中間數(shù)據(jù)庫的完整寫入執(zhí)行流程:1)后臺接收到前置區(qū)的數(shù)據(jù)交換請求后,解析數(shù)據(jù)包中的數(shù)據(jù)源與基線標簽信息;2)根據(jù)標簽內(nèi)容進行數(shù)據(jù)源與基線信息的認證,若認證不通過,提示認證失敗,流程結(jié)束;3)若認證通過,對數(shù)據(jù)進行解密,并對其分頁信息進行校驗,若校驗不通過,提示認證失敗,流程結(jié)束;4)若校驗通過,則提取數(shù)據(jù)包中的分頁數(shù)據(jù),判斷當前分頁的數(shù)據(jù)增量模式;5)針對全量交換數(shù)據(jù),若中間數(shù)據(jù)庫中存在當前的基線數(shù)據(jù),刪除當前該基線中與當前數(shù)據(jù)對應的數(shù)據(jù)行;6)將當前分頁中的數(shù)據(jù)寫入中間庫;7)針對增量交換數(shù)據(jù),若中間數(shù)據(jù)庫中存在當前的基線數(shù)據(jù),更新這些數(shù)據(jù),否則將當前分頁中的數(shù)據(jù)寫入中間庫;8)匯總寫入的錯誤信息;9)將結(jié)果信息返回給前置區(qū);10)流程結(jié)束。圖5展示了在后臺數(shù)據(jù)倉庫產(chǎn)品加工的完整執(zhí)行流程:1)數(shù)據(jù)倉庫管理模塊根據(jù)配置信息等待任務調(diào)度;2)在當前基線周期關(guān)閉或者收到增量數(shù)據(jù)時,啟動后臺數(shù)據(jù)倉庫產(chǎn)品加工任務,若任務啟動失敗,則流程結(jié)束;3)獲取最新的基線信息,提取倉庫數(shù)據(jù)處理任務的配置信息;4)根據(jù)最新基線的統(tǒng)計量配置信息,提取中間庫中的當前基線周期內(nèi)的數(shù)據(jù)集,若統(tǒng)計量任務都已完成,轉(zhuǎn)步驟6),若還有統(tǒng)計量未進行處理,轉(zhuǎn)步驟5);5)查詢當前數(shù)據(jù)集中最后的基線信息,若該基線數(shù)據(jù)集已經(jīng)被處理,則放棄該統(tǒng)計量處理,轉(zhuǎn)步驟9),否則提取中間庫中最后周期內(nèi)的基線數(shù)據(jù);6)將各個統(tǒng)計量的目標數(shù)據(jù)集合進行合并;7)根據(jù)集合分區(qū)提取分區(qū)信息,提交數(shù)據(jù)處理平臺分區(qū)進行各個統(tǒng)計量的計算處理;8)形成數(shù)據(jù)產(chǎn)品,寫入數(shù)據(jù)倉庫;9)提取下一個統(tǒng)計量任務,轉(zhuǎn)步驟4);10)完成當前基線的統(tǒng)計量產(chǎn)品加工任務;11)流程結(jié)束。4.數(shù)據(jù)處理加工數(shù)據(jù)產(chǎn)品加工過程中,數(shù)據(jù)處理執(zhí)行流程如圖6所示:1)數(shù)據(jù)產(chǎn)品加工過程中,完成各個統(tǒng)計量的處理任務后,匯總提交任務數(shù)據(jù)集;2)獲取集合分區(qū)信息;3)將任務數(shù)據(jù)集提交數(shù)據(jù)處理平臺,根據(jù)集合分區(qū)將計算處理任務分割成各個子任務進行計算處理;4)給子任務分配該分區(qū)中的一個最小分區(qū),子任務從數(shù)據(jù)集中提取分區(qū)中的數(shù)據(jù)進行規(guī)模統(tǒng)計分析;5)根據(jù)當前基線信息提取對應分區(qū)上的一個基線數(shù)據(jù)集;6)針對該數(shù)據(jù)集計算相應統(tǒng)計量的環(huán)比、同比對比數(shù)據(jù),完成最小分區(qū)當前基線數(shù)據(jù)處理;7)提取當前分區(qū)任務下一個最小分區(qū)信息,若全都已經(jīng)計算完成,轉(zhuǎn)步驟8),否則,轉(zhuǎn)步驟4)繼續(xù)執(zhí)行;8)子任務匯總各個最小分區(qū)下計算處理的結(jié)果數(shù)據(jù),子任務執(zhí)行完成,返回執(zhí)行結(jié)果;9)匯總各個子任務的執(zhí)行結(jié)果并輸出返回,流程結(jié)束。以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其進行限制,本領(lǐng)域的普通技術(shù)人員可以對本發(fā)明的技術(shù)方案進行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,本發(fā)明的保護范圍應以權(quán)利要求書所述為準。當前第1頁1 2 3 當前第1頁1 2 3