Nogal wat leveranciers van softwarepakketten adverteren met hun ondersteuning van meerdere merken databases. En het zijn niet de minsten. Onder hen: SAP, Opentext, en Topdesk, om er maar een paar te noemen. Als enige eis stellen deze applicaties dat er een SQL-compliant database wordt gebruikt. Elke serieuze relationele database spreekt dit protocol.
Oppervlakkig beschouwd klinkt dat aanlokkelijk: welk merk database in je organisatie al aanwezig is, Oracle, IBM DB/2, MS SQLServer of MySQL: het gaat werken. Dat scheelt installeren, het opleiden van je beheerders en het onderhandelen met een databaseleverancier.
Toch is het gewoon een slecht idee en moet je dit niet willen. Waarom niet? Er zijn argumenten van technische en architectonische aard. Daarover graag een volgende keer. Hieronder een simpeler reden: geld. Je betaalt bij zo’n applicatie teveel licentiekosten voor de database en voor de licentiekosten van het pakket zelf.
Licentiekosten database
De afgelopen decennia hebben leveranciers van databases enorm veel functionaliteit toegevoegd aan hun producten. Waar databanken in het (verre) verleden uitsluitend de opslag van gegevens regelden in tabellen, zijn deze in de loop van de tijd geëvolueerd tot geavanceerde platforms met de introductie van autorisatielagen, integriteitscontroles, stored procedures, triggering mechanismen en zelfs embedded fileservers, webservers en jobschedulers. Voor al die mooie functies wordt dan wel stevig betaald door de afnemers. Zelfs de instaplicentie van een database van één van de grote merken kost al snel duizenden euro’s per jaar.
In tegenstelling tot de standaardtaal SQL, (die overigens vele dialecten kent) zijn al die extra opties leverancierspecifiek en daardoor niet (zomaar) uitwisselbaar. Pakketten die meerdere SQL-databases ondersteunen gebruiken daarom alleen die opties van een database die altijd aanwezig en universeel zijn: het verbinden met de database en de opslag van data. Dat is natuurlijk doodzonde: al die mooie opties van jouw database worden niet gebruikt. Maar je betaalt er wel voor.
Licentiekosten pakket
Om meerdere databasemerken te kunnen ondersteunen moet een pakketleverancier flink investeren. Tenslotte moet hij minimaal testen of zijn applicatie ook echt werkt met al die SQL-databases. Dat betekent kosten voor de licenties van al die gegevensbanken, het inhuren of in dienst nemen van personeel met de benodigde kennis, testen, extra infrastructuur, et cetera.
Jij, als afnemer van zo’n pakket kiest echter (meestal) maar één optie: SAP met Oracle of Opentext eDocs met SQLServer. Je betaalt dan echter eveneens voor de ontwikkelkosten van SAP met SQLServer, DB/2 of SAP-DB. De licentiekosten van de applicatie zijn dus (aanmerkelijk) hoger voor functionaliteit waar je als afnemer niets aan heeft.
Niet doen dus, die applicaties die meerdere databases ondersteunen. Dat is het weggooien van (veel) geld. Kun je echt niet om een pakket heen, omdat het de standaard in jouw branche is of de functionaliteit precies aansluit bij jouw behoefte: kies dan voor de goedkoopste database, al is deze nieuw voor je organisatie. Je beheerders zullen er weinig werk aan hebben want van al die geavanceerde functies wordt toch geen gebruik gemaakt. In alle andere gevallen: kies een pakketleverancier die keuzes durft te maken en optimaal gebruik maakt van de opties van jouw dure database.
Jurrie Zaat, managing consultant Orcado
Duidelijk iemand die totaal geen verstand van de techniek heeft ! Over de rol van DBA wordt zelfs wat disrespectvol gesproken, alsof het een soort van junior specialisatie is. Vergeet ook niet dat de verschillende RDBMS meestal op andere platformen draaien, wat het er niet makkelijker op maakt om je in alle producten te specialiseren.
In Enterprise omgevingen worden de “dure opties” wel degelijk gebruikt, anders hadden de gratis RDBMS systemen die de leveranciers aanbieden ook volstaan.
Ik vind nergens in het verhaal een onderbouwing van de conclusie. De grote van het bedrijf, de huidige expertise, kosten voor omscholing en uitbreiding personeel, licentie kosten en vele andere factoren spelen een rol.