Mrežni, hijerarhijski i objektni model podataka

Slides:



Advertisements
Similar presentations
Rješenje za izradu obiteljskog stabla
Advertisements

FrontPage program za izradu web stranica
Obrazac JOPPD - uvod MINISTARSTVO RADA I MIROVINSKOGA SUSTAVA.
Organizacija informacije i struktura podataka. Model podataka.
Matična ploča Mina Mirković I6.
Predavanje br. 7 Formiranje GIS-a II Relacione klase.
Formiranje GIS-a I ArcGIS – Desktop File Geodatabase
Pretraživanje interneta
Petlje WHILE – WEND.
Koncept objektno orijentiranog programiranja
RP3/predavanje08 Ugniježdeni tipovi Iznimke 10/11/2018
4.1 Vizualni (grafički) HTML uređivači
Java Hello world !.
Algoritamske/programske strukture
Nadgradnja klasa i nasljeđivanje – 3
Programi,Podaci,Varijable,Računanje- Uvod
Pristup podacima Uvod Nikola Vlahović.
v.as.mr. Samir Lemeš Univerzitet u Zenici
Programiranje - Blokovi naredbi i logički tipovi –
OSNOVE PROGRAMIRANJA U PROGRAMSKOM JEZIKU
Pojam DBMS. Relacione baze podataka
III. dio Oblikovanje i implementacija, nastavak
Java Petlje i logika - 1.
Upravljački sistemi baza podataka
CheckBox RadioButton RadioGroup
Naredbe ciklusa.
Projekat strukturnog kabliranja.
Petlje FOR - NEXT.
Klasa Konceptualna razlika: Uvodimo ključnu riječ class
Program za upravljanje projektima
RELACIONE BAZE PODATAKA
Profesor dr Boban Stojanović
KREIRANJE OBJEKATA.
1.1. (A) Koordinatna grafika
1.1. (A) Koordinatna grafika
Europski dan programiranja
IDE Visual Basic Uvod Nikola Vlahović.
Uvod u programiranje - matematika – X predavanje
Izrada web-stranica.
Elektrotehnički fakultet – Podgorica Operativni sistemi
Elementi programskog jezika PASCAL
Hyper Text Markup Language
Arrays and strings -1 (nizovi i znakovni nizovi)
Struktura MAC adrese i Ethernet okvira
MessageBox.
Računarska grafika.
OSNOVNO O BAZAMA PODATAKA
(カックロ ) Ivo Ivanišević Ena Melvan
Pojmovi digitalnog zapisa
Networking u Windows-u 2000 i Windows-u XP
UML – Unified Modeling Language
Internet FTP usluga.
1.6. Pohrana podataka.
PROGRAMSKI JEZIK PASCAL
Osnovni simboli jezika Pascal
Do While ... Loop struktura
Virtualizacija poslovnih procesa metodom „Swimlane“ dijagrama
predavanja v.as.mr. Samir Lemeš
Objektno-orijentirano programiranje
Sustavi za pracenje i vođenje procesa STATEFUL INSPECTION FIREWALL
5. Baze podataka Postavke MS Accessa.
DINAMIČKI MODEL LJUBAVI
Skup instrukcija procesora
Fakultet elektrotehnike i računarstva
Programiranje - Naredbe za kontrolu toka programa – 1. dio
10th International Conference on Live Maintenance
Elder Scroll V:Skyrim.
Dvostruka autentifikacija
Vježbenica 2: struktura grananja – 2.dio
Hour of Code Coding Jetpack Jumper Mateja Hržica, MSP.
Presentation transcript:

Mrežni, hijerarhijski i objektni model podataka Rebeka Čordaš Mateja Đumić Ana Nikolić Jelena Strišković

The logical model is the design the blueprint for the building. UVOD uvod Modeli podataka s obzirom na nivo apstrakcije: Konceptualni (ER model) Logički Fizički Logički model – aplikativni model podataka U predstavnike logičkih modela ubrajamo: Hijerarhijski model Mrežni model Relacijski model Objektni model The logical model is the design for painting, the blueprint for the building.

Mrežni model

Uvod Mrežni mode Nastao kao paralela hijerarhijskom modelu Fleksibilan način prikazivanja objekata i veza među njima Opisan skupom međusobno povezanih slogova Slog (tip, vrsta) tip entiteta, model entitet-veza

