Op het grensgebied tussen de Database Administrator (DBA) en de applicatie of zijn ontwikkelaar.
Database Developer
Als Database Developer richt ik mij op het optimaliseren van de gehele database en alles wat van invloed is op het gedrag er van, waaronder:.
- Functioneel gebruik van de database
- Technisch gebruik van de database
- Applicaties die gebruik maken van de database
- Tabel structuur
- Datatype gebruik
- Relationele model
- Inrichting van het database cluster / instance
- Inrichting van de onderliggende componenten zoals besturingssysteem, opslag, geheugen en netwerk
Database gebruik
Belangrijk onderdeel hierin is te kijken naar de specifieke queries waar de database mee te maken krijgt. Deze worden vaak vanuit andere applicaties gegenereerd en zijn niet altijd voldoende efficiënt. Door samen met applicatie beheerders of applicatie ontwikkelaars naar het gebruik en gedrag van de database te kijken, kan vaak al veel geoptimaliseerd worden. Vaak is een paar wijzigingen in de aanpak rond de vraagstelling al voldoende en soms resulteert dit ook in een verbetering van het datamodel.
Onderhoud
Een ander veel voorkomend probleem met databases is achterstallig onderhoud. Ooit klein begonnen met weinig data en een paar gebruikers. Vervolgens succesvol gegroeid zonder stil te staan bij de gevolgen voor de database. Bij een goed ingerichte database met de juiste vraagstelling hoeft groei in volume en/of gebruik weinig impact te hebben. Maar elke database heeft onderhoud nodig. Altijd, net als dat de beste auto ooit nog steeds regulier onderhoud nodig heeft.
Systeem
Een database wordt zo snel als het langzaamste component. Het is dus van belang om de onderliggende componenten zoals besturingsysteem, harddisk, geheugen en netwerk goed af te stemmen op het specifieke database gebruik. Veel Database Administrators (DBA's) onderhouden vele databases, honderden of zelfs duizenden. Het is voor een DBA onmogelijk om alle details van elke database te begrijpen en onthouden. Zij blijven daardoor meestal bij algemeenheden als het gaat om ondersteuning en optimalisatie.
Veel applicatieontwikkelaars of -beheerders missen echter de kennis om de DBA van de juiste informatie te voorzien. De database is daardoor vaak wel op algemeen niveau getuned, maar kan op details beter. Het datamodel en de juiste vraagstelling blijven meestal ondergeschoven kindje, omdat de DBA daar de juiste details mist over het specifieke gebruik van die ene specifieke database.
De Database Developer fungeert als intermediair tussen beiden omdat deze rol beide kanten voldoende begrijpt om de "missing link" in te vullen.
Verschil Database Developer en Database Administrator
Veel Database Administrators (DBAs) kennen één of twee database engines heel goed, niet meer. Ik ken meerdere databases enorm goed, op bepaalde vlakken soms zelfs beter dan de gespecialiseerde DBA. Terwijl die DBA vaak weer andere vlakken beter kent dan ik.
De Database Developer richt zich vooral op het specifieke praktisch gebruik van de databases, hoe de database zich intern gedraagt en hoe het praktisch gebruik daarop kan worden afgestemd. Een DBA's richt zich meer op de algemene inrichting, het algemene onderhoud en de security (login).
Geïnteresseerd?
Geef uw contactgegevens aan mij door via dit contact formulier. Extra informatie over welke kennis en ervaring u zoekt, is natuurlijk welkom. Ik neem dan zo snel mogelijk contact met u op om een en ander door te spreken.
Arjan Saly - Arjan Saly Consultancy - Data Engineer - AWS - Database - Databases - Database Development - PostgreSQL - CockroachDB - CockroachDB - Consultancy - Tilburg - Europa - Internationaal