選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
6 分鐘閱讀時間 (1129 個字)

大數據前的資料清理

Big Data Cleaning
  先前提到,倉儲的目的是,將各來源系統的資料做統一整理再存入。
  收載資料時一定會遇到各式髒資料,有的資料樣態會導致無法轉入資料庫,而有的資料會在塞入資料庫時,出現錯位、亂碼等各式各樣非預期的情況,此時倉儲資料清理的準則變得極為重要,因將攸關於整個系統資料的統一。
  資料清理的準則設定可以從三個角度著手:「檔案類型」、「欄位型態」及「資料邏輯」,並非全都必須依照這方式處理,若客戶有特別的處理邏輯,可適當的客製化調整處理準則,以下會根據過往經驗針對上述這幾個方面進行解說。

  資料內容以純文字的方式儲存,欄位與欄位之間以特定符號作為分隔,例如:逗號、分號或|等等,較常被使用的是「逗號」。然而使用各符號作為分隔時,會遇到其中一種情況是:以逗號為例,如該欄位內容包含逗號,將會造成欄位內容分割時發生錯誤,但此逗號明明屬於資料的內容,卻被誤認為是分隔符號,使得分割完的資料對應到錯誤的欄位。這狀況的解決辦法就是,將內容值前後都加上雙引號後,再以逗號分隔串連各欄位資料;若使用其他符號當做分隔的解決辦法亦然。

  以專案中使用的ETL工具Datastage為例,讀取資料庫文字欄位型態的資料時,內容包含換行符號,工具就認為這筆資料已經讀取完,則換行符號後面的資料內容即為下一筆資料的開頭,無法完整的將一筆資料讀取進來。當遇到此狀況的解決辦法是移除換行符號,若需要保留換行符號,可先將換行符號取代成鮮少出現在內容裡的自定義字串,例如:@@@,在存入資料庫的前一步驟,再將字串@@@取代回原來的換行符號,但需要注意的是,各工具輸入特殊符號的寫法不盡相同,可上網搜尋該工具輸入的寫法。

格式:同時出現以 斜線分隔(YYYY/MM/DD)、無分隔符號(YYYYMMDD) 或 連接號(YYYY-MM-DD) 的日期格式。
處理方式:透過判斷式將內容使用的符號,或沒有符號的純文字格式,換成資料庫可接受的日期格式。

西元年/民國年:同一欄位參雜西元年與民國年的日期。
處理方式:若以西元年格式存入資料庫,年若小於1911,則將 年份+1911 ;年若大於1911,則直接轉入。

值異常:例如日期出現2月30日、年份早於1911年等,或是不可為NULL的欄位卻出現NULL值等非正常的日期。
處理方式:異常的日期通常已經無法追溯到正確的值,或來源的日期就是髒資料,可統一為特定日期(如:1911年1月1日),日後看到即可確定來源的資料因有異常而清理過。


說明:曾發生過在工具與目的資料表設定的欄位長度,比實際資料內容的長度短,以至於數值被截斷,或是無法收載、存入出現時錯誤訊息。
處理方式:收載資料時,務必事先了解來源資料的格式,可以減少以後維護與除錯的時間。

說明:文字是最容易造成轉檔失敗的型態,因為此型態可容許輸入任何類型的字元,像是中文、英數字、各種標點符號或其他特殊字元,但工具與資料庫本身並非接納的了所有字元,較特別的會無法轉入,或需要做其他特殊的轉換才能收載。
處理方式:有時轉檔失敗的主因僅僅是因為在上億筆資料當中的其中一筆,某個文字型態的內容踩到了特殊符號,為了要能成功轉檔,必須像大海撈針一樣地找出那一筆,替換掉它後在收載進資料庫。

  擁有固定編碼、格式或意義的資料,亦或是較不容易變動的分類,即可定義好每個分類細項的中英文或編碼,超出這些細項的值則直接轉換為固定表示異常的值。

  性別分為男、女或不明/不詳,來源資料的值可能是M、F與U;也可能是1、2與9。假設倉儲統一定義為前者那種代表的方式,那麼後者便以判斷式將值改為與前者相同,若值=1,則改為M;若值=2,則改為F;若值=9或其他例外的值,則改為U。日後在倉儲的性別欄位內容僅會有M、F與U這三種,可以清楚地辨識各種值代表的意思。

  台灣曾經經歷過縣市升格為直轄市,有更換過縣市的中文名稱,那麼資料也須跟著配合調整。在專案當中處理的方式,是做一張新舊對照縣市代碼與名稱的轉換表,日後資料若有縣市資訊需求,即可勾稽此資料表,讓縣市升格前與後的資料,能自由並適當的轉換,得到想要的資訊。

  身分證號的編碼有固定的規則,第一碼是初次戶籍所在的縣市代碼,第二碼是性別(1:男性;2:女性),第三到九碼是流水碼,最後一碼第十碼是檢查碼,檢查碼會以第一到第九碼之英數字組合經過權重計算而得。若要確認身分證是否有效,可依據這些規則去做判斷。

玩轉 Fiddler-HTTP(s) 抓包能手 & 常見「特殊」用途
[Data Modeling] 以例子來理解 Party Relationship

相關文章

 

評論

尚無評論
已經注冊了? 這裡登入
Guest
2024/05/02, 週四

Captcha 圖像