Internet biedt juist een oplossing voor de belangrijkste beperking van relationele databases: het niet kunnen omgaan met gelijktijdige veranderingen op verschillende plaatsen, meent Matijs de Jong. ‘Het lijkt er eerder op dat relationele systemen de macht overnemen dan dat ze op hun einde lopen.’
Peter Teeuwen getuigt van lef door het einde van de relationele database aan te kondigen (Computable, 13 december 2002). Al helemaal, door dit te doen aan het eind van een jaar waarin Microsoft aangekondigd heeft dat de toekomstige Longhorn-versie van Windows gebruik zal maken van de SQL Server Engine voor de Active Directory, Exchange en zelfs het bestandssysteem. Verder heeft IBM meegedeeld dat toekomstige versies van Notes/Domino voortaan DB/2 zullen gebruiken voor de opslag. Autonome ontwikkelingen als ‘data mining’ en olap geven ook eerder de indruk van vooruitgang dan van stagnatie. Het lijkt er dus eerder op dat relationele systemen de macht overnemen dan dat ze op hun einde lopen.
Het artikel van de heer Teeuwen is op technische gronden niet erg overtuigend. Zo is bijvoorbeeld de besparing van opslagruimte nooit een argument geweest voor normalisatie. De grondreden voor normalisatie is het bewaren van consistentie van de gegevens. De vraag van de heer Teeuwen of redundantie wel zo verkeerd is, is de verkeerde vraag. Redundantie voor snelheid van toegang is nooit verboden geweest en is in de vorm van indexen zelfs een integraal onderdeel van elk rdbms. Ook buiten een index kan hiervan gebruik gemaakt worden voor eenvoud of snelheid van gegevenstoegang. Echter, als data op twee plaatsen veranderd kunnen worden zonder dat duidelijk is welke plek bepalend is voor de werkelijke waarde, dan zullen er inconsistenties ontstaan. Vaak genoeg bleek de wet van Murphy te kloppen. Dergelijke inconsistenties kunnen de waarde van een database ernstig verminderen, en het kost veel geld om ze ongedaan te maken. Het argument dat data steeds meer in documentvormen aangeboden wordt en dat relationele databases hier niet mee om kunnen gaan, is alweer achterhaald door de technische ontwikkelingen. Wel is het zo dat daar – met name op het gebied van gebruikers- en programmeursgemak – nog veel aan valt te verbeteren. Oracle, IBM en Microsoft zijn zich hiervan bewust en werken hard aan verbeteringen, zo is mij gebleken. De vraag wat relationele databases hebben te bieden voor het ontsluiten van informatie op het Web is echter ridicuul. Mainframes hebben juist een uitgebreide verlenging van hun bestaanrecht gevonden nu de informatie in hun databases met html ontsloten kan worden. Een proces dat nog eenvoudiger aan het worden is met de komst van xslt- en xml- interfaces naar databases. Sterker nog, de komst van internet biedt juist een oplossing voor de belangrijkste beperking van relationele databases: het niet kunnen omgaan met ‘concurrency’ ofwel gelijktijdige veranderingen op verschillende plaatsen. Dankzij internet en vpn’s kan nu ook de kleinste organisatie voor een laag bedrag een internationaal werkend netwerk opzetten met toegang tot een centrale database.
Beperkte mogelijkheden SQL
De aanvullende opmerking over kennissystemen begrijp ik niet. Zeker, er zijn kennissystemen die geen olap of ‘data mining’ gebruiken, maar ik denk dat er tegenwoordig meer kennissystemen zijn die ergens gebruik maken van een relationele database, dan die dat niet doen. De enige ernstige kritiek op relationele systemen die de heer Teeuwen noemt, is gelegen in de ontsluiting van data in een relationele database. Het probleem ligt echter niet in enige structurele beperking van de mogelijkheden van data-uitwisseling, maar in de beperkte mogelijkheden en gebruikersvriendelijkheid van de interface-taal SQL. Normalisatie van gegevens zal altijd noodzakelijk zijn. Normalisatie is namelijk niets anders dan het vaststellen van de structuur van gegevens. Net als bij het veranderen van het DNA van een organisme is het een stuk eenvoudiger om de juiste resultaten te krijgen als je weet hoe het origineel werkt. Echter, nadat je een bacterie een medicijn heb laten maken, gebruik je andere methodes dan ‘gene sequencing (genenvolgordebepaling) om het resultaat te oogsten. In de toekomst zullen we nog steeds niet gelijkwaardig normaliseren, maar we zullen onze zoekopdrachten waarschijnlijk niet langer laten beperken door de mogelijkheden van relationele algebra.
Zo zal Xquery binnenkort wellicht een serieus alternatief zijn voor SQL bij het onsluiten van databases. Microsoft, Oracle en Sun geloven er in elk geval in, gezien de lijst van editors. Daarnaast zijn er voldoende producten op de markt waarmee gebruikers een ‘moeilijke’ vraag over meerdere tabellen met een paar muisklikken kunnen uitvoeren. Gezien de eisen die tegenwoordig aan databases gesteld worden, is op dit gebied nog veel ontwikkeling te verwachten. Ondanks alle kritiek ben ik het dus wel met de heer Teeuwen eens dat de it-industrie nu op een breukvlak staat voor wat betreft de wijze van omgaan met informatie. Ik voorzie echter juist een toekomst waarin gebruikers informatie op grote schaal kunnen uitwisselen zonder dat de structuur verloren gaat. Als ik zie wat Google al kan doen met losse tekst en hyperlinks als enige structuur, ben ik benieuwd wat er gaat gebeuren als de zoekmachines nog meer structuur tot hun beschikking hebben om onze vragen te beantwoorden, met relationele databases als motor.
Matijs de Jong, Rotterdam