亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng)及方法

文檔序號:6581878閱讀:378來源:國知局
專利名稱:從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng)及方法
從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng)及方法
技術領域
本發(fā)明涉及一種數(shù)據(jù)抽取系統(tǒng)及方法,尤其涉及一種從源數(shù)據(jù)庫的一個源表到至 少一個目標數(shù)據(jù)庫的一個或多個目標表的數(shù)據(jù)抽取系統(tǒng)及方法,屬于數(shù)據(jù)庫技術領域。
背景技術
在現(xiàn)有的數(shù)據(jù)庫數(shù)據(jù)處理領域中,存在著一些基于 ETL(Extraction-Transform-Load,即抽取-轉換-加載)技術的數(shù)據(jù)抽取工具,例如 Ascential 公司的 Datastage、Informatica 公司的 Powercenter>NCR Teradata 公司的 ETL Automation等,這類應用工具均具備實現(xiàn)簡單數(shù)據(jù)轉換的功能,也能夠很好地處理極為特 殊的需求,但通用性問題一直是其主要的應用瓶頸。另外,它們昂貴的價格也是難以將其進 行廣泛普及的重要因素之一,特別是在面對一些簡單的并且無須經常更改處理的數(shù)據(jù)轉換 的情形下,更不值得使用者花費高價購買這類工具來實現(xiàn)上述的較簡單的需求。此外,值得注意的是ETL技術主要被用于創(chuàng)建并維護數(shù)據(jù)倉庫,而針對從源數(shù)據(jù) 庫的一個源表向一個或多個目標數(shù)據(jù)庫的一個或多個目標表進行數(shù)據(jù)抽取的應用場景,如 圖1所示,則必須為每個目標數(shù)據(jù)庫分別配置一次ETL應用來對從源數(shù)據(jù)庫抽取的源數(shù)據(jù) 進行中間轉換處理,這樣就使得整個處理過程中需要進行多次的數(shù)據(jù)轉換操作,因此實現(xiàn) 起來頗為復雜,并且繁瑣又耗時,從而會影響到數(shù)據(jù)處理的效率及系統(tǒng)的穩(wěn)定性。

