SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

i042416發表於2018-10-21

SAP C4C的客戶主資料建立時的重複檢查,基於底層HANA資料庫的模糊查詢功能,根據掃描資料庫中已有的資料檢測出當前正在建立的客戶主資料是否和資料庫中記錄有重複。

在系統裡開啟重複檢查的配置:

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

在此處配置主資料模型上每個欄位對重複性檢查結果共享的權值:

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

要理解權值的作用,就必須先理解C4C客戶主資料重複性檢查的演算法Levenshtein algorithm。這個演算法以開發者Vladimir Levenshtein命名,通過計算Levenshtein(萊文斯坦)距離來衡量兩個字串的相似度。

看個具體例子。

假設資料庫裡有一條主資料記錄:

Name = Carl,

Email =  jerry@sap.com

然後在C4C UI建立一個新的客戶主資料:

Name = Corl,

Email =  jerry@sap.com

其中Name欄位的相似度為 1 - 1/4 = 75%,而Email欄位相似度為100%。

然後在C4C裡這兩個欄位的權值配置如下:

Name = 30

E-mail = 70

按照Levenshtein algorithm的公式計算重複度:

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

SIM = SQRT( (30² * 0.75² + 70² * 1²) / (30² + 70²) ) = 0.97 = 97%

到底重複度多少的待建立客戶主資料被認為是真正的重複資料呢?可以在Business Configuration裡配置:

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法

‘Strong – Duplicate Check for Business Partners’:85%

‘Medium – Duplicate Check for Business Partners’: 80%

‘Weak – Duplicate Check for Business Partners’: 70%

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

SAP Cloud for Customer客戶主資料的重複檢查-Levenshtein演算法


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2216998/,如需轉載,請註明出處,否則將追究法律責任。

相關文章