Før vi diskuterer forskellen mellem logisk og fysisk datamodel, skal vi vide, hvad en datamodel er. En datamodel er en repræsentation, der beskriver dataene og forholdet mellem dem for en bestemt proces. En datamodel er en væsentlig komponent, der bruges under databasedesign. Logisk datamodel er et meget abstrakt og højt niveau af data, hvor enheder, relationer og nøgler identificeres. Det er uafhængigt af databasestyringssystemet (DBMS). En fysisk datamodel er afledt af den logiske datamodel, hvor den viser, hvordan tabeller og kolonner er struktureret den ægte fysiske database. Fysisk datamodel er derfor afhængig af det anvendte databasestyringssystem.
En logisk datamodel beskriver dataene og forholdene detaljeret på et meget højt niveau. Dette inkluderer ikke, hvordan data er fysisk repræsenteret i databasen, men beskriver på et meget abstrakt niveau. Grundlæggende inkluderer det enheder og forholdet mellem dem sammen med attributter for hver enhed.
Den logiske datamodel inkluderer primære nøgler til hver enhed og også de udenlandske nøgler. Når man opretter en logisk datamodel, identificeres de første enheder og deres forhold med nøglerne. Derefter identificeres attributter for hver enhed. Derefter løses mange til mange forhold og normaliseres. En logisk datamodel er uafhængig af databasestyringssystemet, da den ikke beskriver den faktiske databases fysiske struktur. Ved design af en logisk datamodel kan ikke-formelle lange navne bruges til enheder og attributter.
En fysisk datamodel beskriver, hvordan data virkelig findes i databasen. Det inkluderer specifikationen af alle tabeller og kolonnerne inde i dem. Tabellspecifikationen inkluderer detaljer såsom tabelnavnet, antallet af kolonner og kolonnespecifikationen inkluderer kolonnenavn og datatype. Den fysiske datamodel indeholder også de primære nøgler i hver tabel, og den viser også forholdet mellem tabeller ved hjælp af fremmede nøgler. Derudover indeholder fysiske datamodeller begrænsninger, der anvendes til data og komponenter, såsom triggere og lagrede procedurer.
Den fysiske datamodel afhænger af det anvendte databasestyringssystem. Så den fysiske datamodel for MySQL ville være anderledes end en datamodel, der er tegnet for Oracle. Når du opretter den fysiske datamodel ud fra den logiske datamodel, konverteres de første enheder til tabeller. Derefter konverteres ae konverteret til udenlandske nøglebegrænsninger. Derefter konverteres attributter til kolonner i hver tabel.
• En fysisk datamodel beskriver databasens fysiske struktur. En logisk datamodel er et højt niveau, der ikke beskriver databasens fysiske struktur.
• Fysisk datamodel er afhængig af det anvendte databasestyringssystem. Den logiske datamodel er imidlertid uafhængig af det anvendte databasestyringssystem.
• Logisk datamodel inkluderer enheder, attributter, relationer og nøgler. Fysisk datamodel inkluderer tabeller, kolonner, datatyper, primære og udenlandske nøglebegrænsninger, triggere og lagrede procedurer.
• I en logisk datamodel bruges lange ikke-formelle navne til enheder og attributter. I fysiske data bruges imidlertid forkortede formelle navne til tabelnavne og kolonnenavne.
• Den logiske datamodel er først afledt af beskrivelsen. Derefter er kun den fysiske datamodel afledt.
• Den logiske datamodel normaliseres til fjerde normalform. Den fysiske databasemodel vil blive deformaliseret om nødvendigt for at imødekomme kravene.
Resumé:
Den logiske datamodel er en datamodel på højt niveau, der beskriver enheder og forhold mellem data. Det inkluderer også attributter og nøgler til hver enhed. Dette er uafhængigt af det anvendte databasestyringssystem. På den anden side er fysiske datamodeller afledt efter den logiske datamodel, og den inkluderer strukturen i databasen inklusive specifikationen af tabeller, kolonner og nøglebegrænsninger. Denne model er forskellig i henhold til det anvendte databasestyringssystem.