2008-09-05 53 views
13

यहां एक दिलचस्प समस्या है।नाम/पता डेटा मिलान करने के लिए उपकरण

मेरे पास & पता जानकारी के साथ एक ऑरैकल डेटाबेस है जिसे वर्तमान रखा जाना आवश्यक है।

हमें कई अलग-अलग स्रोतों से डेटा फ़ीड्स मिलते हैं, और मैचों को समझने की आवश्यकता होती है, और डेटा के साथ डीबी को अपडेट करना है या नहीं, या यदि कोई नया रिकॉर्ड बनाया जाना है।

कोई भी अद्वितीय पहचानकर्ता नहीं है जिसका उपयोग रिकॉर्ड को एक साथ बांधने के लिए किया जा सकता है, और डेटा की गुणवत्ता हमेशा अच्छी नहीं होती है - हमेशा अलग-अलग नामों का उपयोग करने वाले लोग होंगे (यानी जो बनाम जोसेफ) , आदि

मुझे इस तरह की समस्या पर काम करने वाले किसी भी व्यक्ति से सुनने में दिलचस्पी होगी, इससे पहले कि वे इसे कैसे हल करते हैं, या कम से कम स्वचालित भागों।

उत्तर

7

इस स्पेस में सक्रिय होने वाली प्रत्येक प्रमुख सॉफ्टवेयर कंपनियां समाधान सूट प्रदान करती हैं जो नाम और पता पार्सिंग, डेटा मानकीकरण, रिकॉर्ड deduplication या मिलान, रिकॉर्ड लिंकिंग/विलय, जीवित रहने, आदि शामिल हैं। हालांकि, वे सब थोड़ा महंगा हैं।

उदाहरण के लिए, इस समस्या के लिए ओरेकल का अपना समाधान उत्पाद "Oracle Data Quality (ODQ) for Oracle Data Integrator (ODI)" है, जो उनके फ़्यूज़न मिडलवेयर स्टैक का हिस्सा है। जैसा कि नाम का तात्पर्य है, ओडीक्यू को ओडीआई की आवश्यकता है (यानी, यह एक ऐड-ऑन मॉड्यूल है जिसे अलग से लाइसेंस प्राप्त है और ओडीआई पर निर्भर है)।

आईबीएम के वेबस्पेयर समाधान सूट (उनके प्रोत्साहन अधिग्रहण के माध्यम से प्राप्त) में QualityStage शामिल है।

व्यापार वस्तुओं, अब एक एसएपी कंपनी ने अपनी उद्यम सूचना प्रबंधन (इ आई एम) सूट के तहत एक Data Quality उत्पाद है।

अन्य प्रमुख डेटा की गुणवत्ता ब्रांडों Dataflux (एक एसएएस कंपनी) और Trillium Software (एक Harte-हैंक्स कंपनी)

गार्टनर समूह डेटा की गुणवत्ता समाधान सुइट के लिए एक वार्षिक जादू चक्र विज्ञप्ति में शामिल हैं। विक्रेता जो इन जादू क्वाड्रंट्स में अच्छी तरह से रेट करते हैं, आमतौर पर पूरी रिपोर्ट पंजीकृत उपयोगकर्ताओं को ऑनलाइन वेबसाइट पर उपलब्ध कराती है (example 1, example 2)।

+0

