Enne loogilise ja füüsilise andmemudeli erinevuse arutamist peame teadma, mis on andmemudel. Andmemudel on esitus, mis kirjeldab andmeid ja nendevahelisi seoseid teatud protsessi jaoks. Andmemudel on oluline komponent, mida kasutatakse andmebaasi kujundamisel. Loogiline andmemudel on väga abstraktne ja kõrgetasemeline vaade andmetele, kus on tuvastatud üksused, seosed ja võtmed. See on andmebaasihaldussüsteemist (DBMS) sõltumatu. Füüsiline andmemudel tuletatakse loogilisest andmemudelist, kus see näitab, kuidas tabelid ja veerud on struktureeritud reaalse füüsilise andmebaasi jaoks. Füüsiliste andmete mudel sõltub seega kasutatavast andmebaasihaldussüsteemist.
Loogiline andmemudel kirjeldab andmeid ja seoseid väga kõrgel tasemel. See ei hõlma andmete füüsilist esitamist andmebaasis, vaid kirjeldab väga abstraktsel tasemel. Põhimõtteliselt hõlmab see olemeid ja nendevahelisi suhteid koos iga olemi atribuutidega.
Loogiline andmemudel sisaldab iga olemi primaarvõtmeid ja ka võõrvõtmeid. Loogilise andmemudeli loomisel tuvastatakse võtmetega esimesed olemid ja nende seosed. Seejärel tuvastatakse iga olemi atribuudid. Pärast seda lahendatakse paljudest suhetest palju ja normaliseeritakse. Loogiline andmemudel on andmebaasihaldussüsteemist sõltumatu, kuna see ei kirjelda päris andmebaasi füüsilist struktuuri. Loogilise andmemudeli kujundamisel saab üksuste ja atribuutide jaoks kasutada mitteformaalseid pikki nimesid.
Füüsiline andmemudel kirjeldab, kuidas andmed tegelikult andmebaasis asuvad. See sisaldab kõigi tabelite ja nende sees olevate veergude spetsifikatsioone. Tabeli spetsifikatsioon sisaldab üksikasju, näiteks tabeli nimi, veergude arv ja veergude spetsifikatsioon sisaldab veeru nime ja andmetüüpi. Füüsiline andmemudel sisaldab ka iga tabeli primaarvõtmeid ja ka tabelit, mis kasutab võõraid võtmeid. Lisaks sisaldab füüsiline andmemudel andmete ja komponentide, näiteks päästikute ja salvestatud protseduuride suhtes kohaldatavaid piiranguid.
Füüsilise andmemudel sõltub kasutatavast andmebaasihaldussüsteemist. Nii et MySQL-i füüsiline andmemudel erineks Oracle'i jaoks koostatud andmemudelist. Füüsilise andmemudeli loomisel loogilisest andmemudelist teisendatakse esimesed üksused tabeliteks. Seejärel teisendatakse suhted võõraste võtmepiiranguteks. Pärast seda teisendatakse atribuudid iga tabeli veergudeks.
• Füüsilise andmemudel kirjeldab andmebaasi füüsilist struktuuri. Loogiline andmemudel on kõrgetasemeline mudel, mis ei kirjelda andmebaasi füüsilist struktuuri.
• Füüsiliste andmete mudel sõltub kasutatavast andmebaasihaldussüsteemist. Loogiline andmemudel on aga kasutatavast andmebaasihaldussüsteemist sõltumatu.
• Loogiline andmemudel sisaldab üksusi, atribuute, seoseid ja võtmeid. Füüsiliste andmete mudel sisaldab tabeleid, veerge, andmetüüpe, esmase ja võõra võtme piiranguid, päästikuid ja salvestatud protseduure.
• Loogilises andmemudelis kasutatakse üksuste ja atribuutide jaoks pikki mitteformaalseid nimesid. Füüsilistes andmetes kasutatakse aga tabelinimede ja veergude nimede puhul lühendatud formaalseid nimesid.
• Loogiline andmemudel tuletatakse kõigepealt kirjeldusest. Pärast seda tuletatakse ainult füüsiliste andmete mudel.
• Loogiline andmemudel normaliseeritakse neljandaks normaalvormiks. Füüsilise andmebaasi mudel deformeeritakse vajaduse korral nõuete täitmiseks.
Kokkuvõte:
Loogiline andmemudel on kõrgetasemeline andmemudel, mis kirjeldab olemeid ja seoseid andmete vahel. See sisaldab ka iga olemi atribuute ja võtmeid. See on kasutatavast andmebaasihaldussüsteemist sõltumatu. Teisest küljest tuletatakse füüsiline andmemudel pärast loogilist andmemudelit ja see sisaldab andmebaasi ülesehitust, sealhulgas tabelite, veergude ja võtmepiirangute spetsifikatsioone. See mudel erineb kasutatava andmebaasihaldussüsteemi järgi.