Hva er hovedgrunnen til at applikasjoner bruker et DBMS i stedet for å lagre data i flate filer direkte?
- A DBMS-er er alltid raskere enn filsystemer fordi de bruker B+-trær internt til all dataaksess.
- B DBMS-er gir samtidighetskontroll, recovery, integritet og deklarative spørringer som applikasjonen ellers måtte implementert selv.
- C Filer på disk kan ikke lagre tabulære data — bare DBMS-er kan representere ekte relasjonsstruktur.
- D Operativsystemer hindrer applikasjoner fra å skrive direkte til disk, og DBMS-er omgår denne restriksjonen.
Vis fasit
Et DBMS løser fire hovedklasser av problemer som applikasjonen ellers måtte løse selv: (1) samtidighet (lost update, dirty read, ...), (2) recovery (atomær commit, durability), (3) integritet (typer, FKs, CHECK, triggere), og (4) deklarative spørringer (relasjonsalgebra/SQL i stedet for manuell traversering). I tillegg får man datauavhengighet og eksponering via views.
A er en overforenkling — DBMS-er er ofte tregere på enkel lesing av et helt filinnhold; gevinsten ligger i avansert spørringsutføring og pålitelighet. C er feil: filer lagrer fint tabulære data (CSV, parquet, ...). D er en sammenblanding med OS-tilgangskontroll.
Pensum: Kap. 1 — Introduksjon