湯蕾蕾
摘 要 在大量業務型的數據倉庫中,存在海量數據比對碰撞的問題,如何通過海量數據的比對碰撞,發現目標結構是當前數據倉庫中面臨的一個嚴峻的現實問題。在許多系統中,通過消息隊列的形式進行比對碰撞的實現。在本文中,我們通過ETL的方式在抽取的同時結合XML的配置完成比對模塊的直接運行。通過ETL的同時進行比對,達到數據比對的最大效率,在進庫的同時就進行數據的比對碰撞,及時的獲取比對結果信息。
關鍵詞 ETL;數據比對;XML;數據抽取
中圖分類號:TP242 文獻標識碼:A 文章編號:1671-7597(2014)10-0068-02
1 WEB技術設計
數據比對WEB部分包含兩塊功能,
1)提供界面對需要參與在線輯控的數據源庫和目標庫已經需要相關的條件進行設置。
2)對ETL任務的運行時間參數和啟、停進行設置。
其中在線輯控的對需要進行輯控的數據源庫和目標庫進行設置將仍然采用XML配置文件方式,如圖1。
說明:
basesql字段,為比對結果表中固化的字段,如比對的結果是人的信息,那么必須有身份證、姓名、性別等,如果是是車輛的話必須有車牌號碼,車輛名稱等信息。對于產生這條比對結果信息的源庫和目標庫的信息ID也將保存。
resultsql字段為比對結果表中保存的希望關注源庫中的一些字段的信息,將會保存到比對結果表的一個clob字段中。
WEB方面負責提供界面供用戶選擇需要進行關注的庫和相關的字段,保存后生成對應的sql語句形成一個在線輯控任務。用戶可以對這個在線輯控任務進行啟動、停止設置。
對ETL抽取任務的控制:
ETL的抽取任務有數據組在設計、測試完成后,在數據庫中設置需要定時執行的任務屬性,其中設置定時執行的參數是保存在一張表中,這張表和字段必須固化下來。
WEB端提供UI接口供用戶管理ETL任務的啟動、停止,以及相關的任務執行時間等參數的設定,并且提供任務的上次運行時間等信息。
對ETL抽取和比對過程中日志控制:
ETL的抽取和比對過程需要產生日志,替代現在后臺采用文件方式保存的日志。
其中ETL日志表需要數據組固化表名和字段名;
比對過程的日志需要數據組固化另外一張表名和字段名;
整體,采用ETL抽取完成后直接執行比對操作,將替代現在后臺中執行的定時調度任務,
但定時調度對某些操作任然需要,如案件串并中的查詢,所以這里考慮仍然保留這個功能。
2 ETL技術設計
此次ETL架構主要為了滿足動態數據驗證,實現數據比對功能,由前臺WEB頁面控制調度平率等相關要求而設計。(圖2)
1)判斷是否抽取。
設置標志位確認數據流狀態,當數據流處于運行狀態,那么數據流將停止,等待下次運行時間后再次運行。
2)加載抽取數據。
更具時間戳判斷,將需要抽取的數據加載到TEMP表中,由于使用TEMP表將會大大提高抽取效率。等加載完后,數據抽取的事情基本上已經完成,此時已經和源數據庫庫沒有任何關系了。
3)數據量計算。
計算當前批次抽取數據總量、更新數據總量、數據插入總量、數據刪除總量。由此來證明數據抽取情況。
4)數據驗證。
更具前臺頁面設置對應的參數進行數據驗證,此數據驗證是逐一驗證的方式。所以效率并不是很高。
5)數據轉換。
更具業務要求,將數據轉換成系統的數據。主要是字典表轉換。
6)數據加載。
將抽取完成的數據加載到數據倉庫中。
7)生產新數據源。
更具具體業務要求,插入到集合數據庫中。
8)判斷比對任務。
更具比對任務表判斷是否有需要比對的任務。
9)獲取比對項。
循環獲取比對項。
10)輸出結果。
將比對結果輸入到比對結果表中。
11)第三方擴展接口。
開發第三方組建,例如短信接口。
3 詳細設計
根據上面的設計,我們在此主要進行詳細方面的規劃設計。
WEB方面:
1)提供UI列表界面,列出當前所有的定義的在線輯控任務。用戶可以在這個界面對在線輯控任務進行啟動、停止控制。
2)提供UI編輯界面,根據配置文件的定義,提供選擇兩個庫進行比對的設置,并根據設置提供兩個庫中哪些字段進行比對的設置。在用戶保存后將生成SQL語句保存成一個在線輯控的任務。用戶可以在后期對這個任務進行修改,修改的內容主要是比對的設置。默認對于新建立的在線輯控任務是設置為活動狀態。
3)提供UI列表界面,列出所有定義的ETL抽取任務。用戶可以在這個界面對ETL抽取任務進行啟動、停止控制。
4)提供UI編輯界面,編輯ETL抽取任務的時間定義。
5)另外針對某些操作如案件串并中的案件查詢仍然需要定時去執行查詢工作,所以這里將實現一個獨立運行的服務,已jar 包和腳本配合的形式運行在后臺。定時執行任務。
6)需要固化的表:
比對信息結果表和相關關聯信息字段的保存形式;
ETL抽取任務表和相關控制字段的含義;
ETL抽取日志表;
ETL比對日志表。
4 總結
本文通過這種ETL結合WEB端XML的配置方式,將海量數據在線比對的功能和數據抽取集成在一起,通過前臺靈活地信息配置,將ETL和比對抽取配置結合在一起,實現數據抽取時靈活地數據碰撞和數據比對的功能。大大提升了數據比對的效率和數據比對的靈活度。
參考文獻
[1]Valiant L G.A bridging model for parallel computation[J].Communications of the ACM,1997,33(8):103-111.
[2]盛憲鋒,孫健英,焦文彬.基于數據生命周期管理的ARP系統優化設計[J].計算機工程與科學,2011.endprint
摘 要 在大量業務型的數據倉庫中,存在海量數據比對碰撞的問題,如何通過海量數據的比對碰撞,發現目標結構是當前數據倉庫中面臨的一個嚴峻的現實問題。在許多系統中,通過消息隊列的形式進行比對碰撞的實現。在本文中,我們通過ETL的方式在抽取的同時結合XML的配置完成比對模塊的直接運行。通過ETL的同時進行比對,達到數據比對的最大效率,在進庫的同時就進行數據的比對碰撞,及時的獲取比對結果信息。
關鍵詞 ETL;數據比對;XML;數據抽取
中圖分類號:TP242 文獻標識碼:A 文章編號:1671-7597(2014)10-0068-02
1 WEB技術設計
數據比對WEB部分包含兩塊功能,
1)提供界面對需要參與在線輯控的數據源庫和目標庫已經需要相關的條件進行設置。
2)對ETL任務的運行時間參數和啟、停進行設置。
其中在線輯控的對需要進行輯控的數據源庫和目標庫進行設置將仍然采用XML配置文件方式,如圖1。
說明:
basesql字段,為比對結果表中固化的字段,如比對的結果是人的信息,那么必須有身份證、姓名、性別等,如果是是車輛的話必須有車牌號碼,車輛名稱等信息。對于產生這條比對結果信息的源庫和目標庫的信息ID也將保存。
resultsql字段為比對結果表中保存的希望關注源庫中的一些字段的信息,將會保存到比對結果表的一個clob字段中。
WEB方面負責提供界面供用戶選擇需要進行關注的庫和相關的字段,保存后生成對應的sql語句形成一個在線輯控任務。用戶可以對這個在線輯控任務進行啟動、停止設置。
對ETL抽取任務的控制:
ETL的抽取任務有數據組在設計、測試完成后,在數據庫中設置需要定時執行的任務屬性,其中設置定時執行的參數是保存在一張表中,這張表和字段必須固化下來。
WEB端提供UI接口供用戶管理ETL任務的啟動、停止,以及相關的任務執行時間等參數的設定,并且提供任務的上次運行時間等信息。
對ETL抽取和比對過程中日志控制:
ETL的抽取和比對過程需要產生日志,替代現在后臺采用文件方式保存的日志。
其中ETL日志表需要數據組固化表名和字段名;
比對過程的日志需要數據組固化另外一張表名和字段名;
整體,采用ETL抽取完成后直接執行比對操作,將替代現在后臺中執行的定時調度任務,
但定時調度對某些操作任然需要,如案件串并中的查詢,所以這里考慮仍然保留這個功能。
2 ETL技術設計
此次ETL架構主要為了滿足動態數據驗證,實現數據比對功能,由前臺WEB頁面控制調度平率等相關要求而設計。(圖2)
1)判斷是否抽取。
設置標志位確認數據流狀態,當數據流處于運行狀態,那么數據流將停止,等待下次運行時間后再次運行。
2)加載抽取數據。
更具時間戳判斷,將需要抽取的數據加載到TEMP表中,由于使用TEMP表將會大大提高抽取效率。等加載完后,數據抽取的事情基本上已經完成,此時已經和源數據庫庫沒有任何關系了。
3)數據量計算。
計算當前批次抽取數據總量、更新數據總量、數據插入總量、數據刪除總量。由此來證明數據抽取情況。
4)數據驗證。
更具前臺頁面設置對應的參數進行數據驗證,此數據驗證是逐一驗證的方式。所以效率并不是很高。
5)數據轉換。
更具業務要求,將數據轉換成系統的數據。主要是字典表轉換。
6)數據加載。
將抽取完成的數據加載到數據倉庫中。
7)生產新數據源。
更具具體業務要求,插入到集合數據庫中。
8)判斷比對任務。
更具比對任務表判斷是否有需要比對的任務。
9)獲取比對項。
循環獲取比對項。
10)輸出結果。
將比對結果輸入到比對結果表中。
11)第三方擴展接口。
開發第三方組建,例如短信接口。
3 詳細設計
根據上面的設計,我們在此主要進行詳細方面的規劃設計。
WEB方面:
1)提供UI列表界面,列出當前所有的定義的在線輯控任務。用戶可以在這個界面對在線輯控任務進行啟動、停止控制。
2)提供UI編輯界面,根據配置文件的定義,提供選擇兩個庫進行比對的設置,并根據設置提供兩個庫中哪些字段進行比對的設置。在用戶保存后將生成SQL語句保存成一個在線輯控的任務。用戶可以在后期對這個任務進行修改,修改的內容主要是比對的設置。默認對于新建立的在線輯控任務是設置為活動狀態。
3)提供UI列表界面,列出所有定義的ETL抽取任務。用戶可以在這個界面對ETL抽取任務進行啟動、停止控制。
4)提供UI編輯界面,編輯ETL抽取任務的時間定義。
5)另外針對某些操作如案件串并中的案件查詢仍然需要定時去執行查詢工作,所以這里將實現一個獨立運行的服務,已jar 包和腳本配合的形式運行在后臺。定時執行任務。
6)需要固化的表:
比對信息結果表和相關關聯信息字段的保存形式;
ETL抽取任務表和相關控制字段的含義;
ETL抽取日志表;
ETL比對日志表。
4 總結
本文通過這種ETL結合WEB端XML的配置方式,將海量數據在線比對的功能和數據抽取集成在一起,通過前臺靈活地信息配置,將ETL和比對抽取配置結合在一起,實現數據抽取時靈活地數據碰撞和數據比對的功能。大大提升了數據比對的效率和數據比對的靈活度。
參考文獻
[1]Valiant L G.A bridging model for parallel computation[J].Communications of the ACM,1997,33(8):103-111.
[2]盛憲鋒,孫健英,焦文彬.基于數據生命周期管理的ARP系統優化設計[J].計算機工程與科學,2011.endprint
摘 要 在大量業務型的數據倉庫中,存在海量數據比對碰撞的問題,如何通過海量數據的比對碰撞,發現目標結構是當前數據倉庫中面臨的一個嚴峻的現實問題。在許多系統中,通過消息隊列的形式進行比對碰撞的實現。在本文中,我們通過ETL的方式在抽取的同時結合XML的配置完成比對模塊的直接運行。通過ETL的同時進行比對,達到數據比對的最大效率,在進庫的同時就進行數據的比對碰撞,及時的獲取比對結果信息。
關鍵詞 ETL;數據比對;XML;數據抽取
中圖分類號:TP242 文獻標識碼:A 文章編號:1671-7597(2014)10-0068-02
1 WEB技術設計
數據比對WEB部分包含兩塊功能,
1)提供界面對需要參與在線輯控的數據源庫和目標庫已經需要相關的條件進行設置。
2)對ETL任務的運行時間參數和啟、停進行設置。
其中在線輯控的對需要進行輯控的數據源庫和目標庫進行設置將仍然采用XML配置文件方式,如圖1。
說明:
basesql字段,為比對結果表中固化的字段,如比對的結果是人的信息,那么必須有身份證、姓名、性別等,如果是是車輛的話必須有車牌號碼,車輛名稱等信息。對于產生這條比對結果信息的源庫和目標庫的信息ID也將保存。
resultsql字段為比對結果表中保存的希望關注源庫中的一些字段的信息,將會保存到比對結果表的一個clob字段中。
WEB方面負責提供界面供用戶選擇需要進行關注的庫和相關的字段,保存后生成對應的sql語句形成一個在線輯控任務。用戶可以對這個在線輯控任務進行啟動、停止設置。
對ETL抽取任務的控制:
ETL的抽取任務有數據組在設計、測試完成后,在數據庫中設置需要定時執行的任務屬性,其中設置定時執行的參數是保存在一張表中,這張表和字段必須固化下來。
WEB端提供UI接口供用戶管理ETL任務的啟動、停止,以及相關的任務執行時間等參數的設定,并且提供任務的上次運行時間等信息。
對ETL抽取和比對過程中日志控制:
ETL的抽取和比對過程需要產生日志,替代現在后臺采用文件方式保存的日志。
其中ETL日志表需要數據組固化表名和字段名;
比對過程的日志需要數據組固化另外一張表名和字段名;
整體,采用ETL抽取完成后直接執行比對操作,將替代現在后臺中執行的定時調度任務,
但定時調度對某些操作任然需要,如案件串并中的查詢,所以這里考慮仍然保留這個功能。
2 ETL技術設計
此次ETL架構主要為了滿足動態數據驗證,實現數據比對功能,由前臺WEB頁面控制調度平率等相關要求而設計。(圖2)
1)判斷是否抽取。
設置標志位確認數據流狀態,當數據流處于運行狀態,那么數據流將停止,等待下次運行時間后再次運行。
2)加載抽取數據。
更具時間戳判斷,將需要抽取的數據加載到TEMP表中,由于使用TEMP表將會大大提高抽取效率。等加載完后,數據抽取的事情基本上已經完成,此時已經和源數據庫庫沒有任何關系了。
3)數據量計算。
計算當前批次抽取數據總量、更新數據總量、數據插入總量、數據刪除總量。由此來證明數據抽取情況。
4)數據驗證。
更具前臺頁面設置對應的參數進行數據驗證,此數據驗證是逐一驗證的方式。所以效率并不是很高。
5)數據轉換。
更具業務要求,將數據轉換成系統的數據。主要是字典表轉換。
6)數據加載。
將抽取完成的數據加載到數據倉庫中。
7)生產新數據源。
更具具體業務要求,插入到集合數據庫中。
8)判斷比對任務。
更具比對任務表判斷是否有需要比對的任務。
9)獲取比對項。
循環獲取比對項。
10)輸出結果。
將比對結果輸入到比對結果表中。
11)第三方擴展接口。
開發第三方組建,例如短信接口。
3 詳細設計
根據上面的設計,我們在此主要進行詳細方面的規劃設計。
WEB方面:
1)提供UI列表界面,列出當前所有的定義的在線輯控任務。用戶可以在這個界面對在線輯控任務進行啟動、停止控制。
2)提供UI編輯界面,根據配置文件的定義,提供選擇兩個庫進行比對的設置,并根據設置提供兩個庫中哪些字段進行比對的設置。在用戶保存后將生成SQL語句保存成一個在線輯控的任務。用戶可以在后期對這個任務進行修改,修改的內容主要是比對的設置。默認對于新建立的在線輯控任務是設置為活動狀態。
3)提供UI列表界面,列出所有定義的ETL抽取任務。用戶可以在這個界面對ETL抽取任務進行啟動、停止控制。
4)提供UI編輯界面,編輯ETL抽取任務的時間定義。
5)另外針對某些操作如案件串并中的案件查詢仍然需要定時去執行查詢工作,所以這里將實現一個獨立運行的服務,已jar 包和腳本配合的形式運行在后臺。定時執行任務。
6)需要固化的表:
比對信息結果表和相關關聯信息字段的保存形式;
ETL抽取任務表和相關控制字段的含義;
ETL抽取日志表;
ETL比對日志表。
4 總結
本文通過這種ETL結合WEB端XML的配置方式,將海量數據在線比對的功能和數據抽取集成在一起,通過前臺靈活地信息配置,將ETL和比對抽取配置結合在一起,實現數據抽取時靈活地數據碰撞和數據比對的功能。大大提升了數據比對的效率和數據比對的靈活度。
參考文獻
[1]Valiant L G.A bridging model for parallel computation[J].Communications of the ACM,1997,33(8):103-111.
[2]盛憲鋒,孫健英,焦文彬.基于數據生命周期管理的ARP系統優化設計[J].計算機工程與科學,2011.endprint