巫莉莉,張 波
(華南農業大學 現代教育技術中心, 廣州 510642)
隨著IT時代向DT時代的轉變,數據變得越來越重要,隨之而來的數據質量問題也被越來越多的人關注。數據質量來源于數據產生的過程,其優劣將直接影響數據價值的高低,進而影響管理者的分析和決策。數據質量問題的出現催生了數據治理技術,數據作為一種資產在數據治理工作中得到進一步的深化[1]。
數據治理是對數據全生命周期管理的組織行為,其主要目標是利用數據解決問題、創造新的價值,避免數據重復采集、數出多頭、數據不準等情況,解決數據質量的根本問題,并通過提升數據質量保證數據的高可用性[2-4]。國際數據管理協會(DAMA Internation)總結了數據管理的十大功能,把數據治理放在十大功能的核心位置,并指出每個數據管理的職能都有助于提升數據的質量[5]。2018年6月,國家市場監督管理總局和國家標準化管理委員會批準《信息技術服務 治理 第5部分:數據治理規范》(簡稱《規范》)國家標準發布實施,實施日期為2019年1月1日。該《規范》是在數據治理國際標準 ISO/IEC 38505-1《信息技術IT治理數據 治理 第1部分:ISO/IEC 38500在數據治理中的應用》和ISO/IEC TR 38505-2《信息技術IT治理數據 治理 第2部分:數據治理對數據管理的影響》之后發布的具有中國特色的數據治理規范。《規范》中指出數據治理工作應圍繞數據質量開展,并明確了數據質量管理的需求[6],為國內數據治理工作中決策層規劃、監督提供了指引,打通了從治理到實施的路徑[7-8]。
目前,國內高校經過數十年信息化建設的發展,普遍建設了多個業務系統,許多高校進入智慧校園建設階段。2018年6月,國家市場監督管理總局和國家標準化管理委員會發布了《智慧校園總體框架》國家標準[9],以此標準指導數據治理工作的開展,以“用數據說話、用數據決策、用數據管理、用數據創新”為目標,對學校各業務域數據進行梳理、清洗、分析和利用,著力解決各業務系統長期以來存在的“數據不規范、不統一、不準確、共享難”問題,實現“業務驅動”轉為“數據驅動”,從而提升數據質量、規范數據使用、支撐數據應用與決策[10-11],將松散的數據沉淀為科學有效的學校數據資產,進一步推進學校信息化發展。
數據質量是指在業務環境下,數據符合數據消費者的使用目的,能滿足業務場景具體需求的程度[12]。本文結合國際標準以及相關學者的研究觀點,重新描述了數據質量的特點[13]:① 數據質量存在于數據的整個生命周期,隨著數據的消失而消失;② 數據質量不僅依賴于數據本身的特征,還依賴于數據所處的業務環境;③ 數據質量可以借助業務系統來判斷,但獨立于業務系統而存在;④ 隨著業務需求和時間的變化,數據質量衡量標準會發生變化。
影響高校數據質量的因素有很多,既有管理方面的因素,又有技術方面的因素,其結果均表現為數據沒有達到預期的質量指標。主要表現在兩方面:
1) 數據管理不規范。數據全生命周期的各個階段由于業務流程設計不合理及數據錄入(更新)操作不規范,導致存在數據不完整、重復、格式不規范以及邏輯錯誤等問題。
2) 數據采集不規范。多源分布式異構的數據源在采集過程中,由于數據清洗、集成的規則和方法等因素,會產生新的數據質量問題。
數據質量對于數據治理至關重要,數據質量需達到可接受的程度才能更好地發掘和體現數據價值。目前,高校數據治理中數據質量主要面臨以下挑戰[14-15]:
1) 數據來源于眾多分散的業務系統,具有多樣性和復雜性,需要統一的業務數據標準,保證數據的規范、完整和準確,以便有效地進行質量控制。
2) 遵循“一數一源”原則,確定數據源頭,避免數據的多頭采集,以保障數據治理核心業務數據的一致性和準確性。
3) 遵循“伴隨式采集”原則進行數據采集。數據的產生很大程度依賴于業務系統,不同業務系統之間的數據也存在一定程度的依賴關系,因此對業務系統的基礎數據及數據交換的轉換規則要求較高。
數據質量評估是通過度量數據的綜合特征來估計數據質量與數據價值的過程[16]。數據質量評估是數據治理過程中必不可少的重要環節,目前主要通過數據質量維度和規則相結合來實現高校數據治理中的數據質量評估。
結合高校數據治理中的數據質量問題,總結了以下數據質量的維度:完整性、準確性、正確性、一致性、唯一性和及時性[17-19],通過它們來描述和量化數據的質量。
1) 完整性是數據質量最基礎的保障。主要是指數據的記錄和信息是否完整,是否存在缺失的情況。
2) 準確性是用來描述數據是否與其對應的客觀實體的特征相一致,是否存在異常或者錯誤的信息,通常從命名、數據類型、長度、值域、取值范圍、內容規范等方面進行約束。
3) 正確性表示數據與客觀事實的符合程度,與準確性是不同的概念。
4) 一致性通常指關聯數據之間的邏輯關系是否正確和完整,用來描述統一信息主體在不同的數據集中信息屬性是否相同,各實體、屬性是否符合一致性約束關系。
5) 唯一性用來描述數據是否存在重復記錄,沒有實體多于一次出現。
6) 及時性是一個與時間相關的維度,主要用來描述從業務發生到對應數據正確存儲并可正常查看的時間間隔。在確保數據完整性、準確性和一致性的前提下,保障數據能夠及時產出,更加體現數據的價值。
對數據質量維度與業務需求是否相匹配進行評估,制定數據質量規則,以便檢查數據質量是否滿足業務規則的流程并監控這些業務規則的符合度。根據業務特性確定質量屬性,簡單分為以下規則:
1) 單字段規則。字段作為數據庫中的最小組成單位,從格式、語法、長度、范圍等進行判斷。具體規則可表現為:非空、唯一、身份證號校驗、日期校驗、電子郵件校驗、手機號校驗、值域類型、值域范圍校驗、學號長度檢測等。
2) 跨字段關聯規則。從字段之間的邏輯關系和函數依賴關系等方面進行數據質量規則的定義。邏輯關系和函數關系都是指表的不同字段取值之間存在的一種或多種約束關系,使得彼此的取值相互制約[20]。
3) 業務校驗規則。主要是檢查數據是否符合業務邏輯,需要業務部門參與制定、完善和實施的業務校驗規則。
如表1所示,以學生個人基本信息為例說明數據質量規則與數據質量維度之間的關系。

