Development & Programmeren
Waarom je App Traag Wordt bij Groeiende Datasets
Een backend-applicatie draait lokaal tijdens de ontwikkeling als een zonnetje. De testdatabase bevat immers slechts vijftien rijen per tabel. Zodra de applicatie echter naar productie gaat en na een jaar miljoenen records verwerkt, crasht het systeem onder trage laadtijden en time-outs. De nummer één oorzaak van dit soort productiestoringen is ondermaatse database-indexering en slecht geschreven SQL-queries. Ontwikkelaars behandelen de database vaak als een magische zwarte doos: je stuurt een query in en hoopt op het beste.
Hoe Werkt een Database Index? (B-Trees)
Als een database geen index heeft op een tabel met een miljoen rijen en je zoekt op SELECT * FROM users WHERE email = 'test@it-idiots.nl', dan moet de database een ‘Sequential Scan’ uitvoeren. Een Index (standaard opgebouwd als een **B-Tree** of Balanced Tree) lost dit op door gesorteerde sleutels op te slaan in een boomstructuur, waardoor de database elk record kan opzoeken in een logaritmische tijdcomplexiteit.
Volgende: Platform Engineering
