Vad är datamodellering?
Datamodellering är processen att ta fram ett diagram (dvs. ERD) av relationer mellan olika typer av information som ska lagras i en databas som hjälper oss att tänka systematiskt på de viktigaste datapunkterna som ska lagras och hämtas, och hur de ska grupperas och relateras, är vad
En datamodell beskriver information på ett systematiskt sätt som gör det möjligt att lagra och hämta den på ett effektivt sätt i ett relationellt databassystem, vilket kan ses som ett sätt att översätta logiken för att exakt beskriva saker i den verkliga världen och relationerna mellan dem till regler som kan följas och verkställas av datakod. Ett av målen med datamodellering är att skapa den mest effektiva metoden för att lagra information och samtidigt ge fullständig åtkomst och rapportering.
Entitetsrelationsdiagram för datamodellering
Ett entitetsrelationsdiagram (ERD), som ursprungligen föreslogs av Peter Chen 1976, är en visuell representation av datamodellering med hjälp av symboler och notation som beskriver hur dessa data är relaterade till varandra. Det kan direkt användas av databasutvecklare som en plan för att implementera data i specifika programvarutillämpningar. Alla objekt, t.ex. enheter, attribut för en enhet, uppsättningar av relationer och andra attribut för relationer, kan karakteriseras med hjälp av ER-diagrammet.
En ERD gör det möjligt för läsarna att förstå förhållandet mellan olika fält på ett effektivt sätt. Symboler används för att representera information på ett effektivt sätt och de hjälper också till att förstå hur databasen fungerar. ER-diagram utgör en mycket användbar teknik för datamodellering som innefattar:
- ER-diagram är lätta att förstå och kräver inte att en person genomgår en omfattande utbildning för att kunna arbeta med det på ett effektivt och korrekt sätt. Detta innebär att konstruktörer kan använda ER-diagram för att enkelt kommunicera med utvecklare, kunder och slutanvändare, oavsett deras IT-kunskaper.
- ER-diagram kan lätt översättas till relationella tabeller som kan användas för att snabbt bygga databaser.
- ER-diagram kan användas i andra sammanhang, till exempel för att beskriva olika relationer och verksamheter inom en organisation.
Elementen i ERD
ER-modellering är en top-down-struktur för databasdesign som börjar med att identifiera de viktiga data som kallas entiteter och relationer i kombination med de data som måste karakteriseras i modellen. Därefter kan konstruktörer av databasmodeller lägga till fler detaljer, t.ex. den information som de vill ha om entiteterna och relationerna som är attributen och eventuella begränsningar för entiteterna, relationerna och attributen. ER-modellering är en viktig teknik för varje databasdesigner att behärska och utgör grunden för metodiken.
Entitetstyp: Det är en grupp av objekt med samma egenskaper som av företaget identifieras som självständigt existerande. Det grundläggande begreppet i ER-modellen är entitetstypen som används för att representera en grupp ”objekt” i den ”verkliga världen” med samma egenskaper. En enhetstyp har en oberoende existens i en databas.
Attribut är egenskaper hos enheter som representeras med hjälp av ellipsformade figurer. Varje elliptisk figur representerar ett attribut och är direkt kopplad till sin enhet (som representeras som en rektangel).
En relationstyp är en uppsättning associationer mellan en eller flera deltagande enhetstyper. Varje relationstyp ges ett namn som beskriver dess funktion. Det finns fyra typer av relationer. Dessa är:
- En till en: När endast en enda instans av en entitet är associerad med relationen kallas den ”1:1”.
- En-till-många: När fler än en instans av en enhet är relaterad och kopplad till en relation kallas det ”1:N”.
- Many-to-one: När fler än en instans av en enhet är relaterad och kopplad till en relation kallas det ”1:N”: När mer än en instans av en entitet är kopplad till relationen kallas det ”N:1”.
- Many-to-many: När mer än en instans av en entitet är kopplad till relationen kallas det ”N:1”: När mer än en instans av en enhet till vänster och mer än en instans av en enhet till höger kan kopplas samman med relationen kallas det för N:N-relation.
Här är några exempel:
En till en
En till många
Många till många
En till noll eller många
Datamodeller: Konceptuell/logisk och fysisk design
ER-modellering erkänner tre olika abstraktionsnivåer på vilka modeller utvecklas. De tre nivåerna av datamodellering, konceptuell datamodell, logisk datamodell och fysisk datamodell.
Konceptuella, logiska och fysiska modeller eller ERD är tre olika sätt att modellera data i en domän. Även om de alla innehåller enheter och relationer skiljer de sig åt i fråga om de syften som de skapas för och de målgrupper som de är avsedda att rikta sig till. En allmän förståelse av de tre modellerna är att affärsanalytikern använder den konceptuella och logiska modellen för att modellera de data som krävs och produceras av systemet ur en affärsmässig synvinkel, medan databasdesignern förfinar den tidiga designen för att producera den fysiska modellen för att presentera den fysiska databasstrukturen som är redo för databaskonstruktion.
Här jämför vi dessa tre typer av datamodeller. I tabellen nedan jämförs de olika egenskaperna:
Konceptuell: En konceptuell modell bör fokusera på saker som rör verksamheten och dess krav. Den samlas in från verksamhetens krav. Enheter och relationer som modelleras i en sådan ERD definieras kring verksamhetens behov. Behovet av att tillfredsställa databasdesignen beaktas inte ännu. Konceptuell ERD är den enklaste modellen av alla.
Logisk: En logisk modell bör fokusera på utformningen av data om dessa saker, men utan hänvisning till en viss fysisk implementering. Den är mer komplex än en konceptuell modell i och med att kolumntyper fastställs. Observera att inställningen av kolonntyper är frivillig och om du gör det bör du göra det för att underlätta affärsanalysen. Det har inget att göra med skapandet av en databas ännu.
Fysiskt: En fysisk modell bör fokusera på hur logiska data ska representeras och lagras i en viss fysisk databas. Den representerar den faktiska utformningen av en relationsdatabas. Den representerar hur data ska struktureras och relateras i en specifik DBMS, så det är viktigt att ta hänsyn till konventioner och begränsningar för den DBMS du använder när du utformar en fysisk ERD. Detta innebär att det krävs en korrekt användning av datatyp för kolumner för enheter och att reserverade ord måste undvikas vid namngivning av enheter och kolumner. Dessutom kan databaskonstruktörer också lägga till primärnycklar, främmande nycklar och begränsningar i konstruktionen.
Exempel – Studentinskrivning
En allmän förståelse för de tre datamodellerna är att affärsanalytikern använder en konceptuell och logisk modell för att modellera de affärsobjekt som finns i systemet, medan databaskonstruktören eller databaseringsingenjören utarbetar den konceptuella och logiska ER-modellen för att ta fram den fysiska modellen, som presenterar den fysiska databasstrukturen, som är redo för skapandet av databasen. Här är ett annat exempel som illustrerar datamodellens tre olika nivåer.
Konceptuell datamodell
Logisk datamodell
Fysisk datamodell
Comparing Conceptual / Logical and Physical ER Model
While all the three levels of an ER model contain entities with attributes and relationships, they differ in the purposes they are created for and the audiences they are meant to target. The table below shows the difference between the three data models.
ERD features | Conceptual | Logical | Physical |
Entity (Name) | Yes | Yes | Yes |
Relationship | Yes | Yes | Yes |
Columns | Yes | Yes | |
Column’s Types | Optional | Yes | |
Primary Key | Yes | ||
Foreign Key | Yes |