資料工廠資料重複問題排查
問題簡介
透過資料工廠加工處理資料時,常常因為處理不當使得資料被重複計算。資料重複的原因大致有以下三個方面:
可能原因 | 範例 |
橫向連結條件不全 | 原本區分唯一性需要聯動產品名稱、產品型號、單位這三個欄位,但是設定的時候只設定了產品名稱、產品型號,沒有聯動上單位,此時同一名稱型號的,可能會有多個單位,就會導致資料重複 |
輸入中選擇了子表單 | 輸入中同時選擇了主表欄位和子表單欄位的話,主表單的欄位都會按照子表單的行數重複,子表單有幾行,主表欄位就重複幾次 |
資料本身有重複 | 資料本身有重複的話,匯出就可能重複 |
橫向連結條件不全
問題說明
橫向連結需要保證連結欄位的唯一性,如果連結欄位不能唯一匹配,則計算的資料可能會出現重複。
如,原本區分唯一性需要聯動產品名稱、產品型號、單位這三個欄位,但是設定的時候只設定了產品名稱、產品型號,沒有聯動上單位,此時同一名稱型號的,可能會有多個單位,就會導致資料重複。
範例原始資料:
正確範例 | |
錯誤範例 |
解決方案
橫向連結的連結欄位,需要將可以確定唯一性的欄位全部作為橫向連結的聯動欄位,比如上述案例,聯動欄位就需要設定為產品名稱=產品名稱,產品型號=產品型號,單位=單位,缺一不可。
輸入中選擇了子表單
問題說明
當輸入選擇了主表欄位,同時又選擇了子表單之後,主表欄位會重複,所以主表欄位無法區分資料的唯一性,後續加工資料的時候,比如橫向連結,聯動欄位就無法僅僅設定為這個主表欄位進行聯動。
主表欄位的入庫單號全部一樣,效果如下:
解決方案
以上面舉例的資料,後續如果需要橫向連結的話,聯動欄位就需要設定為訂單號=訂單號(訂單相關的單號),產品名稱=產品名稱,產品型號=產品型號,單位=單位。
資料本身有重複
問題說明
原始資料有子表單在資料工廠計算時,子表單中的每一條子資料都會被拆分成一條一條獨立的資料。下圖為範例原始資料:
在資料工廠處理時,原始資料將變成如下所示,其中牛奶-光明-箱有兩條重複的資料:
解決方案
如果處理資料時,需要保證資料唯一性,不需要重複的資料,那麼我們可以使用「分組彙總」功能,將重複資料進行去重。
- 分組欄位新增:入庫單號、產品名稱、產品型號、單位
- 彙總欄位新增:入庫數量
設定如下圖所示:
處理後的資料如下圖所示,已經不再有重複資料: