數據轉換與遷移通常包括多項工作:舊系統數據字典整理、舊系統數據質量分析、新系統數據字典整理、新舊系統數據差異分析、建立新舊系統數據之問的映射關系、開發部署數據轉換與遷移程序、制定數據轉換與遷移過程中的應急方案、實施舊系統數據到新系統的轉換與遷移工作、檢查轉換與遷移後數據的完整性與正確性。
數據轉換與遷移的過程大致可以分為抽取、轉換、裝載三個步驟。數據抽取、轉換是根據新舊系統數據庫的映射關系進行的,而數據差異分析是建立映射關系的前提,這其中還包括對代碼數據的差異分析。轉換步驟壹般還要包含數據清洗的過程,數據清洗主要是針對源數據庫中,對出現二義性、重復、不完整、違反業務或邏輯規則等問題的數據進行相應的清洗操作;在清洗之前需要進行數據質量分析,以找出存在問題的數據,否則數據清洗將無從談起。數據裝載是通過裝載工具或自行編寫的SQL程序將抽取、轉換後的結果數據加載到目標數據庫中。
對數據的檢查包括以下6個方面。
(1)數據格式檢查。檢查數據的格式是否壹致和可用,目標數據要求為number型。
(2)數據長度檢查。檢查數據的有效長度,對於char類型的字段轉換到varchar類型中,需要特別關註。
(3)區間範圍檢查。檢查數據是否包含在定義的最大值和最小值的區間中。例如年齡為300或錄入日期為4000—1—1顯然有問題。
(4)空值、默認值檢查。檢查新舊系統定義的空值、默認值是否相同,不同數據庫系統對空值的定義可能不同,需要特別關註。
(5)完整性檢查。檢查數據的關聯完整性。如記錄引用的代碼值是否存在,特別需要註意的是有些系統在使用壹段時間後,為了提高效率而去掉了外鍵約束。
(6)壹致性檢查。檢查邏輯上是否存在違反壹致性的數據,特別是存在分別提交操作的系統。