發(fā)明內容有鑒于此,本發(fā)明的目的在于提供一種從一個源表到至少一個目標庫的表的數(shù)據(jù) 抽取系統(tǒng)及方法,以有效地解決現(xiàn)有技術中存在的從源數(shù)據(jù)庫的一個源表抽取數(shù)據(jù)到至少 一個目標數(shù)據(jù)庫的一個或多個目標表的操作過程復雜、繁瑣且耗時,從而將會影響到數(shù)據(jù) 處理效率及系統(tǒng)穩(wěn)定性的問題。為實現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術方案如下一種從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng),其包括讀取模塊,其用于根據(jù)需求從源數(shù)據(jù)庫的一個源表讀取所需的源數(shù)據(jù);中間轉換模塊,其用于將每次讀取的所述源數(shù)據(jù)分別對應于每一個目標數(shù)據(jù)庫的 目標表的目標數(shù)據(jù)格式進行多次轉換;以及寫入模塊,其用于將每次轉換后的目標數(shù)據(jù)寫入對應的目標數(shù)據(jù)庫;其中,所述中間轉換模塊包括封裝子模塊,其用于封裝所述源表的源數(shù)據(jù)對應于所述各目標數(shù)據(jù)庫目標表的目 標數(shù)據(jù)的轉換處理過程,以使所述中間轉換模塊的轉換處理次數(shù)為一次。優(yōu)選地,所述封裝子模塊為動態(tài)鏈接庫,所述動態(tài)鏈接庫包括源數(shù)據(jù)接口單元, 其用于參數(shù)化描述所述源表的源數(shù)據(jù)信息;目標數(shù)據(jù)接口單元,其用于參數(shù)化描述所述各 目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)信息;以及,解析單元,其用于調用所述源數(shù)據(jù)接口單元 和所述目標數(shù)據(jù)接口單元,以將每次讀取的源數(shù)據(jù)對應解析成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,所述目標數(shù)據(jù)結果中含有經過轉換處理后的所述各目標數(shù)據(jù)庫目標表對應的目 標數(shù)據(jù)及其相應的所述目標數(shù)據(jù)信息。優(yōu)選地,所述源數(shù)據(jù)信息的參數(shù)化描述內容至少包括所述源數(shù)據(jù)所屬的源數(shù)據(jù) 庫名、源表名、源數(shù)據(jù)記錄、以及每條源數(shù)據(jù)記錄的數(shù)據(jù)長度;以及,所述目標數(shù)據(jù)信息的參 數(shù)化描述內容至少包括所述目標數(shù)據(jù)庫名、目標表名、目標數(shù)據(jù)記錄、以及每條目標數(shù)據(jù) 記錄的數(shù)據(jù)長度。優(yōu)選地,所述目標數(shù)據(jù)結果集中還包括所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù) 記錄的數(shù)目。優(yōu)選地,所述數(shù)據(jù)抽取系統(tǒng)還包括設置于所述源數(shù)據(jù)庫和所述各目標數(shù)據(jù)庫之外 的中間存儲模塊,其用于存儲經過所述中間轉換模塊轉換后的所述各目標數(shù)據(jù)庫目標表對 應的目標數(shù)據(jù)的全部或者部分。一種從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取方法,將源數(shù)據(jù)庫的一個源表 的源數(shù)據(jù)與各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)格式的轉換處理過程封裝成封裝子模塊, 所述數(shù)據(jù)抽取方法包括如下步驟a、連接所述源數(shù)據(jù)庫;b、從所述源表讀取所需的源數(shù)據(jù),如果其首記錄非空則執(zhí)行步驟C,否則結束;C、判斷所述源數(shù)據(jù)的當前記錄是否已為空,如果非空則調用所述封裝子模塊將所 述源數(shù)據(jù)一次轉換處理成所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù),否則結束;d、如果轉換后的所述目標數(shù)據(jù)為空則執(zhí)行步驟e,否則將其分別寫入對應的所述 各目標數(shù)據(jù)庫的目標表;以及e、讀取所述源數(shù)據(jù)的下一條記錄,再重復執(zhí)行步驟C。優(yōu)選地,所述封裝子模塊為動態(tài)鏈接庫,所述動態(tài)鏈接庫根據(jù)其內設置的均已參 數(shù)化描述的所述源表的源數(shù)據(jù)信息與所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)信息,將每 次讀取的所述源數(shù)據(jù)對應解析成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,所述目標數(shù)據(jù)結果 中含有經過轉換處理后的所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)及其相應的所述目標 數(shù)據(jù)信息。優(yōu)選地,所述源數(shù)據(jù)信息的參數(shù)化描述內容至少包括所述源數(shù)據(jù)所屬的源數(shù)據(jù) 庫名、源表名、源數(shù)據(jù)記錄、以及每條源數(shù)據(jù)記錄的數(shù)據(jù)長度;以及,所述目標數(shù)據(jù)信息的參 數(shù)化描述內容至少包括所述目標數(shù)據(jù)庫名、目標表名、目標數(shù)據(jù)記錄、以及每條目標數(shù)據(jù) 記錄的數(shù)據(jù)長度。優(yōu)選地,所述目標數(shù)據(jù)結果集中還包括所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù) 記錄的數(shù)目。優(yōu)選地,所述數(shù)據(jù)抽取方法還包括步驟將經過所述中間轉換模塊轉換后的所述 各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)的全部或者部分存儲于中間存儲模塊,所述中間存儲 模塊設置于所述源數(shù)據(jù)庫和所述各目標數(shù)據(jù)庫之外。本發(fā)明的有益效果在于與現(xiàn)有的基于ETL技術的數(shù)據(jù)抽取、轉換處理相比,本發(fā) 明采用接口化和動態(tài)鏈接庫(DLL,Dynamic Link Lib)技術,成功地將從一個源數(shù)據(jù)庫到多 個目標數(shù)據(jù)庫的數(shù)據(jù)轉換處理過程進行了封裝,因此使用本發(fā)明所提供的系統(tǒng)及方法僅需 通過一次數(shù)據(jù)轉換即能夠同時生成到多個目標數(shù)據(jù)庫的數(shù)據(jù)結果集,從而極大地簡化了數(shù)據(jù)轉換的操作配置,提高了處理效率,并有利于促進系統(tǒng)的穩(wěn)定。同時,本發(fā)明所提供的系 統(tǒng)及方法還支持根據(jù)實際應用需求而將相應的數(shù)據(jù)轉換規(guī)則自由定制在動態(tài)鏈接庫中,因 此提高了系統(tǒng)的擴展性和通用性,使得數(shù)據(jù)抽取與轉換處理的設置與操作更加地靈活和方 便。

