Grundlæggende koncepter af DBMS (databasestyringssystem)
Her er en sammenbrud af de grundlæggende koncepter i DBM'er:
1. Database:
* Definition: En struktureret samling af data, organiseret og gemt elektronisk, der skal fås, administreres og opdateres let.
* Formål: At effektivt gemme, hente og administrere oplysninger til forskellige applikationer.
* Typer:
* relationelle databaser: Data organiseret i tabeller med rækker og kolonner.
* NoSQL -databaser: Fleksible datamodeller, der ofte bruges til ustrukturerede eller semistrukturerede data.
* Objektorienterede databaser: Gemmer komplekse genstande og deres forhold.
* Grafdatabaser: Data repræsenteret som noder og kanter, ideelle til at repræsentere forhold.
2. Datamodel:
* Definition: En konceptuel repræsentation af data, der definerer struktur, forhold og begrænsninger.
* Formål: Giver en plan for, hvordan data er organiseret i en database.
* Eksempler:
* Entity-Relationship (ER) Model: Almindeligt brugt til relationelle databaser med fokus på enheder og forhold.
* Objektmodel: Brugt i objektorienterede databaser, der repræsenterer objekter og deres attributter.
3. Dataskema:
* Definition: Den specifikke implementering af en datamodel, der beskriver databasens struktur i detaljer.
* Formål: Definerer datatyper, forhold og begrænsninger, der styrer datalagring og hentning.
4. Datatyper:
* Definition: Specifikke formater til datarepræsentation.
* Eksempler:
* Tekst: Tegn (f.eks. Navne, beskrivelser).
* numerisk: Tal (f.eks. Alder, løn).
* Dato/tid: Datoer og tidspunkter.
* boolsk: Sandt eller falske værdier.
5. Dataintegritet:
* Definition: Nøjagtigheden, konsistensen og pålideligheden af dataene.
* Begrænsninger: Regler, der sikrer dataintegritet:
* Primær nøgle: Unik identifikator for hver post i en tabel.
* udenlandsk nøgle: Links tabeller ved at henvise til primære nøgler i andre tabeller.
* Datavalidering: Kontroller for gyldige datatyper og intervaller.
6. Databasesprog:
* Definition: Specialiserede sprog til interaktion med databaser.
* Typer:
* DDL (Data Definition Sprog): Bruges til at definere databaseskemaet og strukturen (f.eks. Opret tabel, alter tabel).
* DML (datamanipulationssprog): Bruges til at indsætte, opdatere, slette og hente data (f.eks. Indsæt, opdatere, slette, vælge).
* DQL (Data Query Language): Bruges til forespørgsel og hentning af data (f.eks. Vælg).
7. Databasetransaktioner:
* Definition: En række databaseoperationer, der behandles som en enkelt enhed, enten alle afsluttede med succes eller ingen.
* egenskaber (syre):
* atomicitet: Alle operationer inden for en transaktion udføres sammen eller slet ikke.
* Konsistens: Transaktioner opretholder databasens integritet.
* Isolering: Transaktioner er isoleret fra hinanden og forhindrer datakorruption.
* Holdbarhed: Når en transaktion er afsluttet med succes, gemmes dens ændringer permanent.
8. Databasesikkerhed:
* Definition: Foranstaltninger til at beskytte databasen og dens data mod uautoriseret adgang, manipulation eller ødelæggelse.
* Teknikker:
* Autentificering og autorisation: Kontrol af adgang baseret på brugeroplysninger.
* kryptering: Konvertering af data til et ulæseligt format til sikker opbevaring og transmission.
* Datamaskering: Udskiftning af følsomme data med ikke-følsomme værdier til sikkerhedsformål.
9. Databaseadministration:
* Definition: Håndtering og vedligeholdelse af databasesystemet, herunder:
* Performanceoptimering: Sikre optimal databaseydelse.
* backup og gendannelse: Oprettelse af sikkerhedskopier og gendannelse af data i tilfælde af fejl.
* Sikkerhedsadministration: Implementering og håndhævelse af sikkerhedspolitikker.
* Brugerstyring: Oprettelse og styring af brugerkonti og tilladelser.
Disse koncepter er grundlæggende for at forstå DBM'er og dens rolle i styring og anvendelse af data effektivt.