Slog Mrežni mode sadrži podatke jedne pojave entiteta sastoji se od polja koji odgovaraju atributima svako polje sadrži jednu vrijednost atributa Student povezuju se fizičkim vezama (engl. link) (srodne binarnim vezama modela entiteti-veze) Ime Prezime Br. indeksa

Dijagram strukture podataka Mrežni mode l Dijagram strukture podataka Struktura podataka mrežnog modela opisuje se dijagramomom strukture podataka (namjena jednaka dijagramu entiteti-veze) Slog se označava pravokutnikom, a veza linijom između dva sloga

Mrežni mode l Veze Tip veze: 1:1 1:M M:1 M:M

Mrežni mode l Dijagrami Veza nema atributa

Veza opisana atributima Mrežni mode l Dijagrami Veza opisana atributima

Mrežni mode l Dijagrami Ternarna veza

DBTG CODASYL mrežni model Data Base Task Group Conference On DAta SYstems Languages Prvi standard na području baze podataka izvještaj CODASYL DBTG 1971. g Zadnji važeći standard mrežnog modela datira iz 1978. g Prijedlog iz 1981. nikada nije službeno prihvaćem

Mrežni mode l Koriste se veze tipa jedan prema više (1:N) Veze tipa više-prema-više (N:N) nisu dopuštene zbog jednostavnosti implementacije modela Veze jedan-prema-jedan (1:1) predstavljaju se vezama jedan-prema-više (1:N)

Mrežni mode l Skup Fizička implementacija jedino moguće veze 1:N sastoji se od dva tipa sloga povezana u skup (engl. set) Vlasnik i član skupa Nastavnik Predmet

Mrežni mode l Svaki skup može imati više pojava skupa u čijoj se pojavi nalazi jedna pojava vlasnik i proizvoljan broj pojava člana skupa Slogovi koji sudjeluju u jednom skupu bez obzira na to jesu li vlasnici ili članovi skupa mogu istovremeno sudjelovati i u drugim skupovima

Mrežni mode l DBTG model dozvoljava složenije strukture skupova u kojima postoji jedan vlasnik i više različitih članova Polje može imati više od jedne vrijednosti Jezik pomoću kojeg upravljamo podacima sastoji se od niza naredbi (find, get, erase, sort... )

Implementacija u računalu Mrežni mode l Implementacija u računalu usmjerenim grafom: čvorovi - tipovi zapisa, lukovi definiraju veze medu tipovima zapisa koristi pokazivače koji izravno adresiraju mjesto zapisa na disku daje izvrsne povratne performanse na račun operacija poput učitavanja i reorganizacije baze podataka program održava tekući položaj i upravlja od jednog do drugog zapisa slijedeći odnose u kojima sudjeluje zapis

Hijerarhijski model

Hi j e ra r h i sk mode l Hijerarhijski model Opisuje se skupom slogova povezanih vezama (linkovima) Struktura podataka se prikazuje i dijagramom strukture podataka (oblik stabla s ishodišnim čvorom – korijenom)

Hi j e ra r h i sk mode l U stablu se može prikazati hijerarhijski odnos među slogovima (u obliku odnosa roditelj – dijete) koji odgovara vezi tipa jedan-prema-više (1:M) ili jedan-prema-jedan (1:1). Prikazuje se skupom hijerarhijskih dijagrama strukture podataka (za prikaz nekih problema, zbog ograničenosti hijerarhijskog prikaza, potreban više nego jedan dijagram)

Dijagram entiteti-veze (veza bez atributa) Hi j e ra r h i sk mode l Dijagrami Dijagram entiteti-veze (veza bez atributa)

Hijerarhijski prikazi mode l 1:1 1:M M:M

Dijagram entiteti-veze (veza sa atributom) Hi j e ra r h i sk mode l Dijagram entiteti-veze (veza sa atributom)

Hijerarhijski prikazi mode l 1:M

Hi j e ra r h i sk mode l Spajanje slogova

Transformacija složenijih veza Hi j e ra r h i sk mode l Transformacija složenijih veza može biti prilično komplicirana tijekom modeliranja hijerarhijske strukture podataka dopušteno je privremeno nacrtati i dijagrame koji nisu hijerarhijski te dijagrame kasnije treba podijeliti na više hijerarhijskih dijagrama, tako da svaki ima po jedan korijen

Dijagram entiteti-veze Hi j e ra r h i sk mode l Dijagrami Dijagram entiteti-veze (ternarna veza)

Hijerarhijski dijagram mode l Ternarna veza