以下將結合附圖和實施例,對本發(fā)明的技術方案作進一步的詳細描述。其中圖1是現(xiàn)有技術中基于ETL技術的數(shù)據(jù)抽取系統(tǒng)的組成結構示意圖;圖2是本發(fā)明的數(shù)據(jù)抽取系統(tǒng)的一個較佳實施例的組成結構示意圖;圖3是本發(fā)明的數(shù)據(jù)抽取系統(tǒng)的另一個較佳實施例的組成結構示意圖;圖4是本發(fā)明的數(shù)據(jù)抽取系統(tǒng)的較佳實施例中的封裝子模塊的組成結構示意圖;圖5是本發(fā)明的數(shù)據(jù)抽取方法的較佳實施例的流程圖。
具體實施方式請參閱圖2,它是本發(fā)明的從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng)的 一個較佳實施例的組成結構示意圖。在圖2中,該數(shù)據(jù)抽取系統(tǒng)包括讀取模塊4、中間轉 換模塊2和寫入模塊5。其中,讀取模塊4用于從源數(shù)據(jù)庫的源表1讀取所需的源數(shù)據(jù);中 間轉換模塊2包括封裝子模塊21,在該封裝子模塊21中封裝了源數(shù)據(jù)庫的源表1的源數(shù)據(jù) 對應于各目標數(shù)據(jù)庫的目標表3的目標數(shù)據(jù)格式的轉換處理過程,這樣中間轉換模塊2的 相應數(shù)據(jù)轉換處理僅需一次即可;寫入模塊5用于將轉換后的數(shù)據(jù)寫入各目標數(shù)據(jù)庫的目 標表3。圖4揭示了通過動態(tài)鏈接庫實現(xiàn)的封裝子模塊21的組成結構,其中的源數(shù)據(jù)接 口單元211用于參數(shù)化描述源數(shù)據(jù)庫的源表1的源數(shù)據(jù)信息,這樣的信息內容包括讀取的 源數(shù)據(jù)所屬的源數(shù)據(jù)庫名、源表名、源數(shù)據(jù)記錄以及每條源數(shù)據(jù)記錄的數(shù)據(jù)長度;目標數(shù)據(jù) 接口單元212用于參數(shù)化描述各目標數(shù)據(jù)庫的目標表3的目標數(shù)據(jù)信息,這樣的信息內容 包括目標數(shù)據(jù)庫名、目標表名、目標數(shù)據(jù)記錄以及每條目標數(shù)據(jù)記錄的數(shù)據(jù)長度;解析單元 213用于調用源數(shù)據(jù)接口單元211和目標數(shù)據(jù)接口單元212,從而能夠將每次讀取的源數(shù)據(jù) 對應解析成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,該目標數(shù)據(jù)結果中含有經過轉換處理后 的各目標數(shù)據(jù)庫的目標表3對應的目標數(shù)據(jù)及其相應的目標數(shù)據(jù)信息,在目標數(shù)據(jù)結果集 中還包括各目標數(shù)據(jù)庫的目標表3對應的目標數(shù)據(jù)記錄的數(shù)目。在一個較佳的實施例中,可以采用類似于C語言的偽代碼實現(xiàn)具有上述的目標數(shù) 據(jù)結果與目標數(shù)據(jù)結果集/*目標數(shù)據(jù)結果的結構*/typedef struct {char destDbNm[15+l] ;/* 目標數(shù)據(jù)庫名 */char destTblNm[40+l] ;/* 目標表名 */INT32 XbResRecLen ;/*每條目標數(shù)據(jù)記錄的數(shù)據(jù)長度*/char recData[REC_MAX_LEN+1] ;/* 轉換后的目標數(shù)據(jù)記錄 */}xb_res_t ;
/*目標數(shù)據(jù)結果集的結構*/typedef struct{INT32 resNo ;/*目標數(shù)據(jù)結果集中目標數(shù)據(jù)記錄的數(shù)目*/xb_res_t xbRes [XBRES_MAX_N0] ;/* 目標數(shù)據(jù)結果 */} xb_res_con_t ;采用以上直接描述的或者其他的與之相類似的設置,就可以根據(jù)實際應用需求而 通過動態(tài)鏈接庫技術和接口化技術封裝源數(shù)據(jù)到多種類型的目標數(shù)據(jù)格式的轉換處理過 程,因此最終僅需調用封裝子模塊21進行一次數(shù)據(jù)轉換就能同時生成預設的各目標數(shù)據(jù) 庫對應的目標數(shù)據(jù),從而極大地簡化了數(shù)據(jù)轉換的操作配置,提高了處理效率,并有利于促 進系統(tǒng)的穩(wěn)定。此外,當在某些情形下出現(xiàn)應用需求發(fā)生改變時,也僅需修改其中的動態(tài)鏈 接庫而不必改造系統(tǒng)的其他部分,這樣就可以靈活地應對需求的變更,顯著提高整個系統(tǒng) 的擴展性和通用性。再請參閱圖3,它是本發(fā)明的從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng) 的另一個較佳實施例的組成結構示意圖。它與上述圖2所示出的較佳實施例的組成結構基 本類似,二者的區(qū)別之處在于此時的數(shù)據(jù)抽取系統(tǒng)還包括設置于中間轉換模塊2與寫入 模塊5之間的中間存儲模塊6,以便在將轉換后的目標數(shù)據(jù)寫入對應的目標數(shù)據(jù)庫的目標 表3之前先將這些目標數(shù)據(jù)暫存于該存儲模塊6中供某些應用服務調用。圖5是本發(fā)明的從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取方法的一個較佳 實施例的流程圖。請參照圖5,下面將詳細描述該數(shù)據(jù)抽取方法的處理步驟首先,根據(jù)需求在步驟Sll中,對一個需要從中獲取源數(shù)據(jù)的源數(shù)據(jù)庫進行連接 操作,其方式可以采用預先將該源數(shù)據(jù)庫名、所需源數(shù)據(jù)所屬的源表名、各目標數(shù)據(jù)庫名、 轉換后的目標數(shù)據(jù)所屬的目標數(shù)據(jù)庫的目標表名、各數(shù)據(jù)庫的物理連接路徑以及運行參數(shù) 配置等信息內容寫入配置文件中,再通過讀入此類配置文件來實現(xiàn)上述連接操作。而且,根 據(jù)實際需求還可以更進一步地將需要處理的若干個源數(shù)據(jù)庫的參數(shù)信息都寫入上述的配 置文件中,以便在采用本發(fā)明方法將一個源數(shù)據(jù)庫的源表數(shù)據(jù)全部處理完畢之后,隨后再 依次連接并處理下一個源數(shù)據(jù)庫。然后,進入步驟S12,從源數(shù)據(jù)庫的源表讀取所需的源數(shù)據(jù)的首記錄;在步驟S13中,判斷在上一個步驟S12中得到的源數(shù)據(jù)的首記錄是否為空,如果其 非空,則執(zhí)行步驟S14;否則,表明所需的源數(shù)據(jù)目前還不存在或者尚未被更新,因此即無 進一步操作的必要,直接結束。隨后,在步驟S14中,判斷所需的源數(shù)據(jù)的當前記錄是否已經為空,如果其非空, 則執(zhí)行步驟S15進行此次源數(shù)據(jù)的數(shù)據(jù)轉換處理;否則,表明所需的源數(shù)據(jù)目前已經全部 處理完畢,因此即無進一步操作的必要,直接結束。在步驟S15中,調用封裝子模塊來進行數(shù)據(jù)轉換處理,這樣的封裝子模塊是預先 已經將源表的源數(shù)據(jù)與各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)格式的轉換處理過程進行封 裝處理,具體可以采用動態(tài)鏈接庫的方式。而且,在此類動態(tài)鏈接庫中預先已對源表的源數(shù) 據(jù)信息與各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)信息進行了參數(shù)化描述,然后即可利用它們 對輸入的數(shù)據(jù)進行解析、轉換處理后再予以輸出,具體的參數(shù)化描述內容如前所述,所以在 此不再贅述。
在步驟S16中,通過上述的數(shù)據(jù)轉換處理后,將本次的源數(shù)據(jù)一次性地同時解析 成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,該目標數(shù)據(jù)結果中含有經過轉換處理后的各目標 數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)及其相應的目標數(shù)據(jù)信息,在目標數(shù)據(jù)結果集中還包括各目 標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)記錄的數(shù)目。隨后,進入步驟S17,對于獲取的目標數(shù)據(jù)結果集,首先根據(jù)其內記載的目標數(shù)據(jù) 記錄的數(shù)目判斷該目標數(shù)據(jù)結果集是否為空,如果是空,則進入步驟S19 ;否則,進入步驟 S18。在步驟S18中,根據(jù)獲取的目標數(shù)據(jù)結果集內目標數(shù)據(jù)結果中的記載信息,將其 中的各目標數(shù)據(jù)分別寫入其對應的各目標數(shù)據(jù)庫的目標表中,再將本次轉換后的目標數(shù)據(jù) 全部寫入處理完畢之后,進入步驟S19。在步驟S19中,讀取源數(shù)據(jù)的下一條記錄,然后重新進入步驟S14。在本發(fā)明方法的另一個較佳實施例中,還可以根據(jù)實際需要增加一個步驟即,將 經過中間轉換模塊轉換后的各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)全部或者部分存儲于中 間存儲模塊,這樣的中間存儲模塊并非是設于源數(shù)據(jù)庫和各目標數(shù)據(jù)庫的內部,而是可以 設于內置或者外置的計算機物理儲存裝置(如內存、閃存等),其具體形式也可以采用存于 計算機物理空間上的文件形式,而其存儲生命周期可以是暫時的(如幾十秒、幾分鐘或幾 十分鐘等),當然也可以是較長的時間(如幾小時、甚至幾天或幾周等),這樣就可以非常迅 速或者更為方便地將所獲取的目標數(shù)據(jù)中的某些關鍵的或敏感數(shù)據(jù)直接提供給某些應用 服務使用,從而避免了它們再從目標數(shù)據(jù)庫重復搜索、提取這些數(shù)據(jù)的過程,因此有利于提 高應用服務的處理效率、減輕相應系統(tǒng)(如數(shù)據(jù)庫服務器)的負擔并提高其穩(wěn)定性。綜上所述,與現(xiàn)有的基于ETL技術的數(shù)據(jù)抽取、轉換處理相比,本發(fā)明所提供的系 統(tǒng)及方法能夠極大地簡化數(shù)據(jù)轉換的操作配置,提高處理效率,并有利于提高系統(tǒng)的穩(wěn)定 性、擴展性與通用性,使得數(shù)據(jù)抽取與轉換處理操作更加靈活和方便。因此,本發(fā)明所提供 的系統(tǒng)及方法特別適用于銀行、金融、證券、電子商務等具有較大業(yè)務數(shù)據(jù)轉換處理量的行 業(yè)領域。以上列舉了若干具體實施例來詳細闡明本發(fā)明的一種從一個源表到至少一個目 標庫的表的數(shù)據(jù)抽取系統(tǒng)及方法,這些個例僅供說明本發(fā)明的原理及其實施方式之用,而 非對本發(fā)明的限制,在不脫離本發(fā)明的精神和范圍的情況下,本領域的普通技術人員還可 以作出各種變形和改進,因此所有等同的技術方案均應屬于本發(fā)明的范疇并為本發(fā)明的各 項權利要求所限定。
權利要求
1.一種從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng),其包括讀取模塊,其用于根據(jù)需求從源數(shù)據(jù)庫的一個源表讀取所需的源數(shù)據(jù);中間轉換模塊,其用于將每次讀取的所述源數(shù)據(jù)分別對應于每一個目標數(shù)據(jù)庫的目標 表的目標數(shù)據(jù)格式進行多次轉換;以及寫入模塊,其用于將每次轉換后的目標數(shù)據(jù)寫入對應的目標數(shù)據(jù)庫的目標表;其特征在于,所述中間轉換模塊包括封裝子模塊,其用于封裝所述源表的源數(shù)據(jù)對應于所述各目標數(shù)據(jù)庫目標表的目標數(shù) 據(jù)的轉換處理過程,以使所述中間轉換模塊的轉換處理次數(shù)為一次。
2.根據(jù)權利要求1所述的數(shù)據(jù)抽取系統(tǒng),其特征在于,所述封裝子模塊為動態(tài)鏈接庫, 所述動態(tài)鏈接庫包括源數(shù)據(jù)接口單元,其用于參數(shù)化描述所述源表的源數(shù)據(jù)信息;目標數(shù)據(jù)接口單元,其用于參數(shù)化描述所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)信 息;以及解析單元,其用于調用所述源數(shù)據(jù)接口單元和所述目標數(shù)據(jù)接口單元,以將每次讀取 的源數(shù)據(jù)對應解析成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,所述目標數(shù)據(jù)結果中含有經過 轉換處理后的所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)及其相應的所述目標數(shù)據(jù)信息。
3.根據(jù)權利要求2所述的數(shù)據(jù)抽取系統(tǒng),其特征在于,所述源數(shù)據(jù)信息的參數(shù)化描述 內容至少包括所述源數(shù)據(jù)所屬的源數(shù)據(jù)庫名、源表名、源數(shù)據(jù)記錄、以及每條源數(shù)據(jù)記錄 的數(shù)據(jù)長度;以及所述目標數(shù)據(jù)信息的參數(shù)化描述內容至少包括所述目標數(shù)據(jù)庫名、目標表名、目標數(shù) 據(jù)記錄、以及每條目標數(shù)據(jù)記錄的數(shù)據(jù)長度。
4.根據(jù)權利要求2所述的數(shù)據(jù)抽取系統(tǒng),其特征在于,所述目標數(shù)據(jù)結果集中還包括 所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)記錄的數(shù)目。
5.根據(jù)權利要求1-4中任一項所述的數(shù)據(jù)抽取系統(tǒng),其特征在于還包括設置于所述源 數(shù)據(jù)庫和所述各目標數(shù)據(jù)庫之外的中間存儲模塊,其用于存儲經過所述中間轉換模塊轉換 后的所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)的全部或者部分。
6.一種從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取方法,其特征在于,將源數(shù)據(jù)庫 的一個源表的源數(shù)據(jù)與各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)格式的轉換處理過程封裝成 封裝子模塊,所述數(shù)據(jù)抽取方法包括如下步驟a、連接所述源數(shù)據(jù)庫;b、從所述源表讀取所需的源數(shù)據(jù),如果其首記錄非空則執(zhí)行步驟c,否則結束;C、判斷所述源數(shù)據(jù)的當前記錄是否已為空,如果非空則調用所述封裝子模塊將所述源 數(shù)據(jù)一次轉換處理成所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù),否則結束;d、如果轉換后的所述目標數(shù)據(jù)為空則執(zhí)行步驟e,否則將其分別寫入對應的所述各目 標數(shù)據(jù)庫的目標表;以及e、讀取所述源數(shù)據(jù)的下一條記錄,再重復執(zhí)行步驟C。
7.根據(jù)權利要求6所述的數(shù)據(jù)抽取方法,其特征在于,所述封裝子模塊為動態(tài)鏈接庫, 所述動態(tài)鏈接庫根據(jù)其內設置的均已參數(shù)化描述的所述源表的源數(shù)據(jù)信息與所述各目標 數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)信息,將每次讀取的所述源數(shù)據(jù)對應解析成包括目標數(shù)據(jù)結果的目標數(shù)據(jù)結果集,所述目標數(shù)據(jù)結果中含有經過轉換處理后的所述各目標數(shù)據(jù)庫目標 表對應的目標數(shù)據(jù)及其相應的所述目標數(shù)據(jù)信息。
8.根據(jù)權利要求7所述的數(shù)據(jù)抽取方法,其特征在于,所述源數(shù)據(jù)信息的參數(shù)化描述 內容至少包括所述源數(shù)據(jù)所屬的源數(shù)據(jù)庫名、源表名、源數(shù)據(jù)記錄、以及每條源數(shù)據(jù)記錄 的數(shù)據(jù)長度;以及所述目標數(shù)據(jù)信息的參數(shù)化描述內容至少包括所述目標數(shù)據(jù)庫名、目標表名、目標數(shù) 據(jù)記錄、以及每條目標數(shù)據(jù)記錄的數(shù)據(jù)長度。
9.根據(jù)權利要求7所述的數(shù)據(jù)抽取方法,其特征在于,所述目標數(shù)據(jù)結果集中還包括 所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)記錄的數(shù)目。
10.根據(jù)權利要求6-9任一項所述的數(shù)據(jù)抽取方法,其特征在于還包括步驟將經過所 述中間轉換模塊轉換后的所述各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù)的全部或者部分存儲 于中間存儲模塊,所述中間存儲模塊設置于所述源數(shù)據(jù)庫和所述各目標數(shù)據(jù)庫之外。
全文摘要
本發(fā)明公開了一種從一個源表到至少一個目標庫的表的數(shù)據(jù)抽取系統(tǒng)及方法,所述系統(tǒng)包括讀取模塊、中間轉換模塊以及寫入模塊,所述中間轉換模塊包括用于封裝源表的源數(shù)據(jù)對應于各目標數(shù)據(jù)庫目標表的目標數(shù)據(jù)格式的轉換處理過程的封裝子模塊,以使中間轉換模塊的轉換處理次數(shù)為一次。所述數(shù)據(jù)抽取方法包括步驟根據(jù)需求連接一個源表讀取源數(shù)據(jù);通過封裝子模塊將所述源數(shù)據(jù)一次轉換處理成各目標數(shù)據(jù)庫目標表對應的目標數(shù)據(jù);以及將轉換后的目標數(shù)據(jù)分別寫入其對應的目標數(shù)據(jù)庫目標表。本發(fā)明極大地簡化了數(shù)據(jù)轉換的操作配置,提高了處理效率,本發(fā)明同時還能有效提高整個系統(tǒng)的穩(wěn)定性、擴展性和通用性,使得數(shù)據(jù)抽取與轉換處理操作更加靈活和方便。
文檔編號G06F17/30GK102004744SQ20091019502
公開日2011年4月6日 申請日期2009年9月2日 優(yōu)先權日2009年9月2日
發(fā)明者楊燕明, 陳林, 馬東良 申請人:中國銀聯(lián)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1