1/82
Korte definities van sleutelbegrippen uit de les over relationele databases, indexen en datawarehousing, in Dutch, bedoeld als vocabulaire flashcards.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
De Wet van Moore
De observatie dat het aantal transistors in een dicht geïntegreerde schakeling ongeveer elke twee jaar verdubbelt.
Index
Een datastructuur die rijen in een tabel sneller toegankelijk maakt door een geordende weergave van gegevens te bieden; voordelen: snellere toegang, nadelen: extra opslag en tragere bewerkingen zoals UPDATE/INSERT/DELETE.
Primaire sleutel en Unieke sleutel
Kolommen die automatisch worden geïndexeerd; verwijst vaak naar sleutels die sleutels in JOINs aanduiden.
Kleurende kolommen kiezen om te indexeren
Kiezen van kolommen die vaak in zoekfuncties of ORDER BY voorkomen; vermijd kolommen met lage kardinaliteit of kolommen uit kleine tabellen.
Clustered index
Sorteert de fysieke data van een tabel op basis van de indexsleutel; kan slechts één per tabel hebben; data bevindt zich in de leaf-nodes; clustering key noemt.
Leaf-nodes
Het laatste niveau van de indexstructuur waar de daadwerkelijke data (bij clustered index) of verwijzingen (bij nonclustered) opgeslagen zijn.
Clustering key
De kolom waarop de clustered index is gebaseerd.
Query speed met clustering key
Query's die filteren of sorteren op de clustering key zijn vaak sneller.
Clustered Index Seek
Snelle zoekmethode die de indexboom doorloopt om rechtstreeks naar de juiste data te navigeren.
INCLUDE-kolommen
Kolommen die in een nonclustered index kunnen worden opgenomen zodat een query alle benodigde data kan terughalen zonder de tabel te lezen.
Nonclustered index
Een aparte structuur met kopieën van relevante kolommen plus verwijzingen (RIDs) naar de echte data; kan meerdere per tabel zijn.
RIDs (row identifiers)
Verwijzingen in een nonclustered index naar de fysieke locatie van de data in de tabel.
WHERE-clausule bij nonclustered index
Kan gebruikt worden om te filteren op specifieke voorwaarden bij het aanmaken van een nonclustered index.
Index Seek vs Index Scan
Index Seek vindt specifieke rijen via de index; Index Scan doorzoekt de gehele index wanneer de hele index wordt doorzocht.
Covering Index
Een nonclustered index die alle kolommen bevat die nodig zijn om een SELECT-query te voldoen, waardoor lezen van de tabel onnodig is.
Filtered Index
Een index waarop een WHERE-clausule is toegepast zodat alleen bepaalde rijen in de index staan.
Heap
Een tabel zonder clustered index en zonder specifieke fysieke volgorde; toegang via IAM; kan leiden tot verspreide data en prestatieproblemen.
IAM (Index Allocation Map)
Databasepagina die in SQL Server extents toewijzing bijhoudt voor een heap of index.
Table Scan
De hele tabel wordt doorzocht; inefficiënt voor grote datasets.
Index Seek
Een zoekmethode die via de index directe naar de gewenste rijen navigeert.
Transacties
Een logische werkeenheid van één of meer SQL-statement die als één geheel worden uitgevoerd; ofwel alle statements slagen, ofwel geen enkele.
Expliciete transacties
Transacties die door de gebruiker zijn gedefinieerd en bestuurd met BEGIN TRANSACTION, COMMIT en ROLLBACK.
Impliciete transacties (autocommit)
Transacties die automatisch worden aangemaakt en beheerd door het DBMS bij elke datawijziging.
Logbestand (Logfile)
Record van alle uitgevoerde transacties, gebruikt voor herstel en concurrency control, inclusief before- en after-images.
Recovery
Het proces van het terugbrengen van een database naar een consistente staat na storing.
ACID
Atomiciteit, Consistentie, Isolatie, Duurzaamheid; fundamentele eigenschappen voor betrouwbare transacties.
Atomiciteit
Een transactie wordt volledig uitgevoerd of helemaal niet; ongedaan maken bij fout.
Consistentie
Database blijft in een geldige staat; regels en constraints worden nageleefd.
Isolatie
Transacties worden onafhankelijk uitgevoerd; de uitvoering van een transactie mag anderen niet beïnvloeden.
Duurzaamheid
Wijzigingen zijn permanent na een succesvolle transactie, ook na systeemstoringen.
Transacties falen
Een transactie kan niet voltooid worden en wordt teruggedraaid (rollback).
System fail & recovery
Systeemfout: volledige systeemuitval; recoveries herstellen de DB naar consistentie, vaak via undo/redo en logbestanden.
Media fail & recovery
Fout van het opslagmedium; herstel via disk mirroring, archivering en rollforward recovery.
Disk mirroring
Real-time kopie van gegevens naar meerdere schijven voor beschikbaarheid.
Archivering
Periodiek kopiëren van databasebestanden naar andere opslagmedia als back-up.
Rollforward recovery
Herstelmethode die archivering combineert met logbestand-mirroring voor recente transacties.
Concurrency control
Beheer van meerdere gelijktijdige transacties om data-integriteit te bewaren.
Lost update
Twee transacties werken tegelijk bij hetzelfde stuk data; een update gaat verloren door gebrek aan coördinatie.
Dirty read
Lezen van data die door een andere transactie nog niet is vastgelegd.
Inconsistent analysis
Lezen van dezelfde rij meerdere keren waarbij waarden kunnen veranderen tussen lezingen.
Non-repeatable read
Bij meerdere lezingen van dezelfde rij levert een andere data op door wijzigingen van anderen.
Phantom read
Een transactie leest een set rijen; later voegen/verwijderen andere transacties rijen die aan de voorwaarden voldoen.
Schedules
Een verzameling van transacties en hun volgorde; seriële rooster vs niet-serieel rooster.
Pessimistic scheduler
Concurrency control die uitgaat van conflicten en transacties uitstelt om conflicten te vermijden.
Locking
Mechanisme om gelijktijdige toegang tot data te beheren; voorkomt conflicten.
Exclusieve lock (x-lock)
Einige transactie heeft op dat moment exclusief recht op een object; anderen kunnen niet lezen of schrijven.
Shared lock (S-lock)
Lezers kunnen lezen; schrijvers worden geblokkeerd totdat lock wordt vrijgegeven.
Two-phase locking (2PL)
Locking-protocol met twee fasen: groei (locks toewijzen) en shrink (locks vrijgeven).
Rigorous 2PL
Alle locks worden vastgehouden tot de commit; strikt naleving van 2PL.
Static 2PL
Locks zijn vooraf toegewezen aan het begin van de transactie.
Long-term lock
Lock die langer wordt vastgehouden dan nodig; verhoogt doorvoer maar kan blokkeren.
Short-term lock
Lock die alleen is voor korte duur wordt gehanteerd; wekt conflict met 2PL op.
Isolation Levels
Niveaus die bepalen hoe transacties elkaar en data beïnvloeden om anomalies te voorkomen.
Read Uncommitted
Laagste isolatie; dirty reads toegestaan; geen shared locks voor lezers.
Read Committed
Standaard; leest alleen gecommitteerde data; lezers wachten op schrijvers.
Repeatable Read
Langdurige shared locks op gelezen rijen; dezelfde rij kan meerdere keren gelezen worden.
Serializable
Sterkste isolatieniveau; voorkomt non-repeatable en phantom reads; 2PL doorgevoerd.
Deadlock
Situatie waarin twee of meer transacties elkaars locks vasthouden en elkaar wachten.
Zek ACID en recovery
ACID-principes plus recovery manager die verantwoordelijk is voor herstel.
Datawarehousing (DWH)
Geïntegreerde, onderwerp-georiënteerde, tijd-variërende en niet-vluchtige verzameling data ter ondersteuning van besluitvorming.
Business Intelligence (BI)
Proces van data verzamelen, analyseren en omzetten in bruikbare informatie voor betere beslissingen.
OLTP
Online Transaction Processing; veel kleine transacties, genormaliseerd voor consistentie.
OLAP
Online Analytical Processing; grote datasets voor rapportages en analyses, minder genormaliseerd.
Datawarehouse vs reguliere database
DWH is onderwerp-georiënteerd, geïntegreerd, tijdsvariërend en niet-vluchtig; gericht op snelle analyse.
ETL
Extractie, Transformatie en Laden; processen om data uit verschillende bronnen te halen, transformeren en in het DWH te laden.
Datamart
Subset van data gericht op de analysebehoeften van een specifieke afdeling.
Star Schema
Stam-structuur met feitentabel in het midden en rondom dimensionele tabellen; snelle queries.
Fact table
De kern van het star schema met meetbare feiten (opgetelde waarden) per gebeurtenis.
Dimension table
Beschrijvende tabellen rondom de fact table; bevatten tekstuele metadata en attributen.
Snowflake schema
Genormaliseerde variant van het star schema waarbij dimensies verder zijn onderverdeeld.
Kleine dimensies: Junk en Outrigger
Junk dimensies: laag-cardinaliteit attributen; Outrigger-tabellen: aanvullende attributen in aparte tabellen.
Slowly Changing Dimensions (SCD)
Dimensies waarvan waarden traag veranderen; Type 1/2/3 beheren historische data.
Rapid Changing Dimensions (RCD)
Dimensies waarvan waarden snel veranderen; split data in aparte tabellen om historische en actuele waarden te scheiden.
SCD Type 1
Wijzigingen overschrijven attribuut, geen historie behouden.
SCD Type 2
Wijzigingen leiden tot een nieuw rij in dimensietabel met historische data intact.
SCD Type 3
Behouden van oude en nieuwe waarden in hetzelfde record, meestal met attributen zoals begin- en einddatum.
Surrogate keys
Niet-business sleutels (surrogate) ter vervanging van business keys; handig bij veranderende business keys.
Granulariteit
Nauwkeurigheid van data; hogere granulariteit betekent meer detail en mogelijk meer rijen.
ERD vs dimensionale modellen
ERD voor OLTP-ontwerp; dimensionale modellen voor DWH/OLAP; minder redundantie, snelle analyses.
Inmon vs Kimball
Inmon: Enterprise Data Warehouse met EDW en data marts; Kimball: bus matrix en stapsgewijze data marts via ster-schema.
Surrogaat sleutels vs business keys
Surrogaat sleutels dienen als stabiele, betekenisloze integers; business keys kunnen veranderen.
Dimensietabellen en feiten
Dimensionele tabellen geven beschrijvende informatie; feitentabellen bevatten meetbare waarden.
Granulariteit van Feitentabel
Hoe gedetailleerd elke rij in de feitentabel is; hoger detail mogelijk bij hogere granulariteit.