表1 質量規則與質量維度關聯
數據質量的提升技術主要涉及模式層和實例層兩個方面[21]。數據集成主要解決模式層的問題,數據剖析主要針對實例層的數據進行分析,數據清洗解決的是實例層的數據問題,這3個方面相互交織、相互滲透,但三者從實現目標到使用技術都有明顯的不同。數據集成是目的,而數據剖析和數據清洗是手段[22]。表2對數據集成、數據剖析和數據清洗進行比較[23]。

表2 數據集成、數據剖析和數據清洗的比較
數據集成(data integration)是將不同來源、不同系統、異構且相互關聯的數據源集成到一起,并以統一的訪問接口對外提供數據服務,其主要目的是讓用戶能夠以透明的方式訪問這些數據源[24-25]。數據集成是數據治理工作的基礎,首先要解決的是數據異構、分散的問題。在高校數據治理中,目前主要通過數據視圖或數據復制的方式實現數據集成。
數據剖析(data profiling)[26]也稱數據概要分析,它通過對當前數據源的數據分析,搜集該數據源的統計信息,以此來檢驗數據的有效性、可用性,對數據源進行初步的評估。數據剖析以數據質量維度為指導,對數據結構、內容、關系、繼承關系進行識別分析,主要目的是為了發現數據的標準特征,包括數據類型、字段長度、列基數、粒度、值集、格式模式、隱含的規則、跨列和跨表的數據關系及這些關系的基數。分析的結果可以直接作為元數據使用,通常從列分析、表分析和跨表分析3個方面進行數據剖析[27-28]。在高校數據治理中,通常在數據集成的開始階段對不同來源的數據進行數據剖析。
數據清洗(data cleaning)是通過檢測發現和定位“臟數據”,并對這些數據進行修補或移除以提升數據質量的過程[29]。數據清洗主要關注缺失、不正確、邏輯錯誤、相似重復記錄等“臟數據”的檢測和消除[30]。通過定義統一的數據格式對數據進行合并、重組、消除等操作,將“臟數據”有效轉化成高質量的干凈數據,提升數據質量。
確保數據質量是高校數據治理工作中不容忽視的重要環節。然而,數據質量問題不能單純依靠技術去解決,而是需要依靠“制度+系統+人工”一起協力完成。
通過數據質量的評估、反饋和整改,建設高校數據質量提升體系(圖1),實現流程化的數據質量管理的閉環。對原業務系統的數據分析形成現狀報告,經過數據集成和清洗后生成質量報告,通過數據共享平臺將數據質量問題反饋到源頭部門進行修正和完善,然后再重新采集入庫,實現完整的流程閉環及質量改進循環機制。
規范制度的建設是數據治理目標實現的保障。在高校數據治理過程中,制定一系列的數據質量管理制度,規范數據源頭采集、統一存儲數據和使用標準接口,保證數據從產生、使用到變更的管理流程規范;制定統一的數據標準,在全校范圍梳理和建立數據認責機制,確定數據安全等級以及來源部門,按照“誰產生數據,誰負責管理”的原則,數據使用部門參與管理,保證數據全生命周期的質量。
數據的過程可視化和質量可視化管理極為重要。在高校數據治理的實施過程中,通過數據質量平臺建設(圖2),實現對數據質量可視化的呈現和分析,實時、全面地展示數據質量整體情況,及時發現數據質量問題,優化、提升數據質量,便于后續數據治理和數據分析與應用的有效開展。