Hi j e ra r h i sk mode l Transformacija dijagrama entiteti – veze u više hijerarhijskih dijagrama

neki slogovi se pojavljuju više puta zauzimanje mjesta Hi j e ra r h i sk mode l neki slogovi se pojavljuju više puta zauzimanje mjesta uvođenje prividnih slogova bez podataka prividni slogovi se sastoje samo od pokazivača na stvarni slog s podacima

XML EXtensible Markup Language (jezik za označavanje podataka) Hi j e ra r h i sk mode l XML EXtensible Markup Language (jezik za označavanje podataka) Princip realizacije: odgovarajući sadržaj treba se uokviriti odgovarajućim oznakama koje ga opisuju i imaju poznato, ili lako shvatljivo značenje XML jezik vrlo raširen i koristi se za različite namjene: odvajanje podataka od prezentacije, razmjenu podataka, pohranu podataka, povećavanje dostupnosti podataka i izradu novih specijaliziranih jezika za označavanje

Primjer <?xml version="1.0" encoding="UTF-8"?> <poruka> Hi j e ra r h i sk mode l Primjer <?xml version="1.0" encoding="UTF-8"?> <poruka> <za>Pero</za> <od>Kate</od> <naslov>Podsjetnik</naslov> <tijelo>Otiđi kupiti kruh</tijelo> </poruka>

Prvi dio je prolog ili zaglavlje. Hi j e ra r h i sk mode l Sastoji se od 2 dijela Prvi dio je prolog ili zaglavlje. <?xml version="1.0" encoding="UTF-8"?> Drugi dio je sadržaj dokumenta u kojem se nalazi korisni sadržaj omeđen XML oznakama. <poruka> <za>Pero</za> <od>Kate</od> <naslov>Podsjetnik</naslov> <tijelo>Otiđi kupiti kruh</tijelo> </poruka>

unutar korijenskog elementa ugniježđeni su svi ostali Hi j e ra r h i sk mode l mora imati jedan korijenski ili root element koji uokviruje kompletan sadržaj unutar korijenskog elementa ugniježđeni su svi ostali XML elementi međusobno mogu biti u odnosu roditelj-dijete (eng. parent-child) ili sestrinskom (eng. siblings).

Roditelj-dijete jedan element hijerarhijski je nadređen drugome. mode l Roditelj-dijete jedan element hijerarhijski je nadređen drugome. element poruka je roditelj elementu naslov (nadređen je elementu naslov) element naslov je ugniježđeni unutar elementa poruka pravilno ugniježđeni ne smije doći do preklapanja oznaka Ispravno: <poruka> ... <naslov>Podsjetnik</naslov> </poruka>   Neispravno: <poruka> ... <naslov>Podsjetnik</poruka> </naslov>

Sestrinski odnos elementi se nalaze na istoj razini Hi j e ra r h i sk mode l Sestrinski odnos elementi se nalaze na istoj razini u sljedećem primjeru element i naslov i tijelo hijerarhijski se nalaze na istoj razini.  <naslov>Podsjetnik</naslov> <tijelo>Otiđi kupiti kruh</tijelo>

Objektni model

Uvod Obj ektni Object Oriented Data Model logički model podataka koji prihvaća semantiku objekata podržanu u objektno-orijentiranom programiranju. za razliku od relacijskih baza, objektno orjentirane baze u puno brže i fleksibilnije nije ograničen unaprijed danim tipovima podataka i upitnim jezikom (kao npr. SQL) podaci se definiraju kroz objekte, a model se implementira se kroz objektnu bazu podataka u samom objektu je opisano njegovo ponašanje

Osnovni koncepti objektno orijentiranog modela ektni mode l Osnovni koncepti objektno orijentiranog modela Apstrakcija bit apstrakcije je uočavanje bitnih karakteristika objekta. Enkapsulacija usredotočava se na implementaciju koja će dovesti do željenog ponašanja

Obj ektni mode l Modularnost koncept povezan isključivo sa samim programom. Sastoji se od formiranja modula koji se mogu provoditi odvojeno i imaju dobro definirane veze prema drugim modulima Hijerarhija Hijerarhija se korist kada je broj apstrakcija u domeni toliki da je njima teško upravljati

Primjeri objektnih modela ODGM objektni model - podržava samo binarne veze tj. veze između samo dva tipa objekta ODL (Object Definition Language) - služi za definiranje strukture objektnog modela OQL (Object Query Language) - jezik standardan za objektno orijentirane baze koji se modelira poslije SQL-a

