ACID-transacties
ACID-transacties zijn de vier garanties (Atomicity, Consistency, Isolation, Durability) die zorgen dat je data correct blijft, ook als een p...
Lees meerEen execution plan toont hoe een database een query gaat uitvoeren of uitgevoerd heeft. Je ziet onder meer scans, indexgebruik, joins, sorteringen en geschatte kosten.
Een execution plan is het stappenplan dat een database gebruikt om een query uit te voeren. Het toont niet alleen welke tabellen geraakt worden, maar ook hoe: via een table scan, index seek, join, sortering of aggregatie.
Dat is handig omdat SQL declaratief is. Je schrijft het gewenste resultaat, niet de route. Het execution plan laat zien welke route de query optimizer gekozen heeft.
Een compact voorbeeld:
EXPLAIN
SELECT *
FROM orders
WHERE customer_id = 42;Met een passende database-index kan het plan een index seek tonen. Zonder index zie je vaak een table scan: de database leest de hele tabel om de rijen te vinden.
De namen verschillen per database, maar je komt vaak dezelfde bouwstenen tegen.
Scan. De database leest veel of alle rijen uit een tabel of index.
Seek. De database springt gericht naar een klein bereik in een index.
Join. Twee datasets worden gekoppeld, bijvoorbeeld met nested loops, hash join of merge join.
Sort. Data wordt gesorteerd voor ORDER BY, grouping of window functions.
Aggregate. Rijen worden samengevat, bijvoorbeeld met SUM, COUNT of AVG.
Een geschat plan toont wat de database verwacht te doen. Een werkelijk plan toont wat er tijdens uitvoering gebeurde, vaak met echte aantallen rijen en timing.
Het verschil tussen geschatte en werkelijke aantallen is vaak de clue. Verwacht de optimizer tien rijen maar krijgt hij er een miljoen, dan kiest hij mogelijk een plan dat er op papier goed uitzag maar in productie slecht loopt.
Een rapport wordt traag. Je wil weten of de database scant, sorteert of verkeerd joint.
Een index lijkt niets te doen. Het plan toont of de index gebruikt wordt.
Een query verschilt per parameter. Voor één klant is het snel, voor een andere traag.
Je wil query folding controleren. Het plan kan tonen welke filters echt tot bij de database geraakt zijn.
De query optimizer is de beslisser. Het execution plan is het resultaat van die beslissing. Je leest het plan om te begrijpen wat de optimizer gekozen heeft en waarom een query wacht.
Begin bij de duurste stappen. Zoek waar veel rijen gelezen, gesorteerd of gejoined worden.
Kijk naar rijaantallen. Grote verschillen tussen schatting en werkelijkheid wijzen op slechte statistieken of data skew.
Lees context mee. Een scan is niet altijd fout. Voor kleine tabellen of brede aggregaties kan hij perfect logisch zijn.
ACID-transacties zijn de vier garanties (Atomicity, Consistency, Isolation, Durability) die zorgen dat je data correct blijft, ook als een p...
Lees meerApache Spark is een open-source engine voor grootschalige data-analyse op een cluster. Je schrijft SQL of DataFrames in Python, Scala of Jav...
Lees meerEen API of Application Programming Interface is de afgesproken manier waarop software met andere software praat. Je stuurt een verzoek in ee...
Lees meerBatchverwerking verwerkt data in blokken op vaste momenten, bijvoorbeeld elk uur of elke nacht. Het is minder direct dan streaming, maar vaa...
Lees meerEen bridge table of brugtabel is een tussentabel die een veel-op-veel-relatie in een ster-schema oplost, iets wat een gewone vreemde sleutel...
Lees meer
Zeven nieuwe Data Panda-connectors uit juni 2026, met concrete toepassingen voor rapportering, voorraad, finance, ticketing, planning en ope...
Nieuw in Microsoft Fabric? Zo verschillen een lakehouse en een warehouse, in mensentaal: wat ze doen, wanneer je wat kiest en wanneer je bei...