圖1 數據質量提升體系

圖2 數據質量平臺
該平臺主要實現以下功能:
1) 數據集成規模展示。對數據進行量化和全局的統計,讓管理者對全校的數據資源一目了然。
2) 數據質量分析與統計。可自定義數據質量規則,并形成質量報告,促使各部門不斷提升本部門數據質量,形成良性循環。① 通過數據剖析形成現狀報告,理清學校現有業務系統現狀,針對學校當前數據現狀做全面的分析與可視化呈現,明確當前數據質量問題,為數據質量的改善與提升提供基準對比。② 通過數據清洗形成以季度、主題域及業務系統為單位的數據質量報告,包括從總體數據質量到系統、數據表及數據字段的數據質量明細,全面掌握數據清洗后的數據質量情況。
3) 數據回溯。對數據全鏈流程實行監控,隨時掌握數據的上下行狀態,并可回溯數據的歷史進化過程。
在高校數據治理過程中,將數據質量問題分為結構性問題和內容性問題。結構性問題通常是指代碼集不一致、填寫不規范、代碼混淆、格式錯誤等情況,可通過數據清洗解決問題。內容性問題通常是指數據缺失、數值錯誤、口徑不一致等現象,需要將問題反饋給源頭部門,通過源頭部門改錯補漏,更新源頭數據,再重新采集入庫。
高校數據治理實施主要以人、財、物為主線進行,而人事信息是主線中的關鍵基礎信息。為了進一步評估學校人事信息的數據質量,對評估發現的異常數據進行統計分析。如表3所示,人事信息的異常數據集中表現在完整性方面。在數據清洗的過程中,身份證件號為空的數據通過人事信息里的工號作為主鍵和一卡通人員信息做匹配,完善部分身份證件號,并通過身份證件號完善身份證件類型字段。通過對數據清洗前后存在的問題做量化對比,發現數據清洗解決了人事信息里身份證件問題的大部分數據,剩下的為空數據主要是由于歷史數據缺失的原因造成。其他人事信息異常數據屬于內容性問題,需數據產生源頭部門修正、完善數據或通過改善產生數據的業務流程來解決。

