專利名稱:數(shù)據(jù)采集工具及數(shù)據(jù)采集方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)采集技術(shù),尤其涉及一種數(shù)據(jù)采集工具及數(shù)據(jù)采集方法。
背景技術(shù):
在國際信息資源領(lǐng)域受到廣泛關(guān)注的開放檔案信息系統(tǒng)參考模型(Reference Model for an Open Archival Information System,簡稱 0AIS)是一項(xiàng)基于數(shù)字信息長期保存與獲取的國際標(biāo)準(zhǔn)(IS014721 :2003),這也是當(dāng)前國內(nèi)外數(shù)字檔案館建設(shè)的重要參考依據(jù)。在OAIS系統(tǒng)之外,三個與OAIS系統(tǒng)相互獨(dú)立、相互作用的實(shí)體組成了外部環(huán)境,它們分別是信息生成者、外部管理、用戶。這其中,信息生成者是指利用OAIS參考模型,對信息進(jìn)行長期保管的個人、機(jī)構(gòu)或第三方系統(tǒng),信息生成者將需要長期保存的信息及相關(guān)元數(shù)據(jù)移交給檔案館。對于現(xiàn)階段的數(shù)字檔案館建設(shè)項(xiàng)目來說,信息生成者主要是指機(jī)關(guān)檔案室和下級檔案部門,特別是這些單位現(xiàn)有的、定期產(chǎn)生檔案數(shù)據(jù)的業(yè)務(wù)系統(tǒng)、辦公自動化 (OA)系統(tǒng)、檔案室管理系統(tǒng)。OAIS模型只對信息生成者和檔案館之間的移交協(xié)議進(jìn)行了定義,但并沒有給出數(shù)據(jù)采集和移交的具體方式,而這恰恰是數(shù)字檔案館項(xiàng)目建設(shè)中最常碰到的問題。結(jié)合實(shí)際的數(shù)字檔案館的情況,對應(yīng)真實(shí)的數(shù)字檔案館的模型可以抽象為如下的三個階段收館藏檔案數(shù)字化以及各種電子文件的收集。收集的渠道包括電子公文歸檔、數(shù)字化加工(包括紙質(zhì)檔案掃描加工和聲像檔案模數(shù)轉(zhuǎn)換)、電子文件中心歸檔、在線上報、 脫機(jī)上報等各種方式。管(存)檔案整理、檔案著錄、檔案鑒定、數(shù)據(jù)管理等管理操作以及數(shù)據(jù)存儲備份、光盤離線存儲、縮微處理、數(shù)據(jù)遷移等保存操作。按照文件生命周期理論,對電子檔案進(jìn)行生命周期的管理。用檔案資源的信息發(fā)布并提供檢索利用。通過各個網(wǎng)域面向不同用戶提供各種檔案信息服務(wù),包括網(wǎng)站信息發(fā)布、網(wǎng)上利用服務(wù)平臺、多媒體檔案利用、檔案檢索、檔案借
閱等等。這其中如何解決電子文件的采集接收問題是現(xiàn)階段數(shù)字檔案館項(xiàng)目建設(shè)中的關(guān)鍵問題,但迄今為止依然沒有一種可以適應(yīng)大多數(shù)情況下數(shù)據(jù)采集的通用軟件工具出現(xiàn)。
發(fā)明內(nèi)容
本發(fā)明旨在提出一種能夠從異構(gòu)數(shù)據(jù)源采集收據(jù)的工具及方法。根據(jù)本發(fā)明的一方面,提出一種數(shù)據(jù)采集工具,從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),該數(shù)據(jù)采集工具包括表示層工具、邏輯層工具和數(shù)據(jù)層工具。表示層工具連接到各個數(shù)據(jù)源的頁面展現(xiàn)層,在各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層工具僅訪問數(shù)據(jù)源的頁面展現(xiàn)層。邏輯層工具連接到各個數(shù)據(jù)源的邏輯層,數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口供邏輯層工具進(jìn)行數(shù)據(jù)交換。數(shù)據(jù)層工具連接到各個數(shù)據(jù)源的數(shù)據(jù)層,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。在一個實(shí)施例中,表示層工具包括數(shù)據(jù)抓取工具,數(shù)據(jù)抓取工具解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。頁面展現(xiàn)層是展示的頁面是HTML頁面。在一個實(shí)施例中,邏輯層工具包括應(yīng)用程序接口工具和服務(wù)總線工具。應(yīng)用程序接口工具在數(shù)據(jù)源提供程序調(diào)用接口,應(yīng)用程序接口工具對所述程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),所述程序調(diào)用接口包括胃必 &代、01^、(^乂、把妨8冊11。服務(wù)總線工具在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以Web Service方式提供接入規(guī)范,數(shù)據(jù)源按照接入規(guī)范的提供Web Service接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。在一個實(shí)施例中,服務(wù)總線工具包括數(shù)據(jù)交換引擎,數(shù)據(jù)交換引擎提供透明的數(shù)據(jù)通信和透明的數(shù)據(jù)查找并采用統(tǒng)一的數(shù)據(jù)安全機(jī)制。在一個實(shí)施例中,數(shù)據(jù)層工具包括數(shù)據(jù)導(dǎo)入工具和數(shù)據(jù)管道工具。數(shù)據(jù)導(dǎo)入工具在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、 Excel、DBF、TXT格式的移交文件包。數(shù)據(jù)管道工具與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)管道工具與 Oracle> MSSQL Server、DB2、Sybase、Access、Foxpro 數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。根據(jù)本發(fā)明的另一方面,提出一種數(shù)據(jù)采集方法,從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),該數(shù)據(jù)采集方法包括表示層采集步驟,從各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層采集步驟僅訪問數(shù)據(jù)源的頁面展現(xiàn)層;邏輯層采集步驟,在數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口,并通過數(shù)據(jù)接口進(jìn)行數(shù)據(jù)交換;數(shù)據(jù)層采集步驟,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。在一個實(shí)施例中,表示層采集步驟包括解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。在一個實(shí)施例中,邏輯層采集步驟包括在數(shù)據(jù)源提供程序調(diào)用接口,對程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),程序調(diào)用接口包括WebPart、DLL、OCX、JavaBean,邏輯層采集步驟還包括在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以Web Service方式提供接入規(guī)范,數(shù)據(jù)源按照接入規(guī)范的提供Web Service接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。在一個實(shí)施例中,數(shù)據(jù)層采集步驟包括在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、Excel, DBF、TXT格式的移交文件包,數(shù)據(jù)層采集步驟還包括與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)管道工具與Oracle、MS SQL Server, DB2, Sybase、Access、Foxpro數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。本發(fā)明的數(shù)據(jù)采集工具及數(shù)據(jù)采集方法通過表示層、邏輯層、數(shù)據(jù)層三個層面,多種采集方式的組合運(yùn)用來達(dá)到從各種異構(gòu)數(shù)據(jù)源中采集數(shù)據(jù)的目的。
圖I揭示了根據(jù)本發(fā)明的一實(shí)施例的數(shù)據(jù)采集工具的結(jié)構(gòu)圖。圖2揭示了根據(jù)本發(fā)明的一實(shí)施例的數(shù)據(jù)采集方法的流程圖。
具體實(shí)施例方式參考圖I所示,本發(fā)明揭示了一種數(shù)據(jù)采集工具,該數(shù)據(jù)采集工具從數(shù)個異構(gòu)數(shù)據(jù)源50采集數(shù)據(jù),該數(shù)據(jù)采集工具包括表示層工具10、邏輯層工具20和數(shù)據(jù)層工具30。表示層工具10連接到各個數(shù)據(jù)源的頁面展現(xiàn)層,在各個數(shù)據(jù)源50的頁面展現(xiàn)層, 例如HTML頁面上進(jìn)行數(shù)據(jù)采集。表示層工具10僅訪問數(shù)據(jù)源的頁面展現(xiàn)層。在一個實(shí)施例中,表示層工具10包括數(shù)據(jù)抓取工具11,數(shù)據(jù)抓取工具11解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。表示層工具10根據(jù)各個數(shù)據(jù)源的電子檔案最終頁面展現(xiàn)(HTML)實(shí)現(xiàn)數(shù)據(jù)采集,不需要對數(shù)據(jù)源的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)進(jìn)行全面分析,也不需要對數(shù)據(jù)源的邏輯設(shè)計進(jìn)行深入了解,更不需要數(shù)據(jù)源生成移交文件包或者提供應(yīng)用程序接口,而只需要通過對特定數(shù)據(jù)顯示頁面結(jié)構(gòu)(HTML源碼)的解析,就能實(shí)現(xiàn)數(shù)據(jù)源頁面顯示內(nèi)容和目標(biāo)系統(tǒng)數(shù)據(jù)結(jié)構(gòu)之間的對應(yīng)關(guān)系,完成數(shù)據(jù)采集。由于這種數(shù)據(jù)采集方式能夠做到用戶在數(shù)據(jù)源的頁面上看到的內(nèi)容就是實(shí)際采集到的內(nèi)容,因此也被稱之為“所見即所得”的數(shù)據(jù)采集方法,其核心是網(wǎng)頁源碼的解析和元數(shù)據(jù)抽取(通常被稱為 “網(wǎng)頁爬蟲”技術(shù))?!熬W(wǎng)頁爬蟲”的原理是從一個或若干初始網(wǎng)頁的URL開始,在抓取網(wǎng)頁的過程中,根據(jù)一定的網(wǎng)頁分析算法過濾與主題無關(guān)的鏈接,保留有用的鏈接并將其放入等待抓取的URL隊(duì)列;然后根據(jù)一定的搜索策略從隊(duì)列中選擇下一步要抓取的網(wǎng)頁URL,并重復(fù)上述過程,直到達(dá)到系統(tǒng)預(yù)設(shè)條件時停止。將“網(wǎng)頁爬蟲”技術(shù)應(yīng)用于電子檔案數(shù)據(jù)采集領(lǐng)域,最需要解決的并不是URL的層層深入抓取網(wǎng)頁問題,而是已抓取網(wǎng)頁源碼的解析和元數(shù)據(jù)抽取問題。由于數(shù)據(jù)源的異構(gòu)性、多樣性和復(fù)雜性,在網(wǎng)頁解析過程中需要結(jié)合最終用戶的業(yè)務(wù)知識并參考電子檔案元數(shù)據(jù)標(biāo)準(zhǔn),根據(jù)數(shù)據(jù)源頁面的實(shí)際顯示結(jié)果對爬蟲程序進(jìn)行配置,建立數(shù)據(jù)源頁面顯示內(nèi)容和目標(biāo)系統(tǒng)數(shù)據(jù)結(jié)構(gòu)之間的對應(yīng)關(guān)系,從網(wǎng)頁源碼中抽取檔案移交所需的元數(shù)據(jù)存入目標(biāo)系統(tǒng),最終實(shí)現(xiàn)數(shù)據(jù)采集。在一個實(shí)施例中,表示層工具10和數(shù)據(jù)抓取工具11具備以下功能能夠解析指定URL的網(wǎng)頁、抽取移交元數(shù)據(jù); 支持增量抽取,可設(shè)置抽取的范圍,也可設(shè)置為增量抽取,已抽取的數(shù)據(jù)不會重復(fù)抽取; 支持條件抽取,可以設(shè)置條件,只抽取符合條件的數(shù)據(jù); 支持多種部署方式,既可以部署在數(shù)據(jù)源本地進(jìn)行單點(diǎn)采集,也可以部署在檔案館遠(yuǎn)程服務(wù)器上進(jìn)行多點(diǎn)并發(fā)采集; 支持任務(wù)監(jiān)控功能,采用輪詢機(jī)制,一發(fā)現(xiàn)數(shù)據(jù)源新產(chǎn)生待移交數(shù)據(jù)即進(jìn)行主動抓取實(shí)現(xiàn)數(shù)據(jù)捕獲操作; 支持格式轉(zhuǎn)換和封裝功能,對于抽取后得到的電子檔案元數(shù)據(jù)能夠按照標(biāo)準(zhǔn)進(jìn)行文件格式轉(zhuǎn)換并制作移交數(shù)據(jù)封裝包。對于爬蟲程序而言,支持的配置功能包括但不限于 可以配置數(shù)據(jù)源登錄頁面的訪問地址(查詢頁面地址需要自動獲取);
可以配置數(shù)據(jù)源的登錄用戶名/密碼; 可以配置數(shù)據(jù)源查詢界面的查詢條件; 可以配置數(shù)據(jù)源查詢界面信息點(diǎn)和目標(biāo)系統(tǒng)數(shù)據(jù)庫字段之間的對應(yīng)關(guān)系; 可以同時采集條目數(shù)據(jù)以及鏈接指向的電子全文數(shù)據(jù); 支持查詢結(jié)果的自動翻頁。邏輯層工具20連接到各個數(shù)據(jù)源的邏輯層,數(shù)據(jù)源50的邏輯層提供數(shù)據(jù)接口供邏輯層工具進(jìn)行數(shù)據(jù)交換。在一個實(shí)施例中,邏輯層工具20包括應(yīng)用程序接口工具21和服務(wù)總線工具22。應(yīng)用程序接口工具21在數(shù)據(jù)源提供程序調(diào)用接口,應(yīng)用程序接口工具21對程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),程序調(diào)用接口包括胃66 &代、01^、(^乂、把妨86&11。程序調(diào)用接口沒有可視化的操作界面,而且需要針對數(shù)據(jù)源提供的具體接口情況進(jìn)行二次開發(fā),但應(yīng)用程序接口工具21會預(yù)留常見接口(Web Part、DLL、OCX、JavaBean等)的調(diào)用集成方法,最常見的方法是對其進(jìn)行接口封裝,比如針對DLL的JNI封裝或者針對Web Part 的Web Service封裝等。服務(wù)總線工具22在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以WebService方式提供接入規(guī)范,數(shù)據(jù)源按照接入規(guī)范的提供Web Service接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。在一個實(shí)施例中,服務(wù)總線工具22包括數(shù)據(jù)交換引擎23,數(shù)據(jù)交換引擎23提供透明的數(shù)據(jù)通信和透明的數(shù)據(jù)查找并采用統(tǒng)一的數(shù)據(jù)安全機(jī)制。數(shù)據(jù)交換引擎23對傳輸中的數(shù)據(jù)進(jìn)行了內(nèi)容轉(zhuǎn)換、格式轉(zhuǎn)換、壓縮和加減密,用于保證數(shù)據(jù)在傳輸過程中的一致性、完整性和安全性。數(shù)據(jù)交換引擎,包括支撐技術(shù)、數(shù)據(jù)處理和數(shù)據(jù)服務(wù)三部分支撐技術(shù)包括排隊(duì)機(jī)制、同步機(jī)制、異步機(jī)制等數(shù)據(jù)交換基礎(chǔ)性支撐技術(shù),并支持 FTP、HTTP、File Stream、Socket等常見數(shù)據(jù)傳輸方式,支持?jǐn)帱c(diǎn)續(xù)傳。數(shù)據(jù)處理包括數(shù)據(jù)模式管理、數(shù)據(jù)路由與轉(zhuǎn)換、數(shù)據(jù)加密與存儲等數(shù)據(jù)處理功能。數(shù)據(jù)服務(wù)包括數(shù)據(jù)交換服務(wù)、數(shù)據(jù)校驗(yàn)服務(wù)、數(shù)據(jù)訪問服務(wù)和數(shù)據(jù)更新服務(wù)。數(shù)據(jù)處理部分和數(shù)據(jù)服務(wù)部分功能簡要介紹如下 數(shù)據(jù)模式管理各應(yīng)用系統(tǒng)通過數(shù)據(jù)交換引擎進(jìn)行數(shù)據(jù)交換操作時,都指示有數(shù)據(jù)模式參數(shù),以表明要請求和操作的數(shù)據(jù)是什么。數(shù)據(jù)模式管理的另一個功能就是可以進(jìn)行格式轉(zhuǎn)換可以將某一消息中的數(shù)據(jù)重組為新的消息,因此它就可以為另一個應(yīng)用程序所用??梢詫?shù)據(jù)模式管理服務(wù)想象為一本通用的辭典,可以理解應(yīng)用程序的“語言”,并知道應(yīng)用程序信息的哪一部分是有用的。數(shù)據(jù)模式管理擁有強(qiáng)大的剖析和模式匹配方法, 這是它能夠理解消息格式的原因所在。這些方法相結(jié)合,幾乎可以描述所有消息格式的結(jié)構(gòu)。消息格式由各個部件組成,每個部件都描述了消息內(nèi)的相應(yīng)域。用部件的模式來描述消息時,就可以將各個域重新組合,構(gòu)成新的消息。 數(shù)據(jù)路由與轉(zhuǎn)換在比較簡單的情況下,某一消息可能只有一個接收應(yīng)用程序。 而比較復(fù)雜的情況是,有兩個(或更多)的接收應(yīng)用程序。為支持所有這些情況,需要能夠?qū)⑾l(fā)送到任意數(shù)目的接收應(yīng)用程序。請注意,每一個接收應(yīng)用程序都要求使用不同的消息格式。為了實(shí)現(xiàn)真正靈活的解決方案,需要能夠根據(jù)每條消息中的實(shí)際數(shù)據(jù),動態(tài)地制定格式轉(zhuǎn)換和路由決策。
數(shù)據(jù)加密與存儲在數(shù)據(jù)交換和轉(zhuǎn)儲過程中,某些機(jī)密性數(shù)據(jù)需要在存儲到目標(biāo)數(shù)據(jù)庫前加密。這樣即使是數(shù)據(jù)庫管理員也無法直接從目標(biāo)數(shù)據(jù)庫中讀取機(jī)密數(shù)據(jù)。整個數(shù)據(jù)加密存儲服務(wù)由三部分組成數(shù)據(jù)加密使用加密算法對數(shù)據(jù)進(jìn)行加密,機(jī)密性數(shù)據(jù)在進(jìn)數(shù)據(jù)庫前需要加密。數(shù)據(jù)解密使用解密算法對數(shù)據(jù)進(jìn)行解密,機(jī)密數(shù)據(jù)從數(shù)據(jù)庫取出時需要解密。機(jī)密數(shù)據(jù)配置指定哪些表的哪些信息是必須加密的。 數(shù)據(jù)交換服務(wù)提供數(shù)據(jù)交換的API程序調(diào)用接口,采用Web Service方式進(jìn)行封裝,便于相關(guān)應(yīng)用系統(tǒng)集成。集成之后,不但源系統(tǒng)和目標(biāo)系統(tǒng)之間可以進(jìn)行數(shù)據(jù)交換, 接入數(shù)據(jù)交換引擎的任何系統(tǒng)之間都可以兩兩進(jìn)行數(shù)據(jù)交換。 數(shù)據(jù)訪問服務(wù)對應(yīng)用系統(tǒng)提供查詢源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)訪問服務(wù), 采用Web Service方式進(jìn)行封裝,便于相關(guān)應(yīng)用系統(tǒng)調(diào)用。 數(shù)據(jù)更新服務(wù)對源數(shù)據(jù)庫提供數(shù)據(jù)更新輪詢服務(wù),一旦發(fā)現(xiàn)源數(shù)據(jù)庫數(shù)據(jù)發(fā)生變化,自動更新目標(biāo)數(shù)據(jù)庫,采用Web Service方式進(jìn)行封裝,便于相關(guān)應(yīng)用系統(tǒng)集成。 數(shù)據(jù)校驗(yàn)服務(wù)不同來源的數(shù)據(jù)在轉(zhuǎn)儲到目標(biāo)數(shù)據(jù)庫時,可能會發(fā)生一致性沖突。當(dāng)數(shù)據(jù)的不一致情形發(fā)生,需要有相應(yīng)的處理規(guī)則觸發(fā),去校驗(yàn)對應(yīng)的記錄。數(shù)據(jù)校驗(yàn)服務(wù)采用Web Service方式進(jìn)行封裝,便于相關(guān)應(yīng)用系統(tǒng)集成。數(shù)據(jù)交換引擎23為數(shù)據(jù)的交換建立一個穩(wěn)定、可靠、快捷、便利的高性能數(shù)據(jù)傳輸通道,實(shí)現(xiàn)對多種傳輸方式并按照既定的流程傳輸數(shù)據(jù);實(shí)現(xiàn)對發(fā)送和轉(zhuǎn)發(fā)信息的完整性和保密性保護(hù)、實(shí)現(xiàn)發(fā)送人和轉(zhuǎn)發(fā)人的身份鑒別和不可抵賴;可以通過配置選擇發(fā)送方式、密級設(shè)定決定加密措施將數(shù)據(jù)加密和壓縮組織成規(guī)定的數(shù)據(jù)包格式發(fā)送到指定的目的地;從數(shù)據(jù)包提取有關(guān)信息,將信息解密解壓,根據(jù)數(shù)據(jù)的完整性和合法性;提供自動接收和人工審核確認(rèn)接收、自動生成交換日志等功能。數(shù)據(jù)層工具30連接到各個數(shù)據(jù)源50的數(shù)據(jù)層,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。在一個實(shí)施例中,數(shù)據(jù)層工具30包括數(shù)據(jù)導(dǎo)入工具31和數(shù)據(jù)管道工具32。數(shù)據(jù)導(dǎo)入工具31在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、 Excel、DBF、TXT格式的移交文件包。數(shù)據(jù)管道工具32與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)管道工具32與Oracle、MS SQL Server>DB2>Sybase>Access>Foxpro數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。數(shù)據(jù)管道工具32是一個通用于各種數(shù)據(jù)庫類型,能夠?qū)崿F(xiàn)各種異構(gòu)數(shù)據(jù)庫之間數(shù)據(jù)交換以及數(shù)據(jù)庫和文件(比如XML)之間交換的工具,具體實(shí)現(xiàn)以下功能支持但不限于以下三種類型的數(shù)據(jù)源(包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫):大型關(guān)系型數(shù)據(jù)庫0racle、SQL Server、DB2、Sybase 等。單機(jī)版關(guān)系型數(shù)據(jù)庫MySQL、Foxpro> Access等。文本文件XML、TXT和EXCEL等。數(shù)據(jù)管道工具32支持的功能包括 可視化連接各類數(shù)據(jù)源(包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫)。 數(shù)據(jù)管道功能數(shù)據(jù)庫之間的數(shù)據(jù)同步和交換,可視化選擇對應(yīng)表和對應(yīng)字段。 導(dǎo)入導(dǎo)出功能將數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出成一定格式的文本文件,將一定格式的文本文件導(dǎo)入數(shù)據(jù)庫。
條件設(shè)置功能允許設(shè)置源數(shù)據(jù)表的查詢條件(包括各種比較操作符和邏輯操作符)。 多種更新方式針對目標(biāo)數(shù)據(jù)庫支持創(chuàng)建表(create)、重建表(replace)、清空更新(refresh)、全部更新(update)、增量更新(append)等多種更新方式。 日志記錄功能在導(dǎo)數(shù)據(jù)過程中記錄出錯情況、記錄數(shù)、進(jìn)度等相關(guān)信息,并在界面上顯示。 版本保存功能用戶定義了一個數(shù)據(jù)管道之后可以將定義的結(jié)果保存起來便于下次再次使用。 測試功能可以進(jìn)行數(shù)據(jù)庫(包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫)連接測試以及導(dǎo)數(shù)據(jù)之前的測試。 多表關(guān)聯(lián)功能除了一對一單表導(dǎo)數(shù)據(jù)操作之外,還可以進(jìn)行多表關(guān)聯(lián)操作 (可以采用數(shù)據(jù)庫視圖的方法解決)。參考圖2所示,本發(fā)明還揭示了一種數(shù)據(jù)采集方法,該方法從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),該數(shù)據(jù)采集方法包括S40.表示層采集步驟,從各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層采集步驟僅訪問數(shù)據(jù)源的頁面展現(xiàn)層。在一個實(shí)施例中,表示層采集步驟S40包括解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。S41.邏輯層采集步驟,在數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口,并通過數(shù)據(jù)接口進(jìn)行數(shù)據(jù)交換。在一個實(shí)施例中,邏輯層采集步驟S41包括在數(shù)據(jù)源提供程序調(diào)用接口,對程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),程序調(diào)用接口包括Web Part、DLL、OCX、JavaBean,邏輯層采集步驟S41還包括在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以Web Service方式提供接入規(guī)范,數(shù)據(jù)源按照接入規(guī)范的提供Web Service接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。S42.數(shù)據(jù)層采集步驟,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。在一個實(shí)施例中,數(shù)據(jù)層采集步驟 S42包括在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、Excel、DBF、TXT格式的移交文件包,數(shù)據(jù)層采集步驟S42還包括與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)管道工具與0racle、MS SQL Server、DB2、Sybase、Access、Foxpro數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。圖2所示的數(shù)據(jù)采集方法的細(xì)節(jié)步驟與圖I所示的數(shù)據(jù)采集工具相對應(yīng),此處不再重復(fù)描述。本發(fā)明的數(shù)據(jù)采集工具及數(shù)據(jù)采集方法通過表示層、邏輯層、數(shù)據(jù)層三個層面,多種采集方式的組合運(yùn)用來達(dá)到從各種異構(gòu)數(shù)據(jù)源中采集數(shù)據(jù)的目的。
權(quán)利要求
1.一種數(shù)據(jù)采集工具,其特征在于,從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),該數(shù)據(jù)采集工具包括表示層工具,連接到各個數(shù)據(jù)源的頁面展現(xiàn)層,在各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層工具僅訪問數(shù)據(jù)源的頁面展現(xiàn)層;邏輯層工具,連接到各個數(shù)據(jù)源的邏輯層,數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口供邏輯層工具進(jìn)行數(shù)據(jù)交換;數(shù)據(jù)層工具,連接到各個數(shù)據(jù)源的數(shù)據(jù)層,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。
2.如權(quán)利要求I所述的數(shù)據(jù)采集工具,其特征在于,所述表示層工具包括數(shù)據(jù)抓取工具,數(shù)據(jù)抓取工具解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。
3.如權(quán)利要求2所述的數(shù)據(jù)采集工具,其特征在于,所述頁面展現(xiàn)層是展示的頁面是HTM L頁面。
4.如權(quán)利要求I所述的數(shù)據(jù)采集工具,其特征在于,所述邏輯層工具包括應(yīng)用程序接口工具和服務(wù)總線工具;所述應(yīng)用程序接口工具在數(shù)據(jù)源提供程序調(diào)用接口,應(yīng)用程序接口工具對所述程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),所述程序調(diào)用接口包括Web Part、DLL、OCX、 JavaBean ;所述服務(wù)總線工具在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以Web Service方式提供接入規(guī)范,所述數(shù)據(jù)源按照接入規(guī)范的提供WebService接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。
5.如權(quán)利要求4所述的數(shù)據(jù)采集工具,其特征在于,所述服務(wù)總線工具包括數(shù)據(jù)交換引擎,數(shù)據(jù)交換引擎提供透明的數(shù)據(jù)通信和透明的數(shù)據(jù)查找并采用統(tǒng)一的數(shù)據(jù)安全機(jī)制。
6.如權(quán)利要求I所述的數(shù)據(jù)采集工具,其特征在于,所述數(shù)據(jù)層工具包括數(shù)據(jù)導(dǎo)入工具和數(shù)據(jù)管道工具;所述數(shù)據(jù)導(dǎo)入工具在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入所述數(shù)據(jù)采集工具, 所述數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、Excel、DBF、TXT格式的移交文件包;所述數(shù)據(jù)管道工具與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,所述數(shù)據(jù)管道工具與Oracle、MS SQL Server, DB2、Sybase、Access、Foxpro數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。
7.一種數(shù)據(jù)采集方法,其特征在于,從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),該數(shù)據(jù)采集方法包括表示層采集步驟,從各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層采集步驟僅訪問數(shù)據(jù)源的頁面展現(xiàn)層;邏輯層采集步驟,在數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口,并通過數(shù)據(jù)接口進(jìn)行數(shù)據(jù)交換; 數(shù)據(jù)層采集步驟,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。
8.如權(quán)利要求7所述的數(shù)據(jù)采集方法,其特征在于,所述表示層采集步驟包括解析數(shù)據(jù)源的頁面展現(xiàn)層展示的頁面的源碼或者從數(shù)據(jù)源的頁面展現(xiàn)層抽取元數(shù)據(jù)。
9.如權(quán)利要求7所述的數(shù)據(jù)采集方法,其特征在于,所述邏輯層采集步驟包括在數(shù)據(jù)源提供程序調(diào)用接口,對程序調(diào)用接口進(jìn)行封裝和調(diào)用以獲取數(shù)據(jù),所述程序調(diào)用接口包括Web Part、DLL、0CX、JavaBean,所述邏輯層采集步驟還包括在數(shù)據(jù)采集工具和數(shù)據(jù)源之間建立數(shù)據(jù)總線,以Web Service方式提供接入規(guī)范,所述數(shù)據(jù)源按照接入規(guī)范的提供Web Service接口實(shí)現(xiàn)數(shù)據(jù)源與數(shù)據(jù)采集工具之間的數(shù)據(jù)交換。
10.如權(quán)利要求7所述的數(shù)據(jù)采集方法,其特征在于,所述數(shù)據(jù)層采集步驟包括在數(shù)據(jù)源產(chǎn)生移交文件包并將移交文件包導(dǎo)入數(shù)據(jù)采集工具,數(shù)據(jù)導(dǎo)入工具導(dǎo)入基于XML、Excel, DBF、TXT格式的移交文件包,所述數(shù)據(jù)層采集步驟還包括與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過數(shù)據(jù)源和數(shù)據(jù)采集工具的字段匹配將數(shù)據(jù)從數(shù)據(jù)源導(dǎo)入數(shù)據(jù)采集工具,所述數(shù)據(jù)管道工具與Oracle、MS SQL Server, DB2、Sybase、 Access、Foxpro數(shù)據(jù)庫建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)。
全文摘要
本發(fā)明揭示了一種數(shù)據(jù)采集工具,從數(shù)個異構(gòu)數(shù)據(jù)源采集數(shù)據(jù),包括表示層工具、邏輯層工具和數(shù)據(jù)層工具。表示層工具連接到各個數(shù)據(jù)源的頁面展現(xiàn)層,在各個數(shù)據(jù)源的頁面展現(xiàn)層進(jìn)行數(shù)據(jù)采集,表示層工具僅訪問數(shù)據(jù)源的頁面展現(xiàn)層。邏輯層工具連接到各個數(shù)據(jù)源的邏輯層,數(shù)據(jù)源的邏輯層提供數(shù)據(jù)接口供邏輯層工具進(jìn)行數(shù)據(jù)交換。數(shù)據(jù)層工具連接到各個數(shù)據(jù)源的數(shù)據(jù)層,在數(shù)據(jù)源產(chǎn)生移交文件包或者與數(shù)據(jù)源建立數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián),通過移交文件包或者數(shù)據(jù)結(jié)構(gòu)匹配關(guān)聯(lián)獲取數(shù)據(jù)。本發(fā)明還揭示了數(shù)據(jù)采集方法。該數(shù)據(jù)采集工具及數(shù)據(jù)采集方法通過表示層、邏輯層、數(shù)據(jù)層三個層面,多種采集方式的組合運(yùn)用來達(dá)到從各種異構(gòu)數(shù)據(jù)源中采集數(shù)據(jù)的目的。
文檔編號G06F17/30GK102609769SQ201110021458
公開日2012年7月25日 申請日期2011年1月19日 優(yōu)先權(quán)日2011年1月19日
發(fā)明者張志紅, 張曙華, 楊安榮, 路斌 申請人:上海中信信息發(fā)展股份有限公司