It-adviseur Peter Teeuwen uit Leeuwarden stak half december met een discussiestuk het vuurtje aan onder een van de meest interessante discussies die ooit in ons blad gewoed hebben (Relationele databases: einde van een tijdperk? Computable 13 december 2002). De afgelopen weken hebben we een flink aantal reacties afgedrukt op de Discussiepagina. Op verzoek van de redactie reageerde Teeuwen op die stukken. Hij blijkt niet erg onder de indruk van de argumenten tegen zijn stellingen en vindt het vooral jammer dat niet gereageerd is op de kwestie van de samenhang van gegevens. "Dit zou wel eens het belangrijkste manco kunnen zijn van de relationele systemen", aldus de auteur.
Nu er een aantal reacties op mijn stuk zijn gepubliceerd wil ik graag op enkele zaken reageren. Ik moet eerlijk zeggen dat ik een beetje teleurgesteld ben: ik vind de argumenten die mijn opponenten hebben aangedragen niet zo geweldig sterk en mis de meer functionele benadering. Als er al argumenten worden aangedragen, zijn ze vrijwel uitsluitend van technische aard. Maar techniek is slechts een middel om een doel te realiseren. Het levert vaak geen oplossing voor de meer fundamentele functionele vraagstukken als de samenhang tussen gegevens en het verzekeren van correcte historische data.
Om te beginnen: Matijs de Jong (Relationele databases, ook in 2003, Computable 10 januari 2003). Hij zegt, vrij vertaald: Als grote jongens als Microsoft en IBM voor een relationeel systeem kiezen, dan zal dat wel de toekomst zijn. Nu hebben dergelijke bedrijven nog nooit gelet op kwaliteit. Het enige dat ze interesseert is marktaandeel. Daaruit mag je dus hoogstens concluderen dat er blijkbaar geen sterke marktpartij is met een niet-relationeel systeem.
De plank mis
Ook de opmerking dat het uitsparen van opslagruimte nooit een argument is geweest voor normalisatie, slaat de plank mis. Dat heb ik namelijk niet beweerd. Wat ik wel gezegd heb, is dat een systeem in die tijd geen kans zou hebben gehad als het niet ruimtebesparend zou zijn geweest. Dat er bij genormaliseerde data wel degelijk sprake is van ruimtebesparing ten opzichte het ‘plat’ opslaan van een tabel lijkt mij evident.
Het derde argument dat De Jong gebruikt, is een typisch voorbeeld van het ‘aangepaste denken’ dat ik ook in de andere artikelen bespeurde: uitgaan van de paradigma’s van nu en die vervolgens als a-priori juist bestempelen. Matijs de Jong en met name Tom Smit (Ongestructureerd opslaan, Computable 17 januari) gaan er zonder meer vanuit dat het dubbel opnemen van informatie automatisch leidt tot het ontstaan van inconsistenties. Dat was inderdaad een van de belangrijkste redenen om een relationeel systeem in te voeren. Maar in moderne niet-relationele systemen is dit eenvoudig te voorkomen door een globale bewerking te definiëren. Ik wil eigenlijk nog wel een stapje verder gaan: soms is het bijwerken van gegevens helemaal niet wenselijk. Ik kom hier later op terug.
De Jong schijnt niet begrijpen wat de impact is van het verwerken van documentstromen in vergelijk met het verwerken van transacties. Ook op dit punt wordt door veel auteurs uitgegaan van de bestaande situatie waarin het bedrijfsproces bestaat uit het verwerken van transacties (zie bijvoorbeeld Martijn Traas: Koester transacties, Computable 31 januari 2003). Ze vergeten daarbij dat zowel een transactie als een bedrijfsproces middelen zijn om de bedrijfsdoelen te realiseren; het zijn geen doelen op zich. Dat betekent dus dat een bedrijfsproces best zodanig kan worden ingericht dat er documenten verwerkt worden, waarbij transacties niet expliciet waarneembaar zijn. Ik denk dan ook dat we in de toekomst op een heel andere manier gaan werken; een manier van werken waarbij het verwerken van documenten weer een centrale plaats inneemt. Feitelijk is dat een terugkeer naar hoe het was vóór de automatisering zijn intrede deed in de bedrijfsprocessen. Maar wat is daar mis mee?
Ondergeschoven kindje
Er is nog een ander punt DAT helemaal geen reactie heeft losgemaakt: de kwestie van de samenhang van gegevens. Dit zou wel eens het belangrijkste manco kunnen zijn van de relationele systemen. Samenhang is lang een ondergeschoven kindje geweest, omdat er nog niet werd nagedacht over het beheer van gegevens op langere termijn. De blik was eigenlijk alleen gericht op wat bekend staat als de ‘dynamische omgeving’ van een organisatie. Pas n� komt het denken over archivering op de middellange termijn op gang; voor veel gegevens zal het al te laat zijn, vrees ik. Het zou me niets verbazen als veel data al niet meer terug te voeren zijn tot hun historische samenhang vanwege de tussenkomst van een relationele database.
Neem als voorbeeld dit geval van ongewenste consistentie: als ik de gegevens van de heer Pietersen probeer samen te stellen, blijkt Pietersen volgens het informatiesysteem alleenstaande te zijn. In werkelijkheid was P. toen getrouwd en woonde hij ook nog eens op een ander adres. Deze informatie is verloren gegaan omdat niemand in die tijd dacht dat het belangrijk was dat soort informatie vast te leggen. Archiveren is nu eenmaal iets totaal anders dan het maken van een back-up of het samenvoegen van databases in een data-warehouse. Dit geldt vooral voor overheidsinstellingen, maar naar ik aanneem ook voor grote bedrijven.
In veel reacties gaat men uit van technieken van vóór het relationele tijdperk, getuige de reactie van Han Zijlstra (Stap vooruit, Computable 31 januari 2003). Queries maken lukt tegenwoordig even goed in een niet-relationeel systeem als in een relationeel systeem. Vaak zelfs beter, omdat de vragensteller veel flexibeler mag zijn bij het stellen van zoekvragen. Zo heeft een groot internationaal opererend bedrijf uit Nederland gekozen voor een niet-relationeel systeem voor zijn dataopslag. De keus ging tussen dit systeem of een systeem van Oracle. Uit een benchmark bleken de prestaties van het niet-relationeel systeem veel beter; het ging daarbij om de retrieval van grote containers met gegevens.
Web-retrieval
Ook bij kennissystemen gaat het vaak om samenhang tussen gegevens en niet alleen om statistische gegevens. Het argument van enkele auteurs dat met name relationele systemen ingezet worden bij web-retrieval ligt niet aan het feit dat die systemen het beste zijn voor dit soort zoekacties, maar domweg aan het feit dat er nu eenmaal meer relationele systemen beschikbaar zijn dan niet-relationele.
Een denkfout die ook door een aantal auteurs is de volgende: het bestaansrecht van een relationeel systeem tracht men te bewijzen aan de hand van eigenschappen die niets te maken hebben met het feit of een database relationeel is of niet. Bijvoorbeeld of de database overweg kan met xml en html. Ik denk dat dit mijn stelling alleen maar bevestigt: de relationele systemen moeten zich in steeds gekkere bochten wringen om te kunnen voldoen aan de verwachtingen.
Ik zal zeker niet beweren dat het binnenkort definitief afgelopen is met de relationele database, zoals Jan Bakker oppert (Spelregels voor metadata moeten vastliggen, Computable 24 januari 2003). Daarvoor zijn deze systemen te zeer verankerd in organisaties. Denk maar aan Cobol en de legacy-systemen: die zouden ook al lang verleden tijd moeten zijn. Wat ik wél geloof is dat we terugkeren naar het verwerken van documenten in plaats van het uitvoeren van transacties. Dat is uiteindelijk een veel natuurlijk manier van werken, waarin de bedoelde samenhang behouden blijft. Dit zal tot gevolg hebben dat bedrijfsprocessen grootonderhoud behoeven en nu eens niet als sluitstuk maar als beginpunt van het doorvoeren van verandering. En met een blikveld dat wat verder reikt dan het hectische hier en nu.
Peter Teeuwen, Leeuwarden |