-- senior database administrator & bi consultant

Ronald de Groot
SQL Server draait beter als ik ernaar gekeken heb.

Senior (Azure) SQL Server DBA en SSIS/ETL/BI-consultant met ruim 30 jaar ervaring. Gespecialiseerd in performance tuning, executieplannen, indexen en migraties naar Azure.

Ronald de Groot in zijn vliegtuig PH-3B7
SQLCMD — dbaronald.com
/* over mij */

Complexe database- & ETL/ELT-problemen, snel geanalyseerd

Sinds 1992 werk ik als freelance DBA en BI-consultant voor banken, verzekeraars, zorginstellingen, energiebedrijven en industrie. Complexe problemen analyseer ik snel en ik bedenk graag — en vlot — technische oplossingen. In een project ben ik iemand die meters maakt: door goed te plannen haal ik deadlines.

Nieuwe technologieën dagen mij uit; ik wil ze snel begrijpen en doorgronden. Zo hielp ik Stichting BKR jarenlang met de migratie van failover-clusteromgevingen naar Azure SQL Database — en werd ik door de ICT-collega's verkozen tot winnaar van de "Bruggenbouwer"-trofee voor die Azure-migraties.

Mijn hart ligt bij performance tuning: executieplannen lezen, de juiste indexen ontwerpen en van een trage query weer een snelle maken. Tegenwoordig ligt mijn focus op Microsoft Fabric, waarbij ik diezelfde ETL/ELT- en datawarehouse-ervaring toepas op Lakehouses, pipelines en semantic models.

Verder ben ik rustig, stressbestendig en hulpvaardig — en een echte doorzetter die problemen niet uit de weg gaat. Buiten het werk vind je me op de racefiets of mountainbike, of buiten met een drone in de lucht.

/* certificeringen */

Certificeringen & erkenning

Nu BEZIG

Microsoft Fabric

Implementing Analytics Solutions Using Microsoft Fabric (DP-600) & Implementing Data Engineering Solutions Using Microsoft Fabric (DP-700).

Cloud & Azure

Microsoft Certified: Azure Database Administrator

DP-300-certificering, behaald in oktober 2020.

Datawarehousing

SSIS, SSAS & SSRS

Gecertificeerd in de volledige Microsoft BI-stack: ETL met SSIS, cubes met SSAS en rapportage met SSRS.

Vroege carrière

DTS — Data Transformation Services

Begonnen met ETL- en DBA-werk rond SQL Server DTS, de voorloper van SSIS.

  • AWARD

    BKR "Bruggenbouwer"-trofee

    Verkozen door alle ICT-collega's voor de hulp bij diverse Azure-migraties.

/* werkervaring */

Ruim 30 jaar in het vak

Een selectie van recente opdrachten. De volledige lijst gaat terug tot 1992.

2026 — heden

Heemskerk, FMgroup · SQL Server DBA

Datamigraties.

2026 — heden

BMN · SQL Server DBA

Performance tuning van het ETL-loadproces.

2026 — heden

NEP · ETL Consultant

Beheer en doorvoeren van ETL-wijzigingen in SSIS.

2021 — 2025

Stichting BKR · Azure SQL Server DBA

Migratie van databases uit failover-clusteromgevingen (o.a. CKI3, VIS, EVA, VPS, KYC) naar Azure SQL Database. Ondersteuning van scrumteams, Azure Cost & Security Management, Azure Stack HCI data sync en de Ola Hallengren maintenance solution.

2019 — 2021

EMS / ABN AMRO · DBA / BI Developer

Performance tuning en redesign van databases en ETL voor het laden van creditcardtransacties; centrale exportfunctionaliteit en cube-aanpassingen.

2020

Greenchoice & WMD · DBA

Inrichten van Remote DBA-services; security-rapportage met de SQL Server Vulnerability Assessment voor alle databaseservers in het domein.

2018 — 2019

Menzis · DBA / BI Developer

Performance tuning, SQL Audit-implementatie in het kader van de AVG en ETL-ontwikkeling voor SAS.

2015 — 2017

WMD, Bartimeus & Marel · DBA / BI Developer

VLDB-datawarehouse voor sensor-meetwaarden (Big Data), enterprise datawarehouse met SAP en Microsoft Dynamics als bron, datawarehouse met QlikView-frontend en Azure ETL.

