2009-02-24 90 views
1

我是支持CRM CMS(Salesforce)的公司的系統管理員。「好」數據庫記錄比較工具?

我不喜歡的內置功能,所以我一般通過CSV/XLS文件管理數據的上傳和下載,因爲我能寫出更好的查詢等。我的一項任務是上傳聯繫人和帳戶。由於缺少唯一的標識符和拼寫錯誤,我在上傳的記錄中遇到重複內容。

  • 當上傳的接觸,我試圖通過電子郵件,電話號碼和/或匹配姓氏/姓名
  • 公司憑藉我一般僅限於帳戶的只是名字,有許多可能的縮寫和拼寫錯誤

我正在尋找一個更好的方法有以下限制,以檢查重複:

鑑於姓名,電子郵件地址或電話號碼(全部存儲爲文本字段)的列表,在兩個表格之間進行比較檢查,以查找第二個表格中的最佳匹配。最好在多個領域之間,但即使只有一個領域,這也將極大地幫助我的努力。

數據集的大小約爲最長表上的17,000條記錄。通常一次輸入值約爲50。我的限制是我擁有的硬件,沒有預算決定權。我的編程能力是非常基礎的,但我可以學習並在系統上安裝Eclipse & Visual Studio。

有沒有人有一個建議,如何我可以通過編程方式解決這個問題,還是與第三方工具?

回答

1

我使用的兩個db比較工具是xSQL和Redgate SQL Compare。

我更喜歡redgate的易用性,但價格相當昂貴。

XSQL是有點複雜,找到竅門在第一,但功能相當強大,它也確實腳本架構,比SQL服務器數據做一個更好的工作。它也便宜很多。

實際上看你的問題有點接近它似乎你想在你的比較中有一點智能,這是因爲你已經安裝了Visual Studio的情況下,我會說你有工具已經做了一些漂亮的深度comparrisons ,只需要做一些編碼。

0

你基本上是在談論natural language parsing,與更普遍的模式匹配(縮寫等)一起。你不會找到一個簡單的解決方案,但你可以提高你的機會。

我會從更簡單的一點開始:拼寫錯誤。 「soundex」算法(適當地,Soundex Indexing System)通過發音時的聽起來像(通過美國說話者推測)聽起來像是什麼,並將它們呈現爲使得聽起來相似的詞將比較相似。當嘗試根據同音詞發現錯誤拼寫時,這非常有用:根據類似的soundex值爲用戶提供匹配。

0

名稱及地址匹配可以是相當困難的,我對做這個商業工具的工作,他們想出了一個巨大的代價,尤其是當他們與地址,有時名稱的完整列表工作了。

另一種可行的方法,但很費時間的是建立自己的迷你小腳本庫。有兩種方法可以去,你可以嘗試perl,awk,shell腳本和你喜歡的任何其他語言,並使用基於文件和文本的數據。或者你可以在Access中建立一套Sql,查詢和coe片段?無論哪種方式,如果您的預算爲零,您可能會花費大量時間建立自己的圖書館,但這是一項有用的技能。

0

正如@MrTelly所述,姓名和地址(和公司)的匹配非常複雜。

一個第三方工具 - 有一個獨立的GUI以及程序員的API - Melissa DATA的MatchUp。

GUI:http://www.melissadata.com/products/matchup.htm

API:http://www.melissadata.com/dqt/matchup-api.htm

聲明:我梅麗莎DATA工作,是這些產品的主要開發者。但我全心全意支持我的工作!

+0

這是Frank Chang(cell 617-909-2731 email [email protected])。我現在在劍橋肯德爾廣場,Massachusets擔任兩家公司的諮詢軟件工程師。謝謝,弗蘭克(2013年12月11日) – Frank 2013-12-12 02:15:56