DBaaS goed bekeken

OptimaData is marktleider in Nederland op het gebied van (open source) database management dienstverlening en levert consultancy, database beheer, database onderhoud en trainingen.
Uiteraard hebben databases in de cloud onze aandacht. Ondersteuning door Database Experts bij het inrichten van je cloud databases maar ook database beheer door bijvoorbeeld managed services, managed consultancy, QuickScans en HealthChecks, proaktieve (remote) monitoring en onderhoud op cloud (private of public) database platformen.
DBaaS behoeft niet perse een (fulltime) DBA. Althans, dat is de boodschap van de cloudaanbieders. Toch is onze visie dat ook bij het gebruik van DBaaS oplossingen een goede keuze dient te worden gemaakt en er in veel gevallen best wat tuning, best practices en deployment handigheidjes kunnen worden toegepast.
Om nog maar niet te spreken over Governance en de impact op je operationele processen. Aangezien DBaaS automatisch update naar de nieuwste versie is er een risico dat je database voor de troepen uit gaat lopen en je applicatie landschap niet meer compatibel is. Een DBA Expert als toezichthouder, Trusted Advisor en/of meewerkend (remote) CoPilot is aan te raden.
DBaaS is sterk in ontwikkeling. Elke maand zien we verbeteringen en nieuwe oplossingen. Of DBaaS ter vervanging van een bestaande OLTP omgeving kan worden ingezet is nog helemaal de vraag. Voor andere toepassingen kan het best een goede overweging of alternatief zijn.
Database as a Service (DBaaS), beter bekend als “Managed Databases”, is een cloud-dienst die gebruikers enige toegang biedt tot een database zonder de noodzaak om fysieke hardware in te stellen, software te installeren of te configureren.
Al deze administratieve taken en het onderhoud worden door de cloudaanbieder verzorgd, zodat de de gebruiker enkel de beschikking heeft over een (altijd up to date) database.
Deze managed databases bieden min of meer vergelijkbare functionaliteit als een standaard relationele of niet-relationele database, en het betalingsmodel is per gebruik. De cloudaanbieder geeft je een beheerconsole om database-instances te implementeren, te wijzigen of zelfs te verwijderen. Volgens de bekende cloud-servicemodellen kunnen we DBaaS als onderdeel van een PaaS plaatsen, omdat je vaak ook alle mogelijkheden van een PaaS hebt, maar het is niet zo in steen gebeiteld als een SaaS.
Er zijn inmiddels talloze DBaaS aanbieders met een enorme varatie in compatibiliteit, beschikbaarheid, performance, eenvoud en pricing. Onderstaande is een greep uit de meest voorkomende DBaaS oplossingen. De lijst is niet onuitputtelijk en zal telkens aangevuld en ververst worden.
Amazon RDS is het meest vooruitlopende platform voor DBaaS. Amazon Relational Database Service (Amazon RDS) maakt het eenvoudig om een relationele database in de cloud op te zetten, te bedienen en te schalen.
Het biedt kostenefficiënte en aanpasbare capaciteit en beheert tegelijkertijd tijdrovende database-administratietaken zoals hardware provisioning, database setup, patching en back-ups. Amazon RDS is beschikbaar op 6 bekende database instances: Amazon Aurora, MySQL, PostgreSQL, MariaDB, Oracle Database en SQL Server engines.
Dit betekent dat de code, applicaties en tools die je vandaag al gebruikt met je bestaande databases kunnen worden gebruikt met Amazon RDS (zie opmerkingen bij Aandachtspunten verderop in dit artikel). Amazon RDS patcht automatisch de database software en maakt een back-up van je database, waarbij de back-ups worden opgeslagen voor een door de gebruiker gedefinieerde bewaarperiode en point-in-time herstel mogelijk wordt gemaakt. Je profiteert van de flexibiliteit van het kunnen schalen van de CPU resources of opslagcapaciteit die met je relationele database bijvoorbeeld via een enkele API-call zijn verbonden.
Bovendien maakt Amazon RDS het eenvoudig om replicatie te gebruiken om de beschikbaarheid en betrouwbaarheid van productiedatabases te verbeteren (ook hier zie opmerkingen bij Aandachtspunten). Er geen investeringen vooraf nodig en je betaalt alleen voor de resources die je gebruikt. (ook hier zie opmerkingen bij Aandachtspunten).
Meest genoemde pluspunten:
Meest genoemde minpunten:
Amazon Aurora is een MySQL en PostgreSQL-compatibele relationele database gebouwd voor de cloud, gebouwd om de prestaties en beschikbaarheid van bedrijfsdatabases te combineren met de eenvoud en kosteneffectiviteit van open-sourcedatabases.
Amazon Aurora is voorzien van een gedistribueerd, fouttolerant, zelfherstellend opslagsysteem dat automatisch opschaalt tot 64TB per database-instance. Het levert performance en beschikbaarheid met tot 15 low latency leesreplica’s, point-in-time recovery, continue back-up naar Amazon S3, en replicatie over drie Availability Zones (AZ’s). Het is compatibel met MySQL en PostgreSQL.
Het betekent in wezen dat de database in staat is om de oude datasets en tools te ondersteunen die op die DB’s werden gebruikt. Dit is een groot voordeel omdat het in wezen achterwaarts compatibel is. Maar, let op! Het is een aangepaste variant van open-source Postgres en MySQL, om technische “Aurora” (lees: snelle performance) mogelijk te maken is op een aantal vlakken de source code aangepast.
Amazon Aurora kan aantrekkelijk zijn voor organisaties die aanzienlijke investeringen hebben in on-premise MySQL en Postgres database platformen en willen migreren naar de cloud zonder significante veranderingen aan hun applicaties en systemen. Profiteren van de inherente voordelen van de cloud op het gebied van schaalbaarheid, beheer, performance en gemak van beheer, kan Aurora deze gebruikers voorzien van een geweldige oplossing voor applicatie- en databasemodernisering.
Meeste genoemde pluspunten:
Meest genoemde minpunten:
Onder de DBaaS opties die beschikbaar zijn in Azure, inclusief Azure Cosmos DB, en Azure SQL Database met haar eigen SQL Server engine, biedt Microsoft ook fully managed open-source databases aan via Azure: Azure Database voor MySQL, Azure Database voor PostgreSQL, Azure Database voor MariaDB (deze gaat eruit per 19-09-2025) en Azure cache voor Redis.
Gebruikers kunnen een nieuwe instance in enkele minuten ter beschikking stellen en snel online schalen om in te spelen op hun dynamische bedrijfsbehoeften. Infrastructuurbeheer, waaronder schaalbaarheid, beschikbaarheid en beveiliging, is geautomatiseerd.
Meest genoemde pluspunten:
Meest genoemde minpunten:
Azure SQL Database is een relationele Database-as-a-Service die gebruik maakt van de Microsoft SQL Server Engine. Azure SQL Database is een high-performance, betrouwbare en veilige database die je kunt gebruiken om data-gestuurde applicaties en websites te bouwen in de programmeertaal van je keuze, zonder dat je de infrastructuur hoeft te beheren.
Azure SQL Database werkt hetzelfde als de windows applicatie van SQL management studio. De Azure SQL kan op afstand beheerd worden via Visual Studio en SQL management studio. Het is zeer efficiënt werken met beheerders op afstand.
Meest genoemde pluspunten:
Meest genoemde minpunten:
Google Cloud SQL is een database-as-a-service (DBaaS) met de mogelijkheden en functionaliteit van SQL Server, MySQL en PostgreSQL. (zie ook de opmerkingen bij Aandachtspunten). handig is de eenvoudige koppeling met BigQuery waarmee je analytische mogelijkheden gebruikt door directe query’s uit te voeren op je Cloud SQL-databases. Met Google Kubernetes Engine kun je snel ontwikkelen omdat je al je apps en services heel eenvoudig kunt implementeren, updaten en beheren.
Met Cloud SQL kunt je eenvoudig Postgres-databases op Google Cloud instellen, onderhouden en beheren. Deze toepassing fungeert als bouwsteen in een architectuur voor microservices en beschikt over een onafhankelijke opslagservice, zodat gegevens decentraal worden beheerd en elke service onafhankelijk schaalbaar is.
BELANGRIJK: Google heeft een scherp maintenance-window, soms zelfs onaangekondigd, van enkele uren per maand. En gedurende deze periode gaat de database plat. Er kan nog wel gelezen worden maar niet geschreven. Voor productie databases of databases met veel traffic niet geschikt.
Meest genoemde pluspunten:
Meest genoemde minpunten:
Google Cloud Spanner is een cloud database-as-a-service product dat als dienst wordt aangeboden op Google Cloud Platform (GCP). Het is een voorloper van CockroachDB, het heeft er alle schijn van dat CockroachDB een fork van Spanner als startpunt heeft gebruikt.
lSpanner is een schaalbare database met vrijwel onbeperkte horizontale schaalbaarheid. Het is ook een consistent type database. De meeste datatypes kunnen worden ondersteund met Google spanner. Google biedt met Spanner een SaaS met 99,999% SLA en een sterke consistentie.
We zijn verrast door het volledige gebrek aan back-ups en de zeer beperkte controle op de toegang tot de resources. Om nog maar te zwijgen over het gebrek aan views, geen lokale ontwikkelomgeving, niet-ondersteunde sequenties, JDBC zonder DML- en DDL-ondersteuning, enzovoorts.
Als een hoge SLA je primaire doelstelling is en je niet geneigd bent om je eigen multi-cloud oplossing te bouwen, kan Cloud Spanner de oplossing zijn die je zoekt. Maar, je moet je bewust zijn van alle beperkingen.
Meest genoemde pluspunten:
Meest genoemde minpunten:
IBM Cloud Databases zijn open source data stores voor de ontwikkeling van bedrijfsapplicaties. Ze zijn gebouwd op een Kubernetes-fundament en bieden een databaseplatform voor serverloze toepassingen.
Ze zijn ontworpen om de opslagruimte te schalen en resources naadloos te berekenen, zonder te worden beperkt door de beperkingen van één enkele server.
Deze databases, die van nature geïntegreerd zijn en beschikbaar zijn in de IBM Cloud console, zijn nu beschikbaar door middel van een consistent verbruiks-, prijs- en interactiemodel.
Ze zijn bedoeld om ontwikkelaars een samenhangende ervaring te bieden met onder andere toegangscontrole, backup-orkestratie, encryptiesleutelbeheer, auditing, monitoring en logging. IBM Cloud Databases levert compatibiliteit met: PostgreSQL, EDB Postgres, MongoDB, Redis,
en ElasticSearch.
Meest genoemde pluspunten:
Meest genoemde minpunten:
MongoDB Atlas is de geautomatiseerde managed cloud service van MongoDB, die geautomatiseerde implementatie, provisioning en patching levert, en andere functies die databasemonitoring en -optimalisatie ondersteunen.
MongoDB Atlas kan worden gebruikt voor het opslaan van enkele non-relational attributen die in documentvorm kunnen worden opgeslagen, waarbij de schema’s van record tot record kunnen verschillen. En MongoDB Atlas is zeer snel beschikbaar. Atlas is een sterke keuze voor het bouwen van een datalake.
Meest genoemde pluspunten:
Meest genoemde minpunten:
SkySQL is een database-as-a-service (DBaaS) van MariaDB, die mogelijkheden in het MariaDB-platform naar de cloud brengt, met een combinatie van enterprise features en support.
De leverancier beschrijft het als gebouwd voor bedrijfskritische applicaties en enterprise governance, en stelt dat SkySQL de automatisering uitbreidt met de menselijke expertise die nodig is om bedrijfskritische implementaties in de Cloud te ondersteunen en te beheren – of het nu gaat om een enkele ontwikkelingsdatabase of om duizenden productiedatabases.
Let op dat de database die door MariaDB wordt aangeboden niet de community edition is. In feite is het de MariaDB Enterprise Server naast de MariaDB ColumnStore (of beide).
Voor de infrastructuur maken ze gebruik van het Google Cloud Platform (GCP) en de diensten zijn sterk afhankelijk van Google Kubernetes Engine (GKE), een onderdeel van het GCP. Dit betekent veel voor het platform zelf aangezien de diensten van MariaDB SkySQL draaien in containers aangedreven door Kubernetes. Dit geeft in de toekomst de mogelijkheid om de dienst als DBaaS af te nemen vanuit iedere grote (multIi)cloudomgeving.
Meest genoemde pluspunten:
Meest genoemde minpunten:
Cockroach Cloud, het product van CockroachLabs met volledige managed service, is beschikbaar voor AWS en GCP en biedt een uniform beheer en configuratie interface.
Het platform kan ook rechtstreeks op locatie worden geïmplementeerd op Linux, Windows en Mac.
Uitgebreide ondersteuning voor het implementeren, beheren en orkestreren via Kubernetes op containersupporting omgevingen is ook aanwezig.
Implementatie kan meerdere clouds overspannen en data kan zijn verdeeld onder hen, terwijl ze nog steeds verschijnen als een enkele gegevensopslag voor gebruikers en applicaties.
CockroachDB is een aantrekkelijke keuze voor organisaties met bestaande SQL-vaardigheden die op zoek zijn naar het moderniseren van hun database-infrastructuur.
De flexibele implementatie-opties van het platform, Postgres compatibiliteit, multi-cloud-mogelijkheden, geautomatiseerd schalen en geografische partitionering van gegevens zijn het allemaal sterke eigenschappen. Samen met de relationele kern van het platform moeten ze het bedrijf helpen om te concurreren in de drukke cloud-native databasemarkt.
Meest genoemde sterke punten:
Meest genoemde min punten:
Voor alle DBaaS oplossingen zijn er generieke aandachtspunten.
Voor alle DBaaS oplossingen geldt dat er sprake is van shared instances. Dat wil zeggen dat de ruimte waar de database draait wordt gedeeld met andere databases van andere klanten. Daardoor kun je last krijgen van het gedrag van andere databases van andere klanten. In metafoor: “we zitten allemaal op dezelfde boot, iemand springt op en neer en jij wordt zeekziek”.
Maatwerk is bijna niet mogelijk. Alle DBaaS oplossingen zijn ingericht op het grote gemiddelde. Configuraties en performance instellingen staan niet slecht maar ook niet perfect. Voor gemiddelde standaard applicaties niet direct een probleem maar wel zodra het complexer wordt of wanneer er veel I/O plaats vind.
Zeker in gevallen waar de database groeit doen zich performance problemen voor die tot zekere hoogte zijn op te lossen door simpelweg resources bij te schakelen. Maar opeens niet meer. Het kan namelijk niet in het oneidige. En dan is er niemand die het voor je kan fixen.
Zowel Azure als AWS bieden zogenaamde opensource databases zoals PostgreSQL, MariaDB en MySQL. Men beweert compatibiliteit met de community versies. Echter belangrijk om te weten is dat het per definitie geen open source databases zelf zijn. Het lijkt op de oorspronkelijke community versie maar is niet hetzelfde. En is een fork, een uitgekleede variant waarbij ook de source-code is veranderd.
Zo zijn niet de nieuwste community versies beschikbaar en belangrijker nog, veel community extensies, die de native versie zo krachtig maken, zijn niet beschikbaar of niet compatibel. In feite gebruik je wel (een aftreksel van) de basis technologie, maar een stuk minder advanced en zeker minder versleutelbaar.
Voor alle DBaaS oplossingen er sprake van meer of minder Vendor Lock-in. Met name voorzichtigheid is geboden bij de zogenaamde open source varianten (Azure databases en AWS RDS), verhuizen naar een eigen native community versie is behoorlijk intensief. En uiteraard de specifieke No-SQL varianten op eigen technologie (Azure CosmoDB, Google BigQuery, CouchBase) kun je niet zomaar overzetten omdat er geen compatibel alternatief is. Zoals Peter Zaitsev (CEO Percona) onlangs in een presentatie vergeleek: “Je vrijheid om te vertrekken is net als de gastvrijheid van Hotel California”.
In een DBaaS omgeving bepaald de provider de timing van de downtime. En je hebt er zelfs vaak geen zicht op. Dat geeft onvoorspelbaarheid en er zijn situaties te bedenken waarin je dat niet wil. Verder is het bij veel DBaaS oplossingen niet heel duidelijk in de console welke wijzigingen wel en welke niet direct downtime veroorzaken om deze wijziging te implementeren.
De kracht van DBaaS is dat Developers zelfstandig zonder toezicht van DBA en zonder eerst toestemming te hoeven vragen allerlei databases kunnen deployen, aftrappen, dumpen, opspinnen en weer laten vallen. Hierdoor is er gaandeweg toch een risico dat er in je (ontwikkel)omgeving een wirwar van databases, lost connecties en een onoverzichtelijke brei aan instances gaat ontstaan. En laat staan database onderhoud. Het resultaat is vergelijkbaar met je keuken, als je een kleuter even een uurtje alleen hebt gelaten.
Uiteraard werken alle DBaaS aanbieders met cost per use. En dat kan vaak goed uitpakken. Maar let wel op. Bijschakelen van resources kost geld, redunant uitvoeren van je setup kost het dubbele en bij dan weer resources bijschakelen kost het dus 4x, en zo kan het soms hard gaan. Evenals advanced options zoals specifieke of diepgaandere monitoring of column store indexen moet extra voor worden betaald.
Percona heeft recent een omvangrijk onderzoek gedaan naar het gebruik van DBaaS oplossingen en de resultaten daarvan kun je vinden op de website van Percona. Wat opviel is dat:
Dat geeft te denken. Wij kunnen dat beeld bevestigen omdat wij regelmatig door nieuwe klanten / bedrijven worden benaderd omdat ze worstelen met de gekozen opzet en vooral het niet werkt naar verwachting.
De groei van de cloud verloopt niet altijd geheel vlekkeloos. In 2019 en 2020 hebben we de enorme impact gezien die cloudstoringen kunnen hebben op het bedrijfsleven.
Alle grote cloudaanbieders hadden in 2019 en 2020 meerdere malen te kampen met storingen, wat grote gevolgen had voor veel grote websites en bedrijven. Twee dingen hebben de impact van de uitval verergerd.
Ten eerste, naarmate we de drempel voor clouddiensten verlagen, worden meer mensen die slechts oppervlakkige kennis hebben van hoe ze hun databases in de cloud moeten ontwerpen, opzetten en configureren, de “admin” die ervoor moet zorgen dat de databases en omgeving goed genoeg is voor productie.
Ten tweede, veel cloudaanbieders maken gebruik van de term “Fully Managed” wanneer ze verwijzen naar hun diensten – een vaak te makkelijk gebruikte marketingterm die gebruikers kan misleiden.
Wanneer iets volledig beheerd wordt, gaan de meeste mensen ervan uit dat ze zich er helemaal geen zorgen over hoeven te maken, en voor het grootste deel kunnen bijna alle cloud-diensten out-of-the-box gebruikt worden in slechts een paar minuten. De beveiliging en beschikbaarheid van uw applicaties is echter een gedeelde verantwoordelijkheid met als gevolg dat applicaties niet zijn geconfigureerd om grote storingen of zelfs serieuze downtime te overleven.
Helaas hebben we het afgelopen jaar ook gezien dat een gebrek aan technische kennis (en blind vertrouwen) heeft geleid tot een enorme toename van het aantal database- en data-lekken. Duizenden grote databases zijn onbeschermd gebleven, waardoor miljarden persoonlijke gegevens zijn uitgelekt.
Er is ook een technologisch probleem binnen de moderne ondernemingen. Ontwikkelaars zijn tot koning gekroond – het kiezen van tech stacks en databases. Dit dwingt DBA’s en sysadmins om zich aan te passen aan verschillende tools, databases en technologieën – met meerdere toolsets, API’s en processen om te onderhouden.
In een recente enquête is slechts 22% van de DBA’s betrokken bij de beslissing welke databases door applicaties worden gebruikt, terwijl architecten en ontwikkelaars de beslissingen nemen over welke database ze meer dan 50% van de tijd gebruiken.
DBaaS oplossingen kunnen in veel situaties een heel goed alternatief zijn. Het kan in development omgevingen, CI/CD trajecten, (big)data lakes, datawarehousing, specifieke analytics projecten en recht toe recht aan (web) applicaties een prima oplossing zijn die soms zelfs een stuk voordeliger kan uitpakken.
Daarnaast staan we nog maar aan de vooravond van DBaaS, het wordt dagelijks doorontwikkeld en we zien verbetering op verbetering. Wat dat betreft heeft DBaaS gewonnen, om snel, eenvoudig databases te deployen in de cloud is dit wel de richting van de toekomst.
Het bepalen welke database platform geschikt is voor uw toepassing, klantervaring en bedrijfsdoelstellingen is een zeer gecompliceerd proces geworden met duizenden soorten van databaseservers, meerdere hostinglocaties on-prem en multi-cloud, en belangrijke technologiestandaarden die moeten worden bepaald. Maar uiteindelijk komt het neer op het vinden van de beste tool voor het doel.
OptimaData ontwerpt, bouwt en beheert alle vormen van (open source) databases en biedt zo één enkele bron van onafhankelijke expertise om uw multi-vendor-, multiplatform- en multi-cloud database-omgevingen te helpen vereenvoudigen en te beheren.
De open source community en verschillende database consultancy bedrijven, waaronder OptimaData, zijn bezig met meer klantgedreven toolkits zoals een set aan Kubernetes operators maar ook een repository aan deployment scripts en best practices om het gebruik van DBaaS op een open source disruptive manier helderder en gestructureerd te krijgen. Waardoor DBaaS mét DBA toezicht mogelijk wordt.
OptimaData kan helpen om door deze nieuwe multi-database wereld te navigeren en de prestaties van uw database vandaag de dag te optimaliseren.
Mogelijke optimalisaties
Aandachtspunten
Securitymaatregelen
Risico’s / nadelen
Aanbevelingen
Mogelijke valkuilen
Voordelen
Nadelen / Risico’s
Integratiemogelijkheden
Valkuilen
Kern van DBaaS
DBaaS is een cloudgebaseerde dienst waarbij een provider de onderliggende infrastructuur (servers, opslag, netwerk) en de basisinstallatie van de databasesoftware aanbiedt. Dit betekent dat je niet zelf fysieke hardware hoeft te beheren of het besturingssysteem (OS) en de database-engine hoeft te installeren en te patchen.
Wat de provider meestal níet doet
Waarom DBaaS toch interessant kan zijn
Belangrijk om te beseffen
DBaaS kan de overhead van serverbeheer en OS-patching verlichten, maar het echte databasebeheer (onderhoud, tuning, beveiliging op dataniveau) blijft grotendeels jouw verantwoordelijkheid.
Voordelen van schaalbaarheid
Aandachtspunten
Stappenplan
Risico’s / nadelen
Hoe de kosten worden bepaald
Zo houd je kosten voor DBaaS en het beheer ervan gescheiden, maar krijg je wel een totaaloplossing.
Risico’s / valkuilen
Op basis van objectieve inzichten blijkt dat DBaaS-oplossingen breed worden ingezet, met name door:
In de financiële sector wordt DBaaS vaak toegepast voor niet-kritische toepassingen, testomgevingen of analytische doeleinden – terwijl kernproductiesystemen doorgaans on-premises of in private cloud blijven draaien vanwege strikte compliance- en performance-eisen.
Gebaseerd op inzichten uit de volgende bronnen:
Deze bronnen geven gezamenlijk aan dat DBaaS vooral aantrekkelijk is voor bedrijven die snel willen innoveren en schalen, terwijl bij sterk gereguleerde of kritische omgevingen vaak voor hybride of traditionele oplossingen gekozen wordt.