दुर्भाग्यवश दोनों लिंक टूटा हुआ है। 2008 में, डेटाफ्लक्स मैजिक क्वाड्रंट के ऊपरी दाएं भाग पर था, लेकिन 2010 में (http://www.syncsort.com/Portals/0/documents/magic_quadrant_for_data_inte_207435.pdf) वे पीछे गिर रहे हैं। – luiscolorado

2

मेरे वर्तमान काम पर, हमारे पास बहुत से डेटा अखंडता के मुद्दे हैं। हम गुणवत्ता सुनिश्चित करने के लिए लोड होने से पहले डेटा को "साफ़" करने का प्रयास करते हैं। वर्तमान में हम नाम, पते और ईमेल साफ़ करने के लिए मेलिसा डेटा का उपयोग करते हैं। यह लोड करने से पहले यह चीजों को मानकीकृत करने के लिए एक बहुत अच्छा काम करता है। इस तरह, हम डुप्लिकेट डेटा से बच सकते हैं।

इसके अलावा, एसक्यूएल सर्वर एकीकरण सेवाएं (मुझे पता है कि आप ओरेकल का उपयोग कर रहे हैं) में एक घटक है जो तारों पर "अस्पष्ट" मिलान करता है, जिससे आप सीधे एक-एक-एक मैच के बजाय निकट मिलान ढूंढ सकते हैं। इसे फ़ज़ी लुकअप कहा जाता है। असल में यह आपको एक स्कोर देता है, जो आपको बताता है कि दो इनपुट कितने करीब हैं ... आप फिर यह बता सकते हैं कि इसे एक मैच (यानी 80% या जो कुछ भी हो) पर विचार करना कितना करीब है।

अतीत में, मैंने यह निर्धारित करने के लिए SOUNDEX भी उपयोग किया है कि डुप्लीकेट निर्धारित करने में नाम समान थे या नहीं। बहुत सारे SOUNDEX कार्यान्वयन हैं।

शुभकामनाएं।

+1

साउंडएक्स बहुत खराब है; यदि आप फोनेटिक पथ जाना चाहते हैं तो आपको डबल मेटाफोन की लाइनों के साथ कुछ करना चाहिए ... – Unreason

2

जिस समस्या को आप हल करना चाहते हैं, वह शब्द "रिकॉर्ड लिंकिंग" है।

मैं एक विशिष्ट उपकरण की सिफारिश नहीं कर सकता। "रिकॉर्ड लिंकिंग सॉफ़्टवेयर" या "मर्ज शुद्ध सॉफ्टवेयर" की खोज करें और थोड़ा सा शोध के साथ आपको अपनी ज़रूरतों को पूरा करने में कुछ ऐसा ढूंढने में सक्षम होना चाहिए।

मैं Febrl नामक एक ओपन सोर्स समाधान खोजने में सक्षम था। यह उपकरण मूल रूप से जैव चिकित्सा अनुसंधान के क्षेत्र के लिए विकसित किया गया था, जो "फ्रीली एक्स्टेंसिबल बायोमेडिकल रिकॉर्ड लिंक" नाम बताता है। आप इसके बारे में यहां और अधिक पढ़ सकते हैं: "Parallel Large Scale Techniques for High-Performance Record Linkage"

"Merge/Purge and Duplicate Detection" के बारे में पढ़ने के लिए रिकॉर्ड लिंक में शामिल समस्याओं/समाधानों का एक अच्छा अवलोकन के लिए।

0

मैंने बीमा कंपनी के लिए सदस्यता नामांकन सूचियों पर ऐसा कुछ किया। सौभाग्य से हमारे पास प्राथमिक सदस्य निर्धारित करने के लिए एसएसएन था, लेकिन मुझे यह तय करना पड़ा कि क्या आश्रित नए थे या मौजूदा थे (अकेले नाम से)। मैंने समाधान के हिस्से के रूप में एक ध्वनि एल्गोरिदम की कोशिश की, लेकिन यह बिल फिट नहीं लग रहा था, क्योंकि यह एक ही चीज़ के बहुत सारे नामों को मानचित्रित करना प्रतीत होता था (और कई परिवार अपने बच्चों को समान ध्वनि नामों के साथ नामित करते हैं)। मैं केवल (मुझे लगता है) आश्रितों के पहले चार अक्षरों का उपयोग करके एक अद्वितीय पहचानकर्ता के रूप में पहला नाम, और इसे "पर्याप्त अच्छा" कहकर समाप्त कर दिया। मैं नहीं जानता कि मैं कैसे :-)

4

