張 軍,王芬芬
(湖南鐵道職業技術學院,湖南 株洲 412001)
信息技術高速發展,大數據時代已經來臨,高校的信息化建設也經歷了多年的發展,在高校數字化校園的建設過程中[1],校內各業務職能部門在不同時期都建設相關的業務系統來滿足本部門的業務需求。同時,學校為滿足信息化教學的需求,也建設了一批教學相關的學習平臺。這些系統功能各異,系統間相互獨立,采用不同的技術方案,所產生數據的組織結構和存儲方式也大有不同,數據間的壁壘已經嚴重影響了數據的流動與共享,各系統數據存在大量的冗余與不一致[2]。當前,高校對數據的整合共享越來越重視,很多學校都在建立大數據平臺,但在實際的情況中,各業務系統歸屬不同的部門,系統分散,部門間的業務聯動性較差,數據的源頭不統一,缺少專門對數據管理進行監督和控制的組織,針對數據的共享和整合缺乏全局的規劃。這些因素都大大制約了數據共享流動的范圍以及數據共享的實效性等方面。
除上述問題外,在高校數據集成平臺的建設中,還應解決數據的全生命周期的管理,就是學校數據的產生、使用、維護、備份到過時被銷毀的數據生命周期管理規范和流程還不完善[3];同時缺乏統一的校級數據質量管理流程體系,跨部門的數據質量溝通機制不完善,嚴重影響了數據質量。基于上述背景,本文從數據標準的建立、數據清洗規則與數據ETL過程等方面構建一套完整的數據集成方案。
數據集成主要是將不同業務系統中所產生的不同格式、不同類型、不同性質的數據進行統一和集中管理的過程,數據集成是一個逐漸完善的過程,旨在為用戶提供完整的、準確的數據共享服務。目前,數據集成的相關的技術已經比較成熟,在具體實施過程中,因為各個業務系統數據的組織結構和選用的數據庫都不盡相同,數據的內容、數據的格式以及數據的質量也各自不同。所以,數據集成首先要解決的問題就是不同業務系統所產生的異構數據源的整合,數據整合的主要是數據的抽取、轉換、加載的過程,就是數據ETL(Extract,Transform,Load)過程[4]。
ETL是數據集成中最主要的一個環節,主要解決異構數據源的整合問題,通過抽取、轉換和加載過程,將分散的、不一致的、冗余的業務系統源數據按照事先定義的數據標準進行整合。首先,根據需求在源業務系統數據庫中建立源數據視圖。然后,與源數據庫建立連接,抽取源數據庫中的源數據視圖到中間表中,在抽取的過程中依據既定的數據清洗規則對源視圖中的數據進行清洗轉換,使抽取的源數據符號制定的數據標準。最后,將轉換后的數據存儲至共享數據中心中,存儲方式有全量和增量兩種方式,數據ETL模型如圖1所示。

圖1 數據ETL模型
建立信息標準主要是保證數據在采集、清洗、轉換與流轉的過程中有統一規范,保證數據的一致和準確,最大范圍的實現數據的共享。高校信息標準的制定應充分參考國家已有的教育信息化標準或相關的行業標準,同時根據高校自身的特點,信息標準應具有實用性、易擴展性和易操作性。
數據清洗就是利用相關技術依據規則將數據轉換為滿足質量要求的規范化數據,其目的就是保證數據的一致性,確保數據的參照完整性和精確性,數據清洗的主要有以下幾點。
(1)數據清洗的基本規則包括:非空檢查、主鍵重復、非法代碼清洗、非法值清洗、數據格式檢查、數據記錄數檢查。
(2)缺失值清洗:要依據缺失的比例和缺失字段的重要性,分別制定策略,對于重要性高且缺失率低的字段,可通過計算或業務知識估計進行填充;對重要性高且缺失率高的字段由業務部門補全或通過其他字段計算獲取;對重要性低的字段可不做處理或簡單填充,如果缺失率高可直接刪除該字段。
(3)格式內容清洗:主要有時間、日期、數值、全半角等顯示格式不一致,可直接將其處理為某種一致的格式;內容中存在非法的字符,如字段值的頭尾或中間存在空格或異常字符,這種情況需要半自動校驗半人工的方式來進行清洗。
(4)邏輯錯誤清洗:主要包括去除重復、去除不合理值和修正矛盾內容。
平臺采用Oracle公司的ODI作為數據ETL工具,ODI具有跨平臺的優勢,不僅能夠支出當前所有主流的關系型數據庫系統,還可以完成TXT文件、EXCEL文件以及XML等類型數據的集成。ODI通過可插拔的知識模塊來實現數據的抽取,知識模塊可定制,這就大大提高了數據集成的擴展性和靈活性。
數據的流轉過程采用虛擬視圖和中間庫的方式來降低數據間的耦合性,將業務源數據抽取至虛擬視圖中,經過清洗轉換后存入共享數據中心;將業務所需的標準數據存入中間庫,由業務系統按需加載至目標庫中。基本工作流程為:首先基于預定需求在業務系統源數據庫中建立源視圖,然后在基于信息標準建立源虛擬視圖,該視圖中的字段及含義與共享數據中心的目標表保持一致,用于完成與源視圖中數據的等價轉換,再由虛擬視圖存儲至共享數據中心中;另外,在將標準數據推送至業務系統時,也由中間庫進行流轉,共享數據中心和業務系統數據庫之間不直接發生數據流動,基本工作模式如圖2所示。

圖2 數據流轉過程
本文主要討論了利用ETL工具實現對高校各個業務系統的數據進行統一的抽取、清洗、轉換、加載和存儲,選擇ODT為實施數據集成的ETL工具,提高了數據集成平臺的靈活性和擴展性;分析了高校數據信息標準的制定,數據集成過程中數據的清洗規則,業務數據缺失值的處理策略以及數據格式和數據邏輯錯誤的清洗方法。重點分析了數據的流轉過程,采用虛擬視圖和中間庫的方式降低了數據間的耦合性,保持了各業務系統數據間的獨立,降低了實施成本,提高平臺的拓展與靈活性,對其他高校數據集成平臺的建設具有一定的借鑒意義。