2011 — 2017

Propertize, Smurfit Kappa, SNS Reaal & PGGM · DBA / BI Developer

Databasemigraties, generieke SOX-audit-implementatie (DBSP Policy), conversies en ETL voor de Actuariële DataBase (dekkingsgraadrapportages, jaarrekening).

1992 — 2011 · DBA/BI-werkzaamheden voor onder andere:

St. Elisabeth ZiekenhuisDaikinAegonERS RailwaysHarmony Financial ServicesSNS Property FinanceVereniging Eigen HuisING VastgoedbeheerBouwfondsING CardVodafoneBejo ZadenNCRSoftware AGMÆRSKCentura SoftwareWegenerDuyverman Computer Centrum
/* sql apps */

Zelf gebouwde tools voor SQL Server

Naast consultancywerk bouw ik ook mijn eigen tooling — AI-ondersteund met Claude Code — voor problemen die de standaard tools niet goed oplossen.

-- restore · point-in-time · log shipping TOOL

SQLRestoreSOS: restore voor junior DBA's

Een junior developer dropte een tabel en nu moet de junior DBA het oplossen. SQLRestoreSOS is een gratis Windows-app rond Brent Ozars sp_DatabaseRestore: een volledige backupketen terugzetten, tot een exact tijdstip herstellen met STOPAT om de onbedoelde drop ongedaan te maken en een standby-kopie actueel houden met log shipping. (Engelstalig)

Probeer de tool →
-- fabric · parquet · duckdb TOOL

Log shipping to Fabric?

Grote SQL Server-tabellen naar Microsoft Fabric sturen voor analytics, zonder echte log shipping: SQLtoParquet exporteert tabellen naar Parquet, uploadt ze naar een Fabric-workspace en valideert met Spark. Bij elke run vergelijkt DuckDB de oude en nieuwe snapshot om precies te bepalen welke rijen zijn toegevoegd, gewijzigd of verwijderd — in plaats van de hele tabel opnieuw te exporteren. Zelfstandige Windows-executable, geen .NET-installatie nodig.

Probeer de tool →
-- C# · open source · nieuw TOOL
SQLModelViewer — interactief, automatisch gegenereerd entity-relationship-diagram van een SQL Server-database

SQLModelViewer

Interactieve ER-diagrammen voor SQL Server, automatisch gegenereerd uit het schema — als vervanging voor het databasediagram van SSMS, dat traag is, niet schaalt en geen zoek- of filterfunctie heeft. Resultaat: één zelfstandig HTML-bestand met pan/zoom, zoeken en isolate-mode, te openen in elke browser.

Bekijk op GitHub →
-- backup compression · benchmark TOOL

SQL Server 2025 Backup/Restore Compression: A Benchmark Tool

SQL Server 2025 heeft drie backup-compressiealgoritmes — MS_XPRESS, QAT_DEFLATE en ZSTD — en geen enkele wint altijd. SQLBackupCompression is een kleine Windows-tool die alle elf backup/restore-combinaties naast elkaar test op een echte database: bestandsgrootte, doorvoer en CPU-verbruik in plaats van gokken, met live CPU-detectie die QAT_DEFLATE uitschakelt op niet-Intel hardware. Broncode en een gecompileerde build staan op GitHub. (Engelstalig)

Probeer de tool →
-- errorlog · runbooks TOOL

A compass in SQL Error Atlas

Onsite maar offline vanwege security: de "SQL Error Atlas", een standalone app met vrijwel alle SQL Server errorlog-berichten plus oorzaken en oplossingen — zoeken, bladeren en runbooks, met DuckDB eronder. Zodat je bij corruptie niet in paniek de engine herstart. (Engelstalig)

Probeer de tool →
-- gratis community tool TOOL

Statistics Parser

Plak je STATISTICS IO/TIME-output en krijg direct duidelijke signalen — physical reads, worktables, scheve CPU/verstreken-tijd. Gratis, 100% in je browser, met optioneel een volledig rapport per e-mail.

Probeer de tool →
/* sql skills */

Uit de praktijk: executieplannen & indexen

Praktische artikelen over de onderwerpen waar ik dagelijks mee werk.

-- fabric · warehouse · powershell · nieuw

