新四季網

基於OracleCDC技術實現的變更數據抽取方法

2023-05-22 06:05:41 3


專利名稱::基於OracleCDC技術實現的變更數據抽取方法
技術領域:
:本發明涉及一種基於OracleCDC技術實現的變更數據抽取方法。
背景技術:
:在構建數據倉庫的ETL過程中,變更數據的抽取是一個非常關鍵的環節.對變更數據抽取的解決方案,一般需要達到以下兩點要求1.準確性,能夠將業務表的變更數據按一定的頻率準確的取到數據倉庫中。2.性能,不能對業務資料庫、業務表造成太大的壓力,不能影響現有業務系統的性能。目前實現數據同步最常用的三種方式1.時間戳同步使用業務表中某一欄位做為判斷新舊數據的依據,該欄位可以是時間類型,也可以是int型。使用該種方式存在以下問題無法捕獲對時間戳以前數據的delete和update才喿作,在數據準確性上受到了一定的限制,而實際業務中delete和update的才喿作還比較普遍;要求業務系統的表必須有一個可以標識新舊數據的列,而某些表沒有設置這種列。2.全表掃描使用數據倉庫中的當前表與業務系統表進行對比,取得變化了的數據,使用全表掃描存在以下問題需要將業務系統中表全部轉輸,造成很高的網絡負載;需要對兩版本的表進行全表掃描,性能代價非常高;無法反映數據的歷史狀態,如無法捕捉庫存的歷史變化記錄。3.觸發器在要抽取的表上建立需要的觸發器,一般要建立插入、修改、刪除三個觸發器,每當源表中的數據發生變化,就被相應的觸發器將變化的數據寫入一個臨時表,抽取線程從臨時表中抽取數據,臨時表中抽取過的數據被標記或刪除。觸發器方式的優點是數據抽取的性能較高,缺點是要求業務表建立觸發器,對業務系統有一定的影響。
發明內容本發明的目的就是針對上述的不足,提供了一種基於OracleCDC技術實現的變更數據抽取方法。本發明提供的基於OracleCDC技術實現的變更數據抽取方法,包括如下步驟1)解析xml文件信息,獲取配置信息;這些信息包括原表,快照表,目的表,欄位等。用於後續程序中建表和發送目標等。2)利用酉己置4言息中username,tableDescriptions4言息,4吏用oracle中的dbms-cdc—publish來創建一個變更表,用於捕獲源表變更記錄;可以使用標準SQL語句來創建這一個存儲過程,通過這創建變更表,用來監控源表的變更,把源表中得每一次變更記錄到變更表中。3)利用dbms—cdc—publish創建訂閱用戶,且激活訂閱用戶;可以使用標準SQL語句來創建這一個存儲過程,訂閱用戶是用來訂閱變更變化的,當變更表中有數據變更信息後,訂閱用戶就能收到這個變更信息。4)通過dbms一cdc-publish創建一個訂閱窗口和訂閱視圖,以視圖的形式來獲取一個時間段的變更數據;可以使用標準SQL語句來創建這一個存儲過程,訂閱窗口和視圖表示這一個時間段內訂閱的變更表信息有哪些變化,並把這些變化數據通過程序提取出來。5)當獲取到變更數據以後,將變更數據轉化成一個DataObject對象;獲取資料庫數據信息,將每一行數據進行解析,並打包放入DataObject對象中。進入等待發送隊列中。6)將Do對象發送到目標服務,當目標服務處理完成返回結果後進入第7)步。7)數據傳送成功後刪除訂閱視圖與窗口,表示這一次變更數據抽取過程完畢;可以使用標準SQL語句來創建這一個存儲過程。刪除這一次訂閱視圖與窗口後。表示這一個時間段內的同步完成。實現上述的方法的裝置,包括一解析單元,用於解析xml配置文件信息,獲取配置信息;一變更表創建單元,用於利用配置信息中資料庫連接權限以及資料庫表單描述信息,使用oracle中的dbms—cdc—publish來創建一個變更表;一訂閱用戶創建單元,用於使用dbms-cdc—publish創建訂閱用戶,並且激活訂閱;一訂閱視圖創建單元,用於創建一個訂閱窗口和訂閱S見圖,以視圖的形式來獲取一個時間段的變更數據;一數據獲取單元,用於將變更數據轉化成一個DataObject對象;一傳送與判斷單元,用於將Do對象發送到目標服務;一刪除訂閱單元,用於在數據傳送成功後刪除訂閱-現圖與窗口。本發明具有如下優點1.無需編程,現有編程人員可以將時間花費在更有價值的項目上。公司可以利用遺留系統並跨所有支持的平臺整合數據,無需對現有環境進行更改。可以輕鬆地適應計算環境中未來的變更,以使您的投資能適應未來。2.高性能通信,支持高效的數據傳輸,包括大對象二進位(L0B)文件,如多々某體音頻和一見頻數據。3.確保信息直接在源和目標系統之間最有效、最快速的;洛徑中流動。圖l是本發明實施例的總流程圖;圖2是本發明實施例的循環處理數據子流程圖。具體實施例方式一種基於OracleCDC技術實現的變更數據抽取方法,具體來說是這樣的CDCSource作為現有技術直接面對用戶,提供一個完整的UI頁面,按照提示配置屬性,打包後成功部署到伺服器上。在UI頁面中,選擇CDCSource構件,可以通過界面連接屬性,直接添加配置資料庫地址,用戶名,密碼,源表名,快照表名,目的表名,以及所要監控變更的欄位列表等信息,這是容易實現的。如圖1所示,本方法開始於步驟101,解析xbean.xml文件信息,獲取配置信息;這些信息包括原表,快照表,目的表,欄位等。用於後續程序中建表和發送目標等。然後進入步驟102,獲取用戶handle,subhandle是ORACLE中訂閱ID,當一個源表被發布後,訂閱用戶創建訂閱時生成一個subhandle,用來記錄訂閱4言息。再進入步驟103,返回Number類型數據,如果返回失敗,則返回步驟102;如果成功,則進入下一步驟。步驟利用dbms—cdc—publish創建訂閱用戶,然後進入步驟105激活訂閱用戶;使用標準SQL語句來創建這一個存4諸過程。訂閱用戶是用來訂閱變更變化的。當變更表中有數據變更信息後,訂閱用戶就能收到這個變更信息。然後進入步驟1G6,循環處理數據子流程,流程結束。如圖2所示,循環處理子流程是這樣的首先開始於步驟201,創建訂閱用戶。然後進入步驟202通過dbms—cdc-publish創建一個訂閱一見圖,以視圖的形式來獲取一個時間段的變更數據;使用標準SQL語句來創建這一個存儲過程。訂閱窗口和視圖表示這一個時間^敬內訂閱的變更表信息有哪些變化,並把這些變化數據通過程序提取出來。再進入步驟203,獲取到變更數據,將變更數據轉化成一個DataObject對象;獲取資料庫數據信息,將每一行數據進行解析,並打包放入DataObject對象中。進入等待發送隊列中。然後進入步驟204,將Do對象發送到目標服務。進入步驟205,判斷目標服務返回值,如果失敗,進入步驟2051處理異常,然後返回步驟204;如果成功,進入下一步。最後進入步驟206和207,數據傳送成功後刪除訂閱視圖與窗口,表示這一次變更數據抽取過程完畢。使用標準SQL語句來創建這一個存儲過程。刪除這一次訂閱視圖與窗口後。表示這一個時間段內的同步完成。然後返回步驟201,開始下一循環。權利要求1.一種基於OracleCDC技術實現的變更數據抽取方法,其特徵在於包括如下步驟1)解析xml文件信息,獲取配置信息;2)利用配置信息中username,tableDescriptions信息,使用oracle中的dbms_cdc_publish來創建一個變更表,用於捕獲源表變更記錄;3)利用dbms_cdc_publish創建訂閱用戶,且激活訂閱用戶;4)通過dbms_cdc_publish創建一個訂閱窗口和訂閱視圖,以視圖的形式來獲取一個時間段的變更數據;5)當獲取到變更數據以後,將變更數據轉化成一個DataObject對象;6)將Do對象發送到目標服務,當目標服務處理完成返回結果後進入第7)步;7)數據傳送成功後刪除訂閱視圖與窗口,表示這一次變更數據抽取過程完畢。2.實現權利要求所述的方法的裝置,其特徵在於包括一解析單元,用於解析xml配置文件信息,獲取配置信息;一變更表創建單元,用於利用配置信息中資料庫連接權限以及資料庫表單描述信息,使用oracle中的dbms-cdc—publish來創建一個變更表;一訂閱用戶創建單元,用於使用dbms-cdc-publish創建訂閱用戶,並iU敫活訂閱;一訂閱:現圖創建單元,用於創建一個訂閱窗口和訂閱—見圖,以i見圖的形式來獲取一個時間段的變更數據;一數據獲取單元,用於將變更數據轉化成一個DataObject對象;一傳送與判斷單元,用於將Do對象發送到目標服務;一刪除訂閱單元,用於在數據傳送成功後刪除訂閱-現圖與窗口。全文摘要一種基於OracleCDC技術實現的變更數據抽取裝置,包括一解析單元,一變更表創建單元,一訂閱用戶創建單元,一訂閱視圖創建單元,一數據獲取單元,一傳送與判斷單元,一刪除訂閱單元,本發明無需編程,能高性能的通信,確保信息直接在源和目標之間最有效、最快速的路徑中流通。文檔編號G06F17/30GK101645072SQ20091001820公開日2010年2月10日申請日期2009年8月25日優先權日2009年8月25日發明者剛周,皮開元,琦舒,俊陳申請人:山東中創軟體商用中間件股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