Osnove objektnog modela ektni mode l Osnove objektnog modela Objekt Struktura Atribut Subjekt Servis

Objekt Obj ektni osnovni pojam objektnih modela. mode predstavlja element, odnosno cjelinu koja se može samostalno promatrati i obrađivati apstrakcija je nečega u problemskoj domeni o čemu se prikupljaju podaci i što sadrži vrijednost svojih atributa (obilježja) i svojeg ponašanja objekti međusobno međudjeluju

Obj ektni mode l Svaki objekt ima više atributa koji ga karakteriziraju (npr. objekt Osoba ima atribute primjerice Ime, Prezime, DatumRođenja i slično) Svi slični objekti imaju isti skup atributa različitih vrijednosti i pripadaju jednoj klasi Ponašanje objekta se opisuje operacijama koje se nazivaju servisi U modelu entiteti-veze, za razliku od objekata, entiteti nemaju opis ponašanja (taj je opis dio modela procesa)

Obj ektni mode l dijelovi objekta Identitet – svaki objekt ima identifikator koji se ne mijenja Tip (klasa) – određuje strukturu i ponašanje objekta Vrijednost (stanje) – objekt ima određeno stanje dano vrijednostima atributa i postojećih veza s drugim atributima klasa je opis jednog ili više objekata koji imaju isti skup atributa i jednak opis ponašanja, tj. nacrt objekata.

VEZE IZMEĐU OBJEKATA Obj ektni linkovi mode aktivni objekti - vrše operacije nad drugim objektima dok oni miruju serveri - ne vrše operacije nad drugim objektima već se operira nad njima agenti objekti - vrše operacije nad drugim objektima,ali se operacije vrše i nad njima agregacija - jedan objekt je dio drugog

VEZE IZMEĐU KLASA Obj ektni mode l VEZE IZMEĐU KLASA Asocijacija - jedna klasa koristi usluge druge klase tako što sadrži pokazivače na objekte druge klase Naslijeđivanje - jedna klasa naslijeđuje strukturu i ponašanje druge klase ili više njih Agregacija- jedna klasa sadrži bilo samo objekte ili samo pokazivače druge klase Korištenje - jedna klasa koristi usluge druge klase

Struktura Obj ektni mode Objekti grade slične strukture kao i entiteti U raspoznavanju strukture objekata koriste se principi apstrakcije: generalizacija/specijalizacija (Gen-Spec) agregacija

Generalizacija Obj ektni mode l Generalizacija Natklasa se obično crta gore, a potklasa dolje Povezuju se linijom na kojoj simbol ukazuje na odnos klasa To odgovara ekskluzivnoj specijalizaciji modela entiteti-veze Neekskluzivna specijalizacija dobiva se kombiniranjem više Gen-Spec struktura.

Primjer Obj ektni mode l

Obj ektni mode l Agregacija sastav objekata između kojih vlada odnos cjeline i dijelova opisuje objekt (obično se crta gore) i njegove dijelove (crtaju se dolje) povezuju se linijom na kojoj simbol ukazuje na odnos objekata uz linije se označava broj (ili raspon) koji označava broj dijelova u cjelini.

Obj ektni mode l Primjer

Obj ektni mode l Atribut stanje svakog objekta je opisano vrijednostima njegovih atributa za razliku od objekata koji su stabilni, vrijednost njihovih atributa se mijenja servisima definiranim nad objektima preporuča se da svaki atribut ima samo jednu vrijednost jer se tako dobivaju jednostavniji modeli Atributi s više vrijednosti eliminiraju se iz modela uvođenjem novog objekta i uspostavom veze novog i postojećeg objekta

Obj ektni mode l identificirajući atributi ili implicitni identifikatori neki objektni modeli mogu razlikovati jednostavne i kompleksne objekte jednostavni objekt opisan je jednostavnim atributima a kompleksni objekt je objekt čiji atributi mogu biti i sami objekti

Veza pojava objekata više-prema-više ektni mode l Veza pojava objekata više-prema-više

Subjekt Obj ektni predstavlja cjelinu u problemskom području mode velika problemska područja treba rastaviti na više manjih problemskih područja-subjekata subjekte nije potrebno dalje rastavljati jer predstavljaju čitav problem kompleksnost problema određuje kada treba uvesti više subjekata.

