'Autonome data-integratie'

Door Y-Less op woensdag 28 mei 2008 17:05 - Reacties (2)
Categorie: Internet, Views: 5.268

In deze post laat ik jullie zien hoe makkelijk het is om onzekere data iets autonomer te verdelen, hiervoor gebruik ik de XML structuur (eXtensible Markup Language) zodat ik het voorbeeld van een boomstructuur in XML handig kan uitbeelden.

Een normaal XML document kunnen we namelijk weergeven als een graaf en in de meeste gevallen zelfs als een boom, zie figuur 1;

http://tweakers.net/ext/f/69n5RzQGlErBB8SMdtDcJbWL/full.png


Dit document geeft een adresboek weer met een persoon, Deze persoon heeft een naam en een telefoonnummer, Maar als er twijfel is over een van de eigenschappen van de persoon, bijvoorbeeld het telefoonnummer, dan kan ik dat met normale XML niet weergeven, Daarom zal ik probabilistische xml (pXML) moeten gebruiken en laten we weer hetzelfde adres boek zien, Zie figuur 2;

http://tweakers.net/ext/f/bZuQelZYWMhLMaWKmLe7QqJk/full.png


Nu is het telefoonnummer van John onzeker geworden, Het telefoonnummer is of 1234 (met kans 60%), of 4321 (met kans 40%), De driehoekjes in het model zijn probability nodes en geven aan dat onderliggende nodes, de zogenaamde kinderen, elkaar uitsluiten, Slechts een van die kinderen zal dus echt voorkomen, deze kinderen worden altijd weergeven met open rondjes en worden nader vernoemd als possiblity nodes en hebben een bijbehorende kans, De kansen van possibility nodes tellen altijd op naar één (Verbeter mij hier als ik fout zit).

Een normaal xml document kan dus heel eenvoudig om worden gezet naar probabilistische xml door elke xml node vooraf te laten gaan door een possibility node die weer vooraf wordt gegaan door een probability node.

De mogelijkheid om onzekerheid, en bijbehorende kansen, op te slaan in een document wordt gebruikt om het integreren zo aan te passen dat de gebruiker van de integratie-applicatie niet meer aanwezig hoeft te zijn tijdens de integratie om beslissingen te nemen of twee elementen wel of niet gelijk zijn, Nu zul je denken, Die mogelijkheid moet er dan wel zijn! Om die kans op gelijkheid te bepalen, worden de componenten in de integratie-applicatie verzorgt door "The Oracle", deze krijgt twee elementen als parameters mee en geeft als resultaat een confidence score zodat die twee elementen gelijk kunnen zijn, Met gelijk bedoel ik; óf de elementen refereren aan hetzelfde object, óf dezelfde eigenschap in de echte wereld, Zo zijn de twee xml-boompjes in figuur drie waarschijnlijk gelijk volgens deze beschrijving;

http://tweakers.net/ext/f/LKsYAyZye87jgHKWFDRxk0A0/full.png

In het eerste geval is een telefoonnummer gegeven inclusief netnummer in dit geval dus (053) terwijl in in het tweede geval geen netnummer is gegeven, Bovendien zijn de namen van de nodes in beide bomen verschillend maar betekenen ze wel hetzelfde. Nu heb ik alle benodigdheden om automatische data te gaan integreren, Ik ga er wel vanuit dat het afstemmen van de schema's van verschillende bronnen al is gebeurt, "The Oracle" bekijkt namelijk paarsgewijs alle elementen en slaat het geïntegreerde element, inclusief de confidence score, op.

Nu wil ik als laatste toelichten hoe we nu de integratiestap gaan doen, Het integratie process gebeurt door op elk niveau in de boom een integratiestap uit te voeren.

http://tweakers.net/ext/f/qzopUw8Q4NFmgfvH8JZ8EtLX/full.png


Helaas mis ik wel een onderdeel dat ontbreekt om mijn zogenaamde integratie autonoom te laten verlopen, de mogelijkheid voor gebruikers om feedback te geven op de integratie, Na het stellen van een query aan de database, kan er namelijk antwoord op de feedback gegeven worden, Er zijn twee mogelijke vormen van feedback:
  • Er kan een antwoord worden aangewezen en aangegeven worden dat een antwoord niet correct is, Het resultaat is dat de element verdwijnt uit de database zelf.
  • Een andere vorm wordt gegeven door bij een antwoord juist aan te geven dat dit correct is, Zonder die feedback zou de hoeveelheid onzekerheid na integratie nooit meer kunnen afnemen, maar, door sommige mogelijkheden af te keuren wordt het aantal mogelijkheden en dus ook de daarmee samenhangende onzekerheid kleiner.
Zo, en nu eerst een integratieplan! :Y)