Et databasestyringssystem (DBMS) er et komplekst softwaresystem med forskellige sammenkoblede moduler, der arbejder sammen for at administrere og få adgang til data. Her er de vigtigste moduler for en DBMS:
1. Data Definition Language (DDL)
* funktion: Definerer strukturen af databasen, herunder oprettelse, ændring og sletning af tabeller, indekser og andre databaseobjekter.
* Eksempler: Opret tabel, alter tabel, drop -tabel.
2. Data Manipulation Language (DML)
* funktion: Tillader brugere at indsætte, hente, opdatere og slette data i databasen.
* Eksempler: Indsæt, vælg, opdater, slet.
3. Datakontrolsprog (DCL)
* funktion: Giver kontrol over datatilgang og sikkerhed, herunder tildeling og tilbagekaldelse af brugertilladelser.
* Eksempler: Grant, tilbagekaldelse.
4. Data Query Language (DQL)
* funktion: Gør det muligt for brugere at hente specifikke data fra databasen ved hjælp af strukturerede forespørgsler.
* Eksempler: Vælg udsagn (inklusive sammenføjninger, hvor klausuler osv.)
5. Storage Manager:
* funktion: Ansvarlig for styring af fysisk opbevaring af data på disk, tildeling af lagerplads og hentning af data effektivt.
* inkluderer:
* filleder: Administrerer de fysiske filer og opbevaringsfordeling.
* Buffer Manager: Administrerer dataoverførslen mellem hovedhukommelsen og disken.
* Access Method Manager: Giver forskellige måder at få adgang til data på (sekventiel, indekseret osv.).
6. Transaktionsadministrator:
* funktion: Sikrer dataintegritet og konsistens under samtidig adgang fra flere brugere. Det håndterer:
* samtidighedskontrol: Forhindrer data uoverensstemmelser i at flere brugere får adgang til og opdaterer de samme data samtidigt.
* Gendannelsesstyring: Gendanner databasen til en konsekvent tilstand i tilfælde af fejl eller nedbrud.
7. Sikkerhedschef:
* funktion: Beskytter databasen mod uautoriseret adgang og sikrer dataintegritet. Dette involverer:
* Autentificering: Verificerer brugeridentiteter og giver adgang baseret på tilladelser.
* Tilladelse: Bestemmer, hvilke operationer brugere kan udføre på forskellige dele af databasen.
* revision: Spor databaseaktiviteter og identificerer mistænkelige eller uautoriserede handlinger.
8. Catalog Manager (Data Dictionary):
* funktion: Butikker metadata om selve databasen, herunder tabeldefinitioner, datatyper, indekser, forhold og anden vigtig information.
* giver information til:
* Data definition og manipulation.
* Forespørgseloptimering.
* Datatilgangskontrol.
9. Forespørgselsprocessor:
* funktion: Tager brugerforespørgsler (DQL), analyserer dem, optimerer dem og genererer en eksekveringsplan for databasen for at hente de ønskede data.
10. Brugergrænseflade (UI):
* funktion: Giver en måde for brugerne at interagere med DBMS, herunder:
* Kommandolinjegrænseflade (CLI): En tekstbaseret grænseflade til udførelse af SQL-kommandoer.
* Grafisk brugergrænseflade (GUI): En visuel grænseflade med værktøjer til styring af databaseobjekter og adgang til data.
11. Anvendelsesprogrammeringsgrænseflade (API):
* funktion: Tilvejebringer et sæt funktioner og protokoller, der giver andre applikationer mulighed for at interagere med DBMS. Dette muliggør:
* Integration af databasefunktionalitet i andre softwaresystemer.
* Udvikling af brugerdefinerede applikationer, der bruger databasedata.
Disse moduler fungerer på en koordineret måde for at give en omfattende platform til styring og adgang til data effektivt og sikkert. Forskellige DBMS'er kan implementere disse moduler på forskellige måder, men kernefunktionaliteterne forbliver ens.