數(shù)據(jù)抽取前,需要作大量的準(zhǔn)備工作。具體如下:

    1、 針對(duì)目標(biāo)數(shù)據(jù)庫(kù)中的每張數(shù)據(jù)表,根據(jù)映射關(guān)系中記錄的轉(zhuǎn)換加工描述,建立抽取函數(shù)。該映射關(guān)系為前期數(shù)據(jù)差異分析的結(jié)果。抽取函數(shù)的命名規(guī)則為:F_目標(biāo)數(shù)據(jù)表名_E。

    2、 根據(jù)抽取函數(shù)的SQL 語(yǔ)句進(jìn)行優(yōu)化??梢圆捎玫膬?yōu)化方式為:調(diào)整SORT_AREA_SIZE和HASH_AREA_SIZE 等參數(shù)設(shè)置、啟動(dòng)并行查詢、采用提示指定優(yōu)化器、創(chuàng)建臨時(shí)表、對(duì)源數(shù)據(jù)表作ANALYZES、增加索引。

    3、 建立調(diào)度控制表,包括ETL 函數(shù)定義表(記錄抽取函數(shù)、轉(zhuǎn)換函數(shù)、清洗函數(shù)和裝載函數(shù)的名稱和參數(shù))、抽取調(diào)度表(記錄待調(diào)度的抽取函數(shù))、裝載調(diào)度表(記錄待調(diào)度的裝載信息)、抽取日志表(記錄各個(gè)抽取函數(shù)調(diào)度的起始時(shí)間和結(jié)束時(shí)間以及抽取的正確或錯(cuò)誤信息)、裝載日志表(記錄各個(gè)裝載過(guò)程調(diào)度的起始時(shí)間和結(jié)束時(shí)間以及裝載過(guò)程執(zhí)行的正確或錯(cuò)誤信息)。

    4、建立調(diào)度控制程序,該調(diào)度控制程序根據(jù)抽取調(diào)度表動(dòng)態(tài)調(diào)度抽取函數(shù),并將抽取的數(shù)據(jù)保存入平面文件。平面文件的命名規(guī)則為:目標(biāo)數(shù)據(jù)表名.txt。

    數(shù)據(jù)轉(zhuǎn)換的工作在ETL 過(guò)程中主要體現(xiàn)為對(duì)源數(shù)據(jù)的清洗和代碼數(shù)據(jù)的轉(zhuǎn)換。數(shù)據(jù)清洗主要用于清洗源數(shù)據(jù)中的垃圾數(shù)據(jù),可以分為抽取前清洗、抽取中清洗、抽取后清洗。ETL 對(duì)源數(shù)據(jù)主要采用抽取前清洗。對(duì)代碼表的轉(zhuǎn)換可以考慮在抽取前轉(zhuǎn)換和在抽取過(guò)程中進(jìn)行轉(zhuǎn)換。

    具體如下:

    1、針對(duì)ETL 涉及的源數(shù)據(jù)庫(kù)中數(shù)據(jù)表,根據(jù)數(shù)據(jù)質(zhì)量分析的結(jié)果,建立數(shù)據(jù)抽取前的清洗函數(shù)。該清洗函數(shù)可由調(diào)度控制程序在數(shù)據(jù)抽取前進(jìn)行統(tǒng)一調(diào)度,也可分散到各個(gè)抽取函數(shù)中調(diào)度。清洗函數(shù)的命名規(guī)則為:F_源數(shù)據(jù)表名_T_C。

    2、針對(duì)ETL 涉及的源數(shù)據(jù)庫(kù)中數(shù)據(jù)表,根據(jù)代碼數(shù)據(jù)差異分析的結(jié)果,對(duì)需要轉(zhuǎn)換的代碼數(shù)據(jù)值,如果數(shù)據(jù)長(zhǎng)度無(wú)變化或變化不大,考慮對(duì)源數(shù)據(jù)表中引用的代碼在抽取前進(jìn)行轉(zhuǎn)換。抽取前轉(zhuǎn)換需要建立代碼轉(zhuǎn)換函數(shù)。代碼轉(zhuǎn)換函數(shù)由調(diào)度控制程序在數(shù)據(jù)抽取前進(jìn)行統(tǒng)一調(diào)度。

    代碼轉(zhuǎn)換函數(shù)的命名規(guī)則為:F_源數(shù)據(jù)表名_T_DM。

    3、對(duì)新舊代碼編碼規(guī)則差異較大的代碼,考慮在抽取過(guò)程中進(jìn)行轉(zhuǎn)換。根據(jù)代碼數(shù)據(jù)差異分析的結(jié)果,調(diào)整所有涉及該代碼數(shù)據(jù)的抽取函數(shù)。

    6.4.4 數(shù)據(jù)遷移后的校驗(yàn)

    在數(shù)據(jù)遷移完成后,需要對(duì)遷移后的數(shù)據(jù)進(jìn)行校驗(yàn)。數(shù)據(jù)遷移后的校驗(yàn)是對(duì)遷移質(zhì)量的檢查,同時(shí)數(shù)據(jù)校驗(yàn)的結(jié)果也是判斷新系統(tǒng)能否正式啟用的重要依據(jù)??梢酝ㄟ^(guò)兩種方式對(duì)遷移后的數(shù)據(jù)進(jìn)行校驗(yàn)。

    對(duì)遷移后的數(shù)據(jù)進(jìn)行質(zhì)量分析,可以通過(guò)數(shù)據(jù)質(zhì)量檢查工具,或編寫(xiě)有針對(duì)性的檢查程序進(jìn)行。對(duì)遷移后數(shù)據(jù)的校驗(yàn)有別于遷移前歷史數(shù)據(jù)的質(zhì)量分析,主要是檢查指標(biāo)的不同。遷移后數(shù)據(jù)校驗(yàn)的指標(biāo)主要包括五方面:完整性檢查,引用的外鍵是否存在;一致性檢查,相同含義的數(shù)據(jù)在不同位置的值是否一致;總分平衡檢查,例如欠稅指標(biāo)的總和與分部門、分戶不同粒度的合計(jì)對(duì)比;記錄條數(shù)檢查,檢查新舊數(shù)據(jù)庫(kù)對(duì)應(yīng)的記錄條數(shù)是否一致;特殊樣本數(shù)據(jù)的檢查,檢查同一樣本在新舊數(shù)據(jù)庫(kù)中是否一致。

    新舊系統(tǒng)查詢數(shù)據(jù)對(duì)比檢查,通過(guò)新舊系統(tǒng)各自的查詢工具,對(duì)相同指標(biāo)的數(shù)據(jù)進(jìn)行查詢,并比較最終的查詢結(jié)果;先將新系統(tǒng)的數(shù)據(jù)恢復(fù)到舊系統(tǒng)遷移前一天的狀態(tài),然后將最后一天發(fā)生在舊系統(tǒng)上的業(yè)務(wù)全部補(bǔ)錄到新系統(tǒng),檢查有無(wú)異常,并和舊系統(tǒng)比較最終產(chǎn)生的結(jié)果。

分享到

多易

相關(guān)推薦