Modelimi i të dhënave

Download Report

Transcript Modelimi i të dhënave

David M. Kroenke
Database Processing:
Fundamentals, Design, and Implementation
Kapitulli i pestë:
Modelimi i të dhënave me anë të modelit E-R
5.1
Modelimi i të dhënave
Modelimi i të dhënave është një plan për
dizajnimin e databazës.
Modeli i të dhënave është është më i gjeneralizuar
dhe abstrakt sesa dizajnimi i databazës.
Është më lehtë të ndryshohet modeli i të dhënave
sesa të ndryshohet dizajni i databazës.
5.2
E-R Modeli
Entity-Relationship model është një bashkësi
konceptesh dhe simbolesh grafike që mund të
përdoren për të krijuar skema konceptuale.
Verzionet
– Original E-R model — Peter Chen (1976).
– Extended E-R model — Shtojcë e Chen modelit.
– Information Engineering (IE) — James Martin (1990); përdor
notacionin “crow’s foot” (këmba e sorrës), është i lehtë për ta kuptuar.
– IDEF1X — Standard nacional i zhvilluar nga National Institute of
Standards and Technology [shikoni Appendix B]
– Unified Modeling Language (UML) — The Object Management
Group; përkrah metodologjinë e orientuar në objekte [shikoni
Appendix C]
5.3
Entitetet
Diçka që mund të identifikohet dhe që
përdoruesi dëshiron ta
gjurmoj/hulumtoj
– Entity class — koleksion entitetesh të një tipit të
dhënë
– Entity instance — shfaqja e një entiteti të caktuar
Zakonisht ka më shumë instanca të një
entiteti në një klasë entiteti.
5.4
CUSTOMER:
Klasa e entitetit dhe dy instanca të entitetit
5.5
Atributet
Atributet përshkruajnë karakteristikat e
entiteteve.
Të gjitha instancat e entitetit të një klase të
dhënë i kanë atrubutet e njëjta, por variojnë
në vlerat e atzre atributeve.
Në modelimin e të dhënave, atributet
shënohen me elipsa.
5.6
EMPLOYEE:
Atributet në Elipsa
5.7
EMPLOYEE:
Atributet në drejtkëndësh
5.8
Identifikuesit
Identifikuesit janë atributet që emërojnë, ose
identifikojnë, instancat e entitetit.
Identifikuesi i një instance të entitetit përbëhet nga
një apo më shumë atribute të entiteteve.
Identifikuesit e përbërë: Identifikuesit që
përbëhen nga dy apo më shumë atribute.
Identifikuesit në modelet e të dhënave bëhen çelësa
në dizajnin e databazës:
– Entitetet kanë identifikues.
– Tabelat (ose relacionet) kanë çelësa.
5.9
Paraqitje e atributeve të entitetit
në modelimin e të dhënave
5.10
Relacionet
Entitetet mund të ndërlidhen me njëri tjetrin
në relacione:
– Klasat e relacioneve: ndërlidhje ndërmjet klasave të entitetit
– Instancat e relacioneve: ndërlidhje ndërmjet instancave të
entitetit
Në modelin orgigjinal E-R, relacionet mund
të kenë atribute por sot kjo nuk bëhet përveç
në UML.
Klasa e relacionit mund të përfshijë dy apo
më shumë klasa entiteti.
5.11
Shkalla e relacioneve
Shkalla e relacionit paraqet numrin e
klasave të entitetit në relacion:
– Dy entitete kanë relacion binar të shkallës dy.
– Tre entitete kanë relacion ternar të shkallës tre.
5.12
Relacioni binar
5.13
Relacioni ternar
5.14
Entitetet dhe Tabelat
Dallimi kryesor ndërmjet entitetit dhe
tabelës (relacionit) është se mund të
shprehet relacioni ndërmjet entiteteve
pa përdorur çelësa të jashtëm.
Kjo e bën më të lehtë punën me
entitete në fazat e hershme të dizajnit
ku ekzistenca e entiteteve dhe
relacioneve ndërmjet tyre nuk është e
sigurtë.
5.15
Kardinaliteti
Kardinaliteti nënkupton “count”
(njehsim), dhe paraqitet si numër.
Kardinaliteti maksimal është numri
maksimal i instancave të entitetit që
mund të participojnë në një relacion.
Kardinaliteti minimal është numri
minimal i instancave që mund të
participojnë në një relacion.
5.16
Kardinaliteti Maksimal
Kardinaliteti maksimal është numri
maksimal i instancave të entitetit që
mund të participojnë në një relacion.
Ekzistojnë tre tipe të kardinalitetit
maksimal:
– One-to-One [1:1]
– One-to-Many [1:N]
– Many-to-Many [N:M]
5.17
Të tre tipet e Kardinalitetit
Maksimal
5.18
Entitetet prind dhe fëmijë
Në relacionin one-to-many (një-ndaj-shumë) :
– Entiteti i anës një të relacionit quhet parent entity (entiteti
prind) ose vetëm parent (prind).
– Entiteti i anës shumë të relacionit quhet child entity (entiteti
fëmijë) ose vetëm child (fëmijë).
Në figurën më poshtë, EMPLOYEE është prindi dhe
COMPUTER është fëmija:
5.19
Relacioni HAS-A (Ka-Një)
Relacionet që janë diskutuar njihen
edhe si relacione HAS-A (KA-Një) :
– Çdo instancë e entitetit është në (ka
një) relacion me me një tjetër instancë
të entitetit:
– Një EMPLOYEE ka një ose më shumë
COMPUTER.
– COMPUTER ka një EMPLOYEE që e përdor.
5.20
Kardinaliteti Minimal
Kardinaliteti minimal është numri
minimal i instancave që mund të
participojnë në një relacion.
Minimumet në përgjithësi shënohen ose si
zero ose si një:
– NËSE është zero [0] ATËHERË participimi në relacion nga
entiteti është opcional, dhe asnjë instancë entiteti duhet të
participojë në relacion.
– NËSE është një [1] ATËHERË participimi në relacion nga
entiteti është obligativ, dhe së paku një instancë entiteti
duhet të participojë në relacion.
5.21
Shënimi i Kardinalitetit
Minimal
Siç është paraqitur në shembujt e
sllajdit të ardhshëm:
– Kardinaliteti minimal me zero [0] tregon participim
opcional dhe shënohet duke shënuar një shenjë
ovale pranë entitetit opcional.
– Kardinaliteti minimal me një [1] tregon participim
të obligueshëm (mandatory) dhe shënohet duke
vendosur vijë vertikale pranë rentitetit të
obligueshëm.
5.22
Leximi i Kardinalitetit Minimal
– NËSE shihni një shenjë ovale ATËHERË ai
entitet është opcional (kardinaliteti minimal
me zero [0]).
– NËSE shihni një shenjë si vijë vertikale
ATËHERË ai entitet është i obligueshëm
(kardinaliteti maksimal me [1]).
5.23
Tre tipet e kardinalitetit minimal
5.24
Notacioni për modelimin e të
dhënave
5.25
Notacioni për modelimin e të
dhënave : ERwin
5.26
Entitetet e varura nga ID
Entiteti e varura nga ID është një entitet
(fëmijë) identifikuesi i të cilit përfshin
identifikuesin e një entiteti tjetër (prind).
Entiteti i varur nga ID është zgjerim logjik
apo nën-njësi e prindit:
– BUILDING : APARTMENT
– PAINTING : PRINT
Kardinaliteti minimal nga entiteti i varur nga
ID te prindi është gjithmonë një.
5.27
ID-Dependent Entities
5.28
Entitetet Nëntip (Subtype)
Entiteti subtype është rast special i
sentitetit supertype (mbitip):
– STUDENT :
DERIDIPLOMIK ose MASTER
Entiteti supertype i përmban të gjitha
atributet e përgjithshme, përderisa
entitetet subtype përmbajn atribute
specifike.
Entiteti supertype mund të ketë atribut
diskriminator (dallues) që e tregon
nëntipin.
5.29
Subtypes (Nëntipe) me
Diskriminator
Diskriminatori
5.30
Subtypes: Eksluzive ose
Inkluzive
Nëse nëntipet janë eksluzive, një
mbitip ndërlidhet me më së shumti një
nëntip.
Nëse nëntipet janë inkluzive, një
mbitip mund të ndërlidhet me një apo
më shumë nëntipe.
5.31
Subtypes: Eksluzive ose Inkluzive
5.32
Subtypes (Nëntipet): IS-A (Është)
relacionet
Relacionet që lidhin mbitipet dhe nëntipet
quhen IS-A relacione, sepse nëntipi Është
(IS A) mbitip.
Identifikuesi i mbitipit dhe të gjitha nga
nëntipet e tij duhet patjetër të jenë identik,
dmth identifikuesi i mbitipit bëhet
identifikues i nëntipit të ndërlidhur.
Në OO përdoret eshe si vegël dizajnuese
(inheritance)
5.33