Obj ektni mode l Servisi opisuje ponašanje objekta jedne klase (tj. procese nad podacima objekata) vrijednosti atributa objekata opisuju stanje objekata a servisi su sredstva za promjenu njihovih stanja definiraju se utvrđivanjem stanja objekata, potrebnih servisa, poruka potrebnih za pokretanje servisa i razradom detalja servisa

UTVRĐIVANJE STANJA OBJEKTA ektni mode l UTVRĐIVANJE STANJA OBJEKTA Svaki objekt prolazi kroz različita stanja koja su reprezentirana vrijednostima njegovih atributa Promjena atributa može značiti promjenu stanja objekta Uočiti to stanje znači prepoznati atribute i njihove vrijednosti Primjer: kad vrijednost atributa tekućih zaliha u objektu Skladištena roba padne ispod vrijednosti atributa minimalna zaliha, objekt prelazi u stanje ''Nedostatna količina robe'' što može značiti da objekt traži izvršenje servisa Popunjavanje zaliha robe.

UTVRĐIVANJE POTREBNIH SERVISA Obj ektni mode l UTVRĐIVANJE POTREBNIH SERVISA Postoji potreba barem za ovim servisima: formiranje novog objekta u klasi uspostavljanje ili raskidanje veze objekta s drugim objektom ili više njih čitanje ili promjena atributa objekta brisanje objekta iz klase to su implicitni servisi koji uvijek postoje

UTVRĐIVANJE PORUKE I RAZRADA DETALJA SERVISA Obj ektni mode l UTVRĐIVANJE PORUKE I RAZRADA DETALJA SERVISA Primatelj porukom dobiva nalog za obavljanje određene operacije koju treba navesti u specifikaciji servisa pošiljatelja, a potpuno definirati u specifikaciji servisa primatelja utvrđivanje poruke To znači dokumentirati ga jednom od tehnika za prikaz logike servisa razrada detalja servisa

Izrada objektnog modela ektni mode l Izrada objektnog modela sličnosti s izradom modela entiteti-veze prikupljanje i analiza informacija obavlja se po istim principima, ali s naglaskom na tome da se zahtjeva ''objektno'‘ osnovna razlika između ta dva modela je u definiranju servisa objektni model je bogatiji jer opisuje i procesnu komponentu IS pa predstavlja konceptualni opis cijelog sustava

Autocad i corelDRAW AUTOCAD CorelDRAW Najpoznatiji CAD produkt 2D te 3D projektiranje Velika preciznost CorelDRAW Uređivanje vektorske grafike Corel Corporation

UKRATKO – HIJERARHIJSKI MODEL Slogovi koji se sastoje od polja Skup slogova povezani vezama – čvorovi Hijerarhijski odnos među slogovima 1:M, 1:1 veze XML ga koristi Koncept hijerarhijskih baza podataka danas je napušten

UKRATKO – MREŽNI MODEL ZAKLJUČAK Proširenje hijerarhijskog modela Sastoji se od niza slogova međusobno povezanih vezama Veze 1:M, M:M, 1:1 Nedostatak: zahtijev da se unaprijed predvide veze među podacima “svrgnuo” ga je relacijski model

UKRATKO – objektni model Prednost: nije ograničen unaprijed danim tipovima podataka Osnovni koncepti objektno orijentiranog modela: Apstrakcija Enkapsulacija Modularnost Hijerarhija Osnove objektnog modela: Objekt Struktura Atribut Subjekt Servis

HIJERARHIJSKI MREŽNI RELACIJSKI ????? ZAKLJUČAK HIJERARHIJSKI MREŽNI RELACIJSKI ?????

Literatura L I T E R A U Branimir Dukić: Baze podataka i poslovni procesi, Osijek, 2010. M. Varga: Baze podataka; Konceptualno, logičko i fizičko modeliranje podataka,Zagreb, 1994. http://hr.wikipedia.org/wiki/XML - 02.01.2011. u 15:56 http://oliver.efos.hr/~bdukic/pdf/Hijerarhijski.pdf - 02.01.2011. u 16:08 www.mathos.hr/~valeksic/mrezni%20model%20podat aka.ppt - 02.01.2011. u 16:09 http://hr.wikipedia.org/wiki/AutoCAD - 02.01.2011. u 16:17 http://hr.wikipedia.org/wiki/CorelDRAW - 02.01. u 16:29

Grafovi i slike L I T E R A U preuzete iz knjige: M. Varga: Baze podataka; Konceptualno, logičko i fizičko modeliranje podataka,Zagreb, 1994.