Logical vs Physical Data Model
Innan vi diskuterar skillnaden mellan logisk och fysisk datamodell måste vi veta vad en datamodell är. En datamodell är en representation som beskriver data och relationerna mellan dem för en viss process. En datamodell är en viktig komponent som används vid databasdesign. Logisk datamodell är en mycket abstrakt och högnivåvy av data där entiteter, relationer och nycklar identifieras. Det är oberoende av databashanteringssystemet (DBMS). En fysisk datamodell härleds från den logiska datamodellen där den visar hur tabeller och kolumner är uppbyggda i den verkliga fysiska databasen. Fysisk datamodell är därför beroende av vilket databashanteringssystem som används.
Vad är logisk datamodell?
En logisk datamodell beskriver data och samband i detalj på en mycket hög nivå. Detta inkluderar inte hur data representeras fysiskt i databasen, utan beskriver på en mycket abstrakt nivå. Det inkluderar i princip entiteterna och relationerna mellan dem tillsammans med attribut för varje entitet.
Den logiska datamodellen inkluderar primärnycklar för varje enhet och även främmande nycklar. När du skapar en logisk datamodell identifieras första enheter och deras relationer med nycklarna. Sedan identifieras attribut för varje enhet. Efter det är många till många relationer lösta och normalisering görs. En logisk datamodell är oberoende av databashanteringssystemet eftersom den inte beskriver den fysiska strukturen hos den verkliga databasen. Vid design av en logisk datamodell kan icke-formella långa namn användas för entiteter och attribut.
Vad är fysisk datamodell?
En fysisk datamodell beskriver hur data verkligen finns i databasen. Den inkluderar specifikationen av alla tabeller och kolumnerna inuti dem. Tabellspecifikationen innehåller detaljer som tabellnamn, antal kolumner och kolumnspecifikation inkluderar kolumnnamn och datatyp. Den fysiska datamodellen innehåller också primärnycklarna för varje tabell och den visar också förhållandet mellan tabeller som använder främmande nycklar. Dessutom innehåller den fysiska datamodellen begränsningar som tillämpas på data och komponenter såsom triggers och lagrade procedurer.
Den fysiska datamodellen beror på vilket databashanteringssystem som används. Så den fysiska datamodellen för MySQL skulle skilja sig från en datamodell som ritats för Oracle. När den fysiska datamodellen skapas utifrån logisk datamodell konverteras de första enheterna till tabeller. Då konverteras relationer till främmande nyckelbegränsningar. Efter det konverteras attributen till kolumner i varje tabell.
Vad är skillnaden mellan logisk och fysisk datamodell?
• En fysisk datamodell beskriver databasens fysiska struktur. En logisk datamodell är en högnivåmodell som inte beskriver databasens fysiska struktur.
• Fysisk datamodell är beroende av vilket databashanteringssystem som används. Den logiska datamodellen är dock oberoende av vilket databashanteringssystem som används.
• Logisk datamodell inkluderar enheter, attribut, relationer och nycklar. Fysisk datamodell inkluderar tabeller, kolumner, datatyper, primära och främmande nyckelbegränsningar, utlösare och lagrade procedurer.
• I logisk datamodell används långa icke-formella namn för entiteter och attribut. I fysiska data används dock förkortade formella namn för tabellnamn och kolumnnamn.
• Den logiska datamodellen härleds först från beskrivningen. Efter det härleds bara den fysiska datamodellen.
• Den logiska datamodellen är normaliserad till fjärde normalform. Den fysiska databasmodellen kommer att deformaliseras om det behövs för att uppfylla kraven.
Sammanfattning:
Logical vs Physical Data Model
Den logiska datamodellen är en datamodell på hög nivå som beskriver enheter och relationer mellan data. Den innehåller också attribut och nycklar för varje enhet. Detta är oberoende av vilket databashanteringssystem som används. Å andra sidan härleds fysisk datamodell efter den logiska datamodellen och den inkluderar strukturen för databasen inklusive specifikation av tabeller, kolumner och nyckelbegränsningar. Denna modell skiljer sig beroende på vilket databashanteringssystem som används.