Loogiline vs füüsiline andmemudel
Enne kui arutame loogilise ja füüsilise andmemudeli erinevust, peame teadma, mis on andmemudel. Andmemudel on esitus, mis kirjeldab andmeid ja nendevahelisi seoseid teatud protsessi jaoks. Andmemudel on andmebaasi kujundamisel kasutatav oluline komponent. Loogiline andmemudel on väga abstraktne ja kõrgetasemeline vaade andmetest, kus tuvastatakse olemid, seosed ja võtmed. See on sõltumatu andmebaasihaldussüsteemist (DBMS). Füüsiline andmemudel tuletatakse loogilisest andmemudelist, kus see näitab, kuidas tabelid ja veerud on struktureeritud tegelikus füüsilises andmebaasis. Füüsiline andmemudel sõltub seega kasutatavast andmebaasihaldussüsteemist.
Mis on loogiline andmemudel?
Loogiline andmemudel kirjeldab andmeid ja seoseid üksikasjalikult väga kõrgel tasemel. See ei hõlma seda, kuidas andmeid andmebaasis füüsiliselt esitatakse, vaid kirjeldatakse väga abstraktsel tasemel. Põhimõtteliselt sisaldab see üksusi ja nendevahelisi suhteid koos iga olemi atribuutidega.
Loogiline andmemudel sisaldab iga olemi esmaseid võ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 paljud suhted ja normaliseeritakse. Loogiline andmemudel on andmebaasihaldussüsteemist sõltumatu, kuna see ei kirjelda tegeliku andmebaasi füüsilist struktuuri. Loogilise andmemudeli kujundamisel võib olemite ja atribuutide jaoks kasutada mitteformaalseid pikki nimesid.
Mis on füüsiliste andmemudel?
Füüsiline andmemudel kirjeldab, kuidas andmed tegelikult andmebaasis asuvad. See sisaldab kõigi tabelite ja nende sees olevate veergude spetsifikatsiooni. Tabeli spetsifikatsioon sisaldab selliseid üksikasju nagu tabeli nimi, veergude arv ja veeru spetsifikatsioon sisaldab veeru nime ja andmetüüpi. Füüsiline andmemudel sisaldab ka iga tabeli primaarvõtmeid ja näitab ka võõrvõtmeid kasutades tabelite vahelisi seoseid. Lisaks sisaldab füüsiline andmemudel andmetele ja komponentidele (nt päästikud ja salvestatud protseduurid) rakendatud piiranguid.
Füüsiline andmemudel sõltub kasutatavast andmebaasihaldussüsteemist. Seega erineks MySQL-i füüsiline andmemudel Oracle'i jaoks koostatud andmemudelist. Loogilisest andmemudelist füüsilise andmemudeli loomisel teisendatakse esimesed olemid tabeliteks. Seejärel muudetakse suhted võõrvõtmepiiranguteks. Pärast seda teisendatakse atribuudid iga tabeli veergudeks.
Mis vahe on loogilisel ja füüsilisel andmemudelil?
• Füüsiline andmemudel kirjeldab andmebaasi füüsilist struktuuri. Loogiline andmemudel on kõrgetasemeline mudel, mis ei kirjelda andmebaasi füüsilist struktuuri.
• Füüsiline andmemudel sõltub kasutatavast andmebaasihaldussüsteemist. Loogiline andmemudel on aga kasutatavast andmebaasihaldussüsteemist sõltumatu.
• Loogiline andmemudel sisaldab oleme, atribuute, seoseid ja võtmeid. Füüsiline andmemudel sisaldab tabeleid, veerge, andmetüüpe, primaar- ja võõrvõtmepiiranguid, käivitajaid ja salvestatud protseduure.
• Loogilises andmemudelis kasutatakse olemite ja atribuutide jaoks pikki mitteformaalseid nimesid. Füüsilistes andmetes kasutatakse tabelinimede ja veergude nimede jaoks aga lühendatud formaalseid nimesid.
• Loogiline andmemudel tuletatakse esm alt kirjeldusest. Pärast seda tuletatakse ainult füüsiline andmemudel.
• Loogiline andmemudel normaliseeritakse neljandale normaalkujule. Füüsilise andmebaasi mudelit deformeeritakse, kui see on nõuete täitmiseks vajalik.
Kokkuvõte:
Loogiline vs füüsiline andmemudel
Loogiline andmemudel on kõrgetasemeline andmemudel, mis kirjeldab oleme ja andmete vahelisi seoseid. See sisaldab ka iga olemi atribuute ja võtmeid. See ei sõltu kasutatavast andmebaasihaldussüsteemist. Teisest küljest tuletatakse füüsiline andmemudel pärast loogilist andmemudelit ja see sisaldab andmebaasi struktuuri, sealhulgas tabelite, veergude ja võtmepiirangute spetsifikatsiooni. See mudel erineb kasutatavast andmebaasihaldussüsteemist.