表3 問題數據統計情況記錄
在人事信息數據問題的清洗過程中,通過部分算法模型進行數據質量控制。
算法1出生日期校驗。主要通過身份證號(SFZJH)驗證出生日期(CSRQ)的正確性,算法描述如下:
public class BirthDateAuth {
public static booleanauth(String CSRQ,String SFZJH) {
//判斷輸入條件是否為空
if (CSRQ==null || "".equals(CSRQ) || SFZJH == null || "".equals(SFZJH)) {
return false;
}
//IDCardAuth為判斷身份證號是否有效的函數
if(!IDCardAuth.auth(SFZJH)){
return false;
}
String birthDate=CSRQ.replaceAll("-","");
String cardBirthdate="";//身份證的生日
if (SFZJH.length() == 18) {
cardBirthdate=SFZJH.substring(6,14);
} else {
cardBirthdate=SFZJH.substring(4,12);
}
if (birthDate.equals(cardBirthdate)) {
return true;
}
return false;
}
}
算法2教師的正式報到時間(BDSJ)的取值應大于或等于入職時間(RZSJ)的取值。算法描述如下:
public class TeacherCheckIn {
public static booleanauth(String bdsjStr,String rzsjStr) {
if (bdsjStr == null || rzsjStr == null || "".equals(rzsjStr) || "".equals(rzsjStr)){
return false;
}
DateFormat format=new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");
try {
Date BDSJ=format.parse(bdsjStr);
Date RZSJ=format.parse(rzsjStr);
if (BDSJ.getTime() >=RZSJ.getTime()) {
return true;
} else {
return false;
}
} catch (ParseException e) {
e.printStackTrace();
return false;
}
}
}
數據質量管理不是一次性行為,需建立持續監測和問題反饋的工作機制,從而多方位優化改進。高校數據治理工作中,主要從以下幾個方面進行數據質量問題反饋和跟進:
1) 借助數據質量平臺,根據表規則(表數據量、容量、表非空)及字段規則(非空、值域、正則式、范圍)手動核驗數據清洗之后的數據存在的質量問題,將分析結果以質量報告的形式呈現出來,明確問題所在。然后將質量報告反饋給數據產生的源頭部門,方便源頭部門查看整體和詳細的質量問題,進而提升數據質量。
2) 借助數據共享平臺反饋數據質量。按人力資源、學生管理、科研管理、教學資源與管理、資產管理、財務管理、行政管理和公共服務等主題域進行數據劃分,通過數據共享平臺提供不同維度的數據共享服務。在數據共享的過程中,通過數據質量反饋的流程,借助數據共享平臺在線上形成數據質量問題上報、反饋和問題督辦機制,在數據源頭進行數據整改。
3) 進行數據定期核查,結合數據的重要級別(核心數據、重要數據等),階段性地推進數據整改工作,為后續數據使用及數據應用分析提供高效、準確的數據。
數據安全貫穿整個數據治理過程。建立完善的數據安全保障機制,為數據質量的提升做好基礎保障工作。
1) 制度保障。制定校級數據管理相關辦法,建立健全數據安全管理框架,明確數據生產部門、數據使用部門、數據管理部門等單位的數據安全管理職責。建立數據資源的分類分級和保密定級工作,按分類等級和保密等級規定采取相關處理措施。
2) 技術保障。建立數據訪問的身份驗證、權限管理、行為審計及定期備份等多種安全防護機制。做好病毒預防、入侵檢測和數據保密工作,做好網絡層面的隔離工作,敏感信息限制在校內服務器訪問[31-33]。
3) 隊伍建設。組建專業的數據管理隊伍,定期和不定期地開展數據安全檢查工作。
4) 環境保障。提供高性能、高可靠、高穩定的存儲系統,充分保障訪問性能和數據安全。
數據治理是一個長期的過程,需要建立長效的管理機制來促進數據治理工作的開展。在高校數據治理過程中,數據質量的管理也是一個持續的過程。為了保證高質量的數據,需要職能管理部門的積極配合與參與,逐步推進不同層次和不同維度的數據共享,不斷完善質量反饋與監督機制,健全數據質量提升體系,形成數據質量管理的良性循環。通過數據助力數據治理,提升數據質量,為高校師生提供更優質的數據支撐服務,為學校管理者提供更精準的輔助決策支持,提高學校的管理和科研水平,促進學校建設。