Nee, nee, denkt u, de naam van dergelijke tools is niet enterprise information integration, maar enterprise application integration! Maar dan moet ik u corrigeren. Deze nieuwe categorie bestaat wel degelijk, en de kans is groot dat ze de komende jaren veel aandacht krijgt.
Via een eii-tool kunnen we toegang krijgen tot gegevens, opgeslagen in verschillende databases en bestanden. Gegevens uit SQL-databases kunnen met gegevens uit XML-databases en met losse bestanden gecombineerd worden. Zij maken het mogelijk dat meerdere, totaal gescheiden gegevensbronnen logisch als één geïntegreerde database gezien kunnen worden.
Er bestaan reeds voorlopers van deze eii-tools, zoals Data Joiner van IBM en EDA/SQL van Information Builders. De beperking van de meeste van deze producten is dat ze uitgaan van SQL. Binnenkomende SQL-instructies worden vertaald naar de taal die door de onderliggende systemen ondersteund wordt. Nu kan er veel met SQL, maar alleen als de onderliggende bronnen hun gegevens in de vorm van tabellen kunnen presenteren. En dat is niet altijd het geval.
Stel dat een gegevensbron voornamelijk tekstuele documenten bevat en dat bovendien de documenten vergelijkbaar zijn, maar niet allemaal precies dezelfde structuur hebben. SQL is dan een ongeschikte taal.
Xquery daarentegen, de nieuwe databasetaal uit de XML-wereld en ontworpen door het W3C, is daar juist ideaal voor. Vandaar dat deze taal door de nieuwe generatie eii-tools gekozen is.
Om een eii-tool te kunnen bouwen, dient de leverancier enkele technologische problemen op te lossen. Ten eerste moet het tool kunnen communiceren met al die andere bronnen. Hiervoor bestaan gelukkig al geruime tijd veel adapters. Ten tweede moet het tool in staat zijn elke binnenkomende ‘query’ op te breken in kleinere query’s en deze naar de geschikte gegevensbronnen te sturen. Uit de antwoorden die het eii-tool terugkrijgt, moet dan het uiteindelijke antwoord samengesteld worden, ofwel moeten de tussenresultaten gecombineerd worden. En tenslotte dient het eii-tool een vorm van gedistribueerde combinatie (join)-optimalisatie uit te voeren. Dit komt er op neer dat het tool zal nadenken over hoe op de meest efficiënte wijze gegevens opgehaald moeten worden.
Als er gegevens uit een DB2-, een Oracle- en een XML-database gehaald moeten worden, is de meest voor de hand liggende strategie het ophalen van de drie gegevensbestanden en de combinatie binnen het eii-tool uitvoeren. Dit is een mogelijke strategie, maar een beter alternatief is denkbaar. Eerst de gegevens van DB2 naar Oracle sturen en hier een deel van de combinatie uitvoeren, het antwoord daarvan het eii-tool binnenhalen en deze dan vervolgens combineren met de XML-gegevens. Dit is een voorbeeld van het optimaliseren van een gedistribueerde combinatie.
Een eii-tool kan dit echter alleen als ze de beschikking heeft over zogenaamde statistische informatie betreffende de gegevensbronnen. Hoeveel records zijn er, wat is de distributie van waarden en hoe snel zijn de communicatielijnen? De prestatie van elk eii-tool zal voor een groot deel bepaald worden door de kwaliteit van hun gedistribueerde optimalisatie.
De eerste eii-tools zijn nu beschikbaar, waaronder Enosys Server, Ipedo XML Information Hub, Meta Matrix Server en Nimble Integration Suite. Ook IBM, als eerste van de grote spelers, heeft zich op dit terrein begeven met het product Information Integrator. Intern is dit product gebouwd met gebruikmaking van de eigen ‘oude’ Data Joiner-technologie.
Mogelijke toepassingsgebieden voor eii-tools zijn ‘content management’ en ‘document warehousing’ met tekstanalyse. Beide kennen de behoefte om heterogene gegevensbronnen op gestructureerde wijze te bevragen. Kortom, er is een toekomst voor eii-tools.< BR>
Rick F. van der Lans is onafhankelijk adviseur, een internationaal bekend spreker en auteur van diverse boeken, tevens gespecialiseerd in softwareontwikkeling, datawarehousing en internet.