Fabric demo: Azure SQL and local SQL into one warehouse table

Een PowerShell-demo die één klant uit Azure SQL en één uit een lokale SQL Server in één Fabric-warehousetabel laadt, de data met T-SQL verrijkt en als rapportagetabel publiceert. Elke stap is een script en één opruimscript haalt alles weer weg. (Engelstalig)

Lees op dbaronald.nl →
-- left join · on vs where

LEFT JOIN: why your filter returns too many rows — or too few

Eén query, drie versies: boekingen filteren op het ontbreken van een factuur met status Exported of Printed levert compleet verschillende resultaten op, afhankelijk van of het filter in de ON- of de WHERE-clause staat. Eén onderliggende regel verklaart het verschil. (Engelstalig)

Lees op dbaronald.nl →
-- adaptive joins · bitmap filtering

Execution Plan: Adaptive Joins

SQL Server's adaptive join kiest tijdens executie dynamisch tussen een nested loop join en een hash join, aan de hand van een bitmap-filter (bloom filter) op transacties tegen een lijst geblokkeerde kaarten. Legt de mechaniek uit — false positives, memory grants en de rol van indexontwerp. (Engelstalig)

Lees op dbaronald.nl →
-- duckdb · columnstore

In The Ring.. On the Left Side DuckDB, on the Right Side We Have SQL Server Columnstore..

Een vergelijking van DuckDB en SQL Server Columnstore-indexen op de Backblaze drive-dataset (559+ miljoen rijen). Group by op een expressie versus een kale kolom blijkt cruciaal — een query van 4,7 seconden naar 0,058 seconden via aggregate pushdown. (Engelstalig)

Lees op dbaronald.nl →
-- inserts · last-page contention

Faster Inserts Using OPTIMIZE_FOR_SEQUENTIAL_KEY

Benchmarks tegen last-page insert contention: tot 35% sneller zodra gelijktijdige insert-sessies het aantal schedulers overschrijdt, met stabiele doorvoer van 25.000-27.000 rijen/sec — bij weinig concurrentie nauwelijks verschil. (Engelstalig)

Lees op dbaronald.nl →
-- index maintenance · fragmentatie

Index Maintenance .. the good, the bad and you decide if it's ugly..

Een oplopende IDENTITY-sleutel houdt na veel inserts ~99,7% pagedichtheid; een willekeurige GUID-sleutel eindigt op dezelfde workload op 98% fragmentatie bij 62% dichtheid. REORGANIZE versus REBUILD getest tegen Jeff Modens "Low Threshold Rebuild"-aanpak — de low-threshold strategie kostte 11x minder onderhoudstijd en eindigde tóch minder gefragmenteerd. (Engelstalig)

Lees op dbaronald.nl →
-- backup chain · LSN

Backup @CleanupTime constallations.. all green untill red?!

Een restore-keten die er groen uitziet maar breekt bij een point-in-time restore. Een diagnosescript controleert @CleanupTime-timing en backupjobs en laat zien waar de LSN-keten breekt — vertrouw op LSN's, niet op bestandsdatums. (Engelstalig)

Lees op dbaronald.nl →
-- performance monitoring · erik darling

New Kid in Town: SQL Server Performance Monitoring

Erik Darlings gratis PerformanceMonitor uitrollen op een Windows Server 2022-VM: metrics van vijf SQL Servers in een centrale PostgreSQL-store met webdashboard — .NET 10-runtime, serviceaccount, JSON-config en SQL-rechten, plus de certificaat- en service-identiteit-valkuilen. (Engelstalig)

Lees op dbaronald.nl →
-- availability groups · log backup

Your AG is healthy .. until it feels a little unwell..

Een corrupte transactionlog-backup op de primary replica — en tóch blijft de database online en meldt de Availability Group zich "gezond". Praktijkonderzoek naar het waarom, met de diagnose-aanpak in een GitHub-repo. (Engelstalig)

Lees op dbaronald.nl →
-- blocking · extended events

Blocking & Locking, please help..

Blocking systematisch vastleggen met een Extended Events-sessie op blocked_process_report, een Agent-job die elke minuut verzamelt in DBA.dbo.BlockWatch, en Erik Darlings sp_HumanEventsBlockViewer die de XML-rapporten leesbaar maakt. (Engelstalig)