सबक FirstLogic का उपयोग करने से सीखा जॉर्ज फोरमैन के परिवार को संभाल चाहते हैं। (अन्य उत्पादों को समान होना चाहिए।) संदर्भ के लिए, हम दर्जनों स्रोतों से फाइलें प्राप्त कर रहे थे, और प्रत्येक एक अलग प्रारूप में होगा। हमें यह जानने की जरूरत है कि हमारे डेटाबेस में कौन जोड़ा जाना चाहिए, जिसे अपडेट करने की आवश्यकता है, और जिन्हें "सूची में" के रूप में चिह्नित करने की आवश्यकता है।

  1. मैं उम्मीद सॉफ्टवेयर एक पूरी फ़ाइल को देखो और तय करते हैं कि होगा - कहते हैं - यदि स्तंभ एक एक 100 पंक्तियों से बाहर 98 में पिछले नाम भी थे तो स्तंभ एक अंतिम नाम स्तंभ होना चाहिए। यह सच नहीं है; प्रत्येक रिकॉर्ड व्यक्तिगत रूप से संसाधित किया जाता है।

  2. क्या आप जानते हैं कि वास्तव में क्या डेटा क्या क्षेत्र तो आप सॉफ्टवेयर है कि बता सकते हैं और यह संभाल लेंगे में है। लेकिन अगर आप हमेशा सुनिश्चित नहीं हैं कि आप इसे पूरी स्ट्रिंग दे रहे हैं और सॉफ्टवेयर को इसे समझने दें। इसका एक उदाहरण एक अंतिम नाम फ़ील्ड है जिसमें "स्मिथ जूनियर एमडी" जैसे कुछ शामिल हैं। यदि आप इसे अंतिम नाम कॉलम घोषित करते हैं तो यह माना जाएगा कि अंतिम नाम "स्मिथ जूनियर एमडी" है। लेकिन अगर आप "जॉन स्मिथ जूनियर एमडी" पास करते हैं और सॉफ़्टवेयर को यह समझने दें कि यह सभी बिट्स को सही ढंग से पहचान लेगा।

  3. कुछ चीजें जो स्पष्ट लगती थीं नहीं थीं। उदाहरण के लिए, बॉक्स से बाहर फर्स्टलोगिक यह नहीं मानता कि अल्पविराम का अर्थ "अंतिम नाम, पहला नाम" है। इसमें वास्तव में अंतिम नामों की एक बड़ी सूची है और पहले नामों की एक बड़ी सूची है, इसलिए यह आंकड़े बताता है कि यह अल्पविराम को अनदेखा कर सकता है। हमें लगातार "जॉन, थॉमस" जैसे लोगों के साथ समस्याएं थीं। और कभी-कभी यह भ्रमित हो जाएगा क्योंकि हमारे लिए एक स्पष्ट अंतिम नाम जैसा दिखता था वास्तव में स्पेनिश या कुछ में पहला नाम था।

  4. यह डमी डेटा जोड़ने के लिए इस प्रणाली का उपयोग करने के लिए मुश्किल है। यदि आपके पास "टेस्ट अकाउंट" या "टीबीडी" जैसी चीजें हैं, तो उन्हें संसाधित नहीं किया जाएगा - फर्स्टलोगिक रिकॉर्ड को फेंक देगा क्योंकि इसे पहचानने वाले डेटा के किसी भी बिट को नहीं मिला है। के रूप में बिक्री लोगों को यह आवाज

  5. प्रणाली को अनुकूलित करना संभव है, लेकिन के रूप में आसान नहीं है। लाखों विकल्प और कस्टम फाइलें और शब्दकोश हैं। यदि आप इसे अनुकूलित करने में सक्षम होने की अपेक्षा करते हैं तो आपको यह समझने के लिए समय का निवेश करना होगा कि यह कैसे काम करता है। यह एक आरडीबीएमएस या एक ईटीएल उपकरण की तरह है। यह एक जादू काली बॉक्स नहीं है।

  6. यह भी डेटा की गुणवत्ता सुविधाओं की एक टन है कि सॉफ्टवेयर खरीदने का औचित्य साबित करने के लिए मदद, लेकिन यह जानने के लिए और लागू करने के लिए एक समर्पित प्रयास की आवश्यकता है।

  7. उपकरण वास्तव में एक मास्टर फ़ाइल के खिलाफ एक सूची को संसाधित करने के लिए डिज़ाइन नहीं किए गए हैं; वे विलय-शुद्ध संचालन के लिए बनाए गए थे। यह संभव है (हम इसे कर रहे हैं), लेकिन यह आवश्यक है कि आप अपने डेटाबेस को एक सूची का इलाज करें (जिसके लिए आपको सभी लाइव रिकॉर्ड्स को एक फ्लैट फ़ाइल में निकालने की आवश्यकता होती है)। साथ ही, आप जितना अधिक नियंत्रण चाहते हैं, उस पर रिकॉर्ड कहां जाता है (यानी यदि नाम 80% मैच है और ज़िप कोड के पहले दो अंक समान हैं, तो शायद यह वही व्यक्ति है, आदि), जटिल आपकी बैच प्रक्रिया है होने जा रहा है।

  8. अंत में, हमने महसूस किया कि "जॉन स्मिथ" और प्रसंस्करण "एनाबेल डिजीओवानी" प्रसंस्करण बहुत अलग जानवर हैं जब आप यह निर्धारित करने की कोशिश कर रहे हैं कि अलग-अलग पते पर दो लोग वास्तव में समान हैं या नहीं। आप सॉफ़्टवेयर को ठीक-ठीक कर सकते हैं ताकि आम नामों के मुकाबले असामान्य नामों को एक मैच पर अधिक वजन दिया जा सके, लेकिन समय कौन है? हमारी मिलान प्रक्रिया लगभग 80% सटीक है और हम शेष 20% मैन्युअल रूप से संसाधित करने से संतुष्ट थे।

