Ennen kuin keskustelemme loogisen ja fyysisen datamallin välisestä erotuksesta, meidän on tiedettävä, mikä datamalli on. Datamalli on esitys, joka kuvaa tietoja ja niiden välisiä suhteita tietyssä prosessissa. Tietomalli on olennainen osa tietokannan suunnittelussa. Looginen tietomalli on hyvin abstrakti ja korkeatasoinen näkymä tiedosta, jossa entiteetit, suhteet ja avaimet tunnistetaan. Se on riippumaton tietokannan hallintajärjestelmästä (DBMS). Fyysinen datamalli johdetaan loogisesta datamallista, jossa se osoittaa, kuinka taulukot ja sarakkeet on rakennettu todellinen fyysinen tietokanta. Fyysinen datamalli on siten riippuvainen käytetystä tietokannan hallintajärjestelmästä.
Looginen tietomalli kuvaa tietoja ja suhteita yksityiskohtaisesti erittäin korkealla tasolla. Tähän ei kuulu se, miten tiedot fyysisesti esitetään tietokannassa, mutta se kuvaa hyvin abstraktia tasoa. Se sisältää pohjimmiltaan entiteetit ja niiden väliset suhteet kunkin kokonaisuuden ominaisuuksien kanssa.
Looginen datamalli sisältää kunkin yksikön ensisijaiset avaimet ja myös vieraat avaimet. Loogista datamallia luotaessa avaimet tunnistavat ensin entiteetit ja niiden suhteet. Sitten kunkin yksikön määritteet tunnistetaan. Sen jälkeen monien suhteet on ratkaistu ja normalisointi on tehty. Looginen tietomalli on riippumaton tietokannan hallintajärjestelmästä, koska se ei kuvaa todellisen tietokannan fyysistä rakennetta. Loogista tietomallia suunnitellessasi yksiköille ja määritteille voidaan käyttää epävirallisia pitkiä nimiä.
Fyysinen datamalli kuvaa, kuinka data todella sijaitsee tietokannassa. Se sisältää kaikkien taulukkojen ja niiden sisällä olevien sarakkeiden määritykset. Taulukkotiedot sisältävät yksityiskohdat, kuten taulukon nimen, sarakkeiden lukumäärän ja sarakkeen määritykset sisältävät sarakkeen nimen ja tietotyypin. Fyysinen datamalli sisältää myös kunkin taulukon ensisijaiset avaimet ja se myös näyttää taulukkojen välisen suhteen vieraita avaimia käyttämällä. Lisäksi fyysinen datamalli sisältää tietoihin ja komponentteihin, kuten liipaisimiin ja tallennettuihin menettelyihin, sovelletut rajoitukset.
Fyysinen datamalli riippuu käytetystä tietokannan hallintajärjestelmästä. Joten MySQL: n fyysinen datamalli olisi erilainen kuin Oraclen piirretty datamalli. Kun fyysistä datamallia luodaan loogisesta tietomallista, ensimmäiset kokonaisuudet muunnetaan taulukoiksi. Sitten suhteet muunnetaan ulkomaisiksi avainrajoituksiksi. Tämän jälkeen määritteet muunnetaan kunkin taulukon sarakkeiksi.
• Fyysinen datamalli kuvaa tietokannan fyysistä rakennetta. Looginen tietomalli on korkea taso, joka ei kuvaa tietokannan fyysistä rakennetta.
• Fyysinen datamalli riippuu käytetystä tietokannan hallintajärjestelmästä. Looginen datamalli on kuitenkin riippumaton käytetystä tietokannan hallintajärjestelmästä.
• Looginen datamalli sisältää entiteetit, määritteet, suhteet ja avaimet. Fyysinen datamalli sisältää taulukot, sarakkeet, tietotyypit, ensisijaisen ja vieraan avaimen rajoitukset, liipaisimet ja tallennetut menettelyt.
• Loogisessa datamallissa entiteetteille ja määritteille käytetään pitkiä epävirallisia nimiä. Fyysisissä tiedoissa taulukkojen ja sarakkeiden nimiin käytetään kuitenkin lyhennettyjä muodollisia nimiä.
• Looginen datamalli johdetaan ensin kuvauksesta. Sen jälkeen johdetaan vain fyysinen datamalli.
• Looginen datamalli normalisoidaan neljään normaalimuotoon. Fyysinen tietokantamalli deformalisoidaan tarvittaessa vaatimusten täyttämiseksi.
Yhteenveto:
Looginen datamalli on korkean tason datamalli, joka kuvaa yksiköitä ja suhteita datan välillä. Se sisältää myös kunkin entiteetin määritteet ja avaimet. Tämä on riippumaton käytetystä tietokannan hallintajärjestelmästä. Toisaalta fyysinen datamalli johdetaan loogisen datamallin jälkeen ja se sisältää tietokannan rakenteen, mukaan lukien taulukkojen, sarakkeiden ja avainrajoitusten määrittelyt. Tämä malli on erilainen käytetyn tietokannan hallintajärjestelmän mukaan.