SAP C4C的客戶主數據建立時的重複檢查,基於底層HANA數據庫的模糊查找功能,根據掃描數據庫中已有的數據檢測出當前正在建立的客戶主數據是否和數據庫中記錄有重複。算法
在系統裏開啓重複檢查的配置:數據庫
在此處配置主數據模型上每一個字段對重複性檢查結果共享的權值:blog
要理解權值的做用,就必須先理解C4C客戶主數據重複性檢查的算法Levenshtein algorithm。這個算法以開發者Vladimir Levenshtein命名,經過計算Levenshtein(萊文斯坦)距離來衡量兩個字符串的類似度。開發
看個具體例子。字符串
假設數據庫裏有一條主數據記錄:get
Name = Carl,it
Email = jerry@sap.comio
而後在C4C UI建立一個新的客戶主數據:配置
Name = Corl,im
Email = jerry@sap.com
其中Name字段的類似度爲 1 - 1/4 = 75%,而Email字段類似度爲100%。
而後在C4C裏這兩個字段的權值配置以下:
Name = 30
E-mail = 70
按照Levenshtein algorithm的公式計算重複度:
SIM = SQRT( (30² * 0.75² + 70² * 1²) / (30² + 70²) ) = 0.97 = 97%
到底重複度多少的待建立客戶主數據被認爲是真正的重複數據呢?能夠在Business Configuration裏配置:
‘Strong – Duplicate Check for Business Partners’:85%
‘Medium – Duplicate Check for Business Partners’: 80%
‘Weak – Duplicate Check for Business Partners’: 70%
要獲取更多Jerry的原創文章,請關注公衆號"汪子熙":