मिलान के स्वचालित रूप से स्वचालित रूप से करने के लिए टूल के रूप में नहीं सोचें। इसे अपने मानव डेटा प्रोसेसर को अधिक उत्पादक होने की अनुमति देने के लिए एक उपकरण के रूप में सोचें। इस तरह से आपने इसे सेट अप किया है ताकि यदि आप 80% सटीकता को दबाते हैं तो यह निशान से कम की बजाय एक शानदार सफलता है।

0

मैंने डेटाफ्लक्स को कार्रवाई में देखा है, और, हमारे "स्टार" डेटा विश्लेषक के अनुसार, यह "क्लस्टरिंग" (डेटाफ्लक्स कॉल के रूप में) के लिए सबसे सटीक टूल है जिसे उन्होंने लोगों और कंपनियों के नाम जोड़ने के लिए पाया है। हालांकि, यह बहुत महंगा है।

0

यह रिकॉर्ड लिंकेज की क्लासिक समस्या है। टायपोज़, लापता पत्र इत्यादि को अवरुद्ध करने के नियमों को निर्धारित करके संभाव्य दृष्टिकोण के साथ संभाला जा सकता है।

एक सॉफ्टवेयर जो आपके लिए अच्छी तरह से कर सकता है FRIL है। जावा में, मुफ्त और बहुत दोस्ताना। वेबसाइट पर ट्यूटोरियल और वीडियो के लिंक हैं। यह डीबी कनेक्टिविटी का समर्थन करता है, हालांकि मुझे ऑरैकल के बारे में निश्चित नहीं है।

RecLink जाने का एक और तरीका हो सकता है, हालांकि आपको शायद इसे चलाने और चलाने के लिए कड़ी मेहनत करनी पड़ेगी क्योंकि कोई मैनुअल/ट्यूटोरियल नहीं है (मेरे ज्ञान के लिए)।

मुफ्त विकल्पों से, RELAIS भी है।

1

प्रत्येक प्रमुख प्रदाता के पास अपना स्वयं का समाधान होता है। ओरेकल, आईबीएम, एसएएस डेटाफ्लक्स, आदि और प्रत्येक दावा सबसे अच्छा होने का दावा है।

स्वतंत्र सत्यापित मूल्यांकन:

ऑस्ट्रेलिया में डाटा लिंकेज के लिए कर्टिन विश्वविद्यालय केंद्र है कि 44 लाख अभिलेखों का मिलान नकली पर किए गए अध्ययन किया गया था। पहचान क्या प्रदाताओं सटीकता के संदर्भ में था

  1. DataMatch Enterprise, उच्चतम सटीकता (> 95%), बहुत तेजी से, कम लागत
  2. IBM Quality Stage, उच्च सटीकता (बनाम उपलब्ध। झूठी मैचों की संख्या पाया मैचों की संख्या) (> 90%), बहुत तेजी से, उच्च लागत (> $ 100K)
  3. एसएएस डाटा प्रवाह, मध्यम सटीकता (> 85%), फास्ट, उच्च लागत (> 100K)

सबसे अच्छा स्वतंत्र मूल्यांकन था हम पाते थे, बहुत गहन था।

5

ओपन सोर्स फ्रंट पर, इस तरह के रिकॉर्ड deduplication/इकाई संकल्प करने के लिए अब एक पायथन पुस्तकालय है: Dedupe

प्रोग्रामिंग कौशल की आवश्यकता है, लेकिन यह मुफ़्त है और एक विशाल सर्वर के विपरीत लैपटॉप पर चलाया जा सकता है।

यहां how it works का एक अवलोकन है।

0

मैंने नामों के एक बड़े डेटासेट के लिए dataladder.com का उपयोग किया। उन्होंने बहुत ही अलग वर्तनी वाले विभिन्न डेटाबेसों से मिलान करने और बहुत सारे डुप्लिकेट के माध्यम से कटौती करने के लिए शानदार काम किया।

संबंधित मुद्दे