Lees op dbaronald.nl →
-- parameter sniffing · PSP

Parameter Sensitive Plans (PSP) versus Parameter Sniffing

SQL Server 2022's Parameter Sensitive Plans routeren scheve parameterwaarden naar hun eigen planvariant in plaats van één plan te forceren — gedemonstreerd op het klassieke Posts.ParentId cardinaliteitsprobleem. (Engelstalig)

Lees op dbaronald.nl →
-- string functions · execution plans

Execution Plans of all String Functions

Drieëndertig T-SQL stringfuncties stuk voor stuk getest tegen StackOverflow2010, elk met het bijbehorende executieplan — van ASCII tot UPPER. (Engelstalig)

Lees op dbaronald.nl →
-- table variables · temp tables

Table Variables versus #Temp Tables

Tabelvariabelen hebben geen statistieken? Een veelgehoorde aanname — maar op recente SQL Server-versies kunnen geïndexeerde tabelvariabelen wél statistieken hebben, zichtbaar in het executieplan. (Engelstalig)

Lees op dbaronald.nl →
-- partitioning · index maintenance

You Want to Partition Your Huge Table.. Ok Fine.. Let's Go.

Hoe je een enorme bestaande tabel partitioneert met alleen metadata-only SWITCH-operaties en index seeks — zonder size-of-data operatie. (Engelstalig)

Lees op dbaronald.nl →
-- join order · execution plans

Why Join Order Can Make or Break Your Query Performance

Zeven varianten van één query op StackOverflow2013 laten zien hoe de verkeerde build/outer-kant het grootste deel van de runtime opslokt. (Engelstalig)

Lees op dbaronald.nl →
-- query plan · ai

AI and Where Does Query Time Go? Using Claude's Query Plan Analysis Skill

Een scalaire functie verstopt waar de query-tijd heen gaat. Claude's plan-analyse skill legt het bloot — inline met STRING_AGG en één index lossen het op. (Engelstalig)

Lees op dbaronald.nl →
-- query store · ai

Automate Executionplan Analysis by Skill and Query Store

Executieplannen uit Query Store automatisch laten analyseren door Erik Darlings execution plan-skill voor Claude Code — met performance-aanbevelingen als resultaat.

Lees op dbaronald.nl →
-- ai · query tuning

Is AI making an end to my job as a SQL Server query tuner?

Claude leest een executieplan en adviseert de index die een query van 73 seconden naar 435 ms brengt. Wat blijft er over voor de menselijke tuner? (Engelstalig)

Lees op dbaronald.nl →
-- query processing · serie

Craig Freedman herlezen: tien delen query processing

Freedmans klassieke blog (2006–2010) opnieuw getest op moderne SQL Server, met echte executieplannen. De leeswijzer bij alle tien delen.

Lees artikel →
-- index maintenance · bijgewerkt

IndexOptimize and additions to Ola Hallengren's dbo.CommandLog

Extra kolommen die page count, fragmentatie, omvang en duur rechtstreeks uit de ExtendedInfo-XML van dbo.CommandLog halen. (Engelstalig)

Lees op dbaronald.nl →
-- performance tuning

Executieplannen lezen: waar kijk je het eerst naar?

Een executieplan kan overweldigend zijn. Met deze vijf checks vind je in de meeste plannen binnen een paar minuten de boosdoener.

Lees artikel →
-- indexen

Index tuning: clustered, nonclustered en included columns

De juiste index maakt het verschil tussen milliseconden en minuten. Zo kies je de kolomvolgorde en wanneer INCLUDE loont.

Lees artikel →
-- alle artikelen

Meer SQL tips

Bekijk het volledige overzicht van artikelen over SQL Server, performance en Azure.

Naar het overzicht →
/* vliegen */

Van serverruimte naar cockpit

Als ik geen query's aan het tunen ben, vlieg ik met mijn eigen vliegtuig — de PH-3B7, een Tecnam P96 Golf. En eens een ontwikkelaar, altijd een ontwikkelaar: mijn eigen vliegtools bouwde ik in C#, AI-ondersteund met Claude Code.

Een trage query of een migratie die moet slagen?

Ik help graag — van een second opinion op een executieplan tot volledige Azure SQL-migraties en remote DBA-services via OpenData.nl.