Tehnologija upravljanja podatkov

Podobni dokumenti
Podatkovni model ER

PRIPOROČILA ZA OBLIKOVANJE KATALOGOV ZNANJA ZA MODULE V PROGRAMIH VIŠJEGA STROKOVNEGA IZOBRAŽEVANJA

Chapter 1

Diapozitiv 1

Microsoft Word - M docx

Microsoft PowerPoint - PIS_2005_03_02.ppt

Microsoft PowerPoint - OAPS1- Uvod.ppt

CMSC 838T Lecture

Slide 1

UČNI NAČRT PREDMETA / COURSE SYLLABUS Predmet: Podatkovne baze 2 Course title: Data bases 2 Študijski program in stopnja Study programme and level Vis

predstavitev fakultete za matematiko 2017 A

Komisija za študijske zadeve UL Medicinske fakultete Vrazov trg 2 SI-1000 Ljubljana E: T: Režim študija Predmet: Uvod

Microsoft PowerPoint - IPPU-V2.ppt

Protege, I.Savnik

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni

1. IDENTIFIKACIJA PODATKOVNEGA NIZA 1.1 Naslov Strukturno-tektonska karta Slovenije 1: Alternativni naslov Strukturno-tektonska karta Slove

Kazalo 1 DVOMESTNE RELACIJE Operacije z dvomestnimi relacijami Predstavitev relacij

3

PowerPoint Presentation

Microsoft PowerPoint - MSPO_4_DiagramiVpliva.pptx

Microsoft PowerPoint - Sequi_SecDAy.ppt

Microsoft Word - M doc

Macoma katalog copy

Šolski center Celje Srednja šola za kemijo, elektrotehniko in računalništvo ELEKTRONSKA REDOVALNICA RAZISKOVALNA NALOGA AVTORJI Aleš Budna Jure Ulaga

Microsoft Word - ELEKTROTEHNIKA2_ junij 2013_pola1 in 2

Osnove verjetnosti in statistika

LAMP, MEAN, ANNE – kaj izbrati za razvoj spletne aplikacije?

UČNI NAČRT PREDMETA / COURSE SYLLABUS Predmet: Podatkovne baze 1 Course title: Data bases 1 Študijski program in stopnja Study programme and level Vis

UPRAVLJANJE RAZPRŠENIH PODATKOV Shranjevanje, zaščita in vzdrževanje informacij, ki jih najbolj potrebujete

PowerPointova predstavitev

Zapisnik 1

II-RIS-Primer Seminarske Naloge Redni-LJ

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Milan Derlink Testiranje primernosti uporabe NoSQL v okviru računovodske aplikacije DIP

PKP projekt SMART WaterNet_Opis

Vaja 3 Kopiranje VM in namestitev aplikacij - strežnik SQL 2000 SP3a A. Lokalni strežnik Vmware ESX Dodajanje uporabnikov vajexx v skupino Vaje

Event name or presentation title

EU-TPD 1 PODROBNOSTI KODIRANJA Informacije za trgovino JB za DCTA, (Final 1.2) Obveznost kodiranja izdelka, urejena s predpisom EU-TPD se n

Document ID / Revision : 0519/1.3 ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov

SPLOŠNE INFORMACIJE

Datum in kraj

SQL doc. dr. Evelin Krmac RELACIJSKE PODATKOVNE BAZE Relacijski model organizacije podatkov podatki predstavljeni preko relacij 2D tabel operacije se

PowerPoint Presentation

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA

Microsoft PowerPoint - UN_OM_G03_Marketinsko_raziskovanje

Priloga k pravilniku o ocenjevanju za predmet LIKOVNA UMETNOST. Ocenjujemo v skladu s Pravilnikom o preverjanju in ocenjevanju znanja v srednjih šolah

POTEK POUKA TUJIH JEZIKOV - dolžnost učencev je, da redno in točno obiskujejo pouk, - pri pouku sodelujejo, pišejo zapiske - k pouku redno prinašajo u

Microsoft PowerPoint - Lapajne&Randl2015.pptx

5 SIMPLICIALNI KOMPLEKSI Definicija 5.1 Vektorji r 0,..., r k v R n so afino neodvisni, če so vektorji r 1 r 0, r 2 r 0,..., r k r 0 linearno neodvisn

Razpis - podiplomski študij

Turingov stroj in programiranje Barbara Strniša Opis in definicija Definirajmo nekaj oznak: Σ abeceda... končna neprazna množica simbolo

Microsoft Word - CNC obdelava kazalo vsebine.doc

Microsoft Word - 021_01_13_Pravilnik_o_zakljucnem delu

Predmetnik programa Družboslovna informatika, smer Digitalne tehnologije in družba (DI-DTID) 1. letnik Zimski semester Poletni semester # Naziv predme

[ Univerza v Ljubljani ] [ english ] Imenik sodelavcev Študij fizike Študij matematike

Slajd 1

Vse na svojem mestu. informacijski sistem za vodenje skladišč

Univerzitetni študijski program Fizika I

PowerApps

1. letnik MAGISTRSKI ŠTUDIJSKI PROGRAM LESARSTVO, 2. stopnja 2018/19 Število študentov: 12+1 Mentor letnika: prof. dr. Manja Kitek Kuzman III. BLOK 18

1 MMK - Spletne tehnologije Vaja 5: Spletni obrazci Vaja 5 : Spletni obrazci 1. Element form Spletni obrazci so namenjeni zbiranju uporabniških podatk

PowerPointova predstavitev

Slide 1

Vzpostavitev več nivojske varnostne infrastrukture S pomočjo Elektro Maribor, McAfee SIEM, CISCO ISE, NGFW Zorna Varga, Sfera IT d.o.o in Klemen Bačak

Diapozitiv 1

Računalniški praktikum Projektna naloga - Izdelava spletne strani Avtor: Matej Tekavčič Skupina: Matej Tekavčič - koordinator Simon Vrhovnik Tine Kavč

Uporaba informacijsko komunikacijske tehnologije v naravoslovju in tehniki

-

PROJECT OVERVIEW page 1

-

Slide 1

Microsoft Word - NAJBOLJ POGOSTA VPRAŠANJA IN ODGOVORI.docx

Diapozitiv 1

Microsoft Word - M docx

Vaja 2 Virtualizacija fizičnih strežnikov in virtualni PC A. Strežnik Vmware ESX Namestitev strežnika VMware ESX 3.5 na fizični strežnik 2. Nas

SPLETNA PRIJAVA NA IZPITE ZA DIJAKE Dijaki se na izpite prijavite na novem portalu novi.lopolis.si z istim uporabniškim imenom in geslom, kot ga upora

Orodje za izvoz podatkov

Microsoft Word - M _mod..docx

INDUSTRIJA 4.0: PRILOŽNOSTI DIGITALNE PREOBRAZBE PROCESA RAZVOJA BARV IN PREMAZOV TOMAŽ KERN, BENJAMIN URH, MARJAN SENEGAČNIK, EVA KRHAČ

Nove različice programske opreme GE Podjetje GE Digital, vodilni svetovni proizvajalec programske opreme za področje avtomatike, je izdalo kar nekaj n

Ime in priimek: Vpisna št: FAKULTETA ZA MATEMATIKO IN FIZIKO Oddelek za matematiko Verjetnost Pisni izpit 5. februar 2018 Navodila Pazljivo preberite

FAKULTETA ZA ORGANIZACIJSKE VEDE Kidričeva cesta 55a, 4000 Kranj Tel.: (04) (04) E pošta: Splet

Vprašanja za 2. izpitno enoto poklicne mature Strokovni predmet NPA Vprašanja Visual C# (4. letnik) 1. Uporabniški vmesnik razvojnega okolja Visual C#

IND-L Zakon o državni statistiki (Uradni list RS, št. 45/95 in št. 9/01) Letni program statističnih raziskovanj za leto 2011 (Uradni list RS, št. 92/1

DES

TEHNIČNA DOKUMENTACIJA

EVROPSKA PRAVNA FAKULTETA V NOVI GORICI

PowerPointova predstavitev

SENAT UL 2. SEJA DNE Številka: /2017 Datum: Ljubljana, TOČKA: Pravilnik o delovni in pedagoški obveznosti visokošol

Osnove statistike v fizični geografiji 2

Microsoft Word - vprasalnik_AZU2007.doc

Kazalnik dostopa do pitne vode dobre mikrobiološke kakovosti v Sloveniji - pojasnilo: Kazalnik dostopa do pitne vode dobre mikrobiološke kakovosti v S

PowerPointova predstavitev

Univerza v Mariboru

Gradbeništvo kot Industrija 4.0

Microsoft PowerPoint - 14 IntrerspecifiOna razmerja .ppt

Prezentacija Telekoma Slovenije

Poročilo za 1. del seminarske naloge- igrica Kača Opis igrice Kača (Snake) je klasična igrica, pogosto prednaložena na malce starejših mobilnih telefo

PREDLOG SPREMEMB STATUTA UNIVERZE V LJUBLJANI

VAJE RID 1 (4), program PTI, šol

Transkripcija:

Tehnologija upravljanja podatkov Univerzitetni študij RI in UI, 3. letnik Magistrski študij Matjaž Kukar, 2020/21

Splošne informacije... Predavanja Izr. prof. dr. Matjaž Kukar, sreda 11:15, matjaz.kukar@fri.uni-lj.si Govorilne ure: Vaje:???, kabinet 2.04 (2. nadstropje, desno od dvigala) Doc. dr. Luka Šajn Spletna stran: Tehnologija upravljanja podatkov https://ucilnica.fri.uni-lj.si

Upravljanje s podatki (data management) Definicija (Data Management Association DAMA) Upravljanje s podatki sestavljajo razvoj in izvajanje arhitektur, usmeritev in praktičnih postopkov za podporo celotnemu življenjskemu ciklu podatkovnih potreb sodobnega podjetja. V kontekstu informacijskih tehnologij: Tehnologija upravljanja podatkov = napredne teme s širšega področja podatkovnih baz

Pričakovano predznanje Nadgradnja predmeta "Osnove podatkovnih baz" Opisovanje in shranjevanje podatkov v PB Zgradba SUPB, upravljanje z diskom in pomnilnikom Organizacija in indeksiranje datotek Poizvedovanje v PB Relacijski podatkovni model, algebra in račun; SQL Načrtovanje PB Pristopi k načrtovanju PB Konceptualno, logično in fizično modeliranje??? Nadgradnja predmetov "Programiranje 1 in 2" Osnovno znanje programiranja in uporabe orodij Razvoj informacijskih sistemov Presek nekaterih tem (predvsem načrtovanje)

Predpriprava na predavanja in vaje Primeri na predavanjih-vajah v Pythonu. Ga poznate? Uradna Python dokumentacija, http://docs.python.org J. Demšar: Python za programerje. FRI, Ljubljana, 2009. Learn Python the hard way, http://learnpythonthehardway.org/book/ Learn Python (interaktivno), http://www.learnpython.org/ Aktualna verzija (oktober 2019): Pyton 3.7 (priporočena distribucija Anaconda) Zakaj raje Python kot npr. Java: manjši obseg pisanja (večina primerov na enem zaslonu) hitrejše programiranje uporaba v podatkovni znanosti

Vsebina predavanj Eksterni vidiki obvladovanja podatkov: Načrtovanje podatkovnih baz Konceptualno, logično in fizično načrtovanje Normalizacija relacij Analiza uporabniških zahtev Podatkovne baze in podatkovna skladišča Namen in načrtovanje podatkovnih skladišč Zagotavljanje kvalitete shranjenih podatkov Analiza shranjenih podatkov (OLAP, Data Mining) Sodobne nerelacijske podatkovna baze (NoSQL) Dokumentne: MongoDB, grafne: Neo4j, stolpične: MonadDB vaše izkušnje?

Vsebina predavanj Interni vidiki obvladovanja podatkov: Dostop do podatkov Zagotavljanje dostopnosti in konsistentnosti podatkov (upravljanje s transakcijami) Upravljanje sočasnosti dostopa do podatkovne baze Varovanje in obnavljanje podatkovne baze Relacijska algebra in SQL (ponovitev) Optimizacija in evalvacija poizvedb Načrtovanje izvajanja poizvedb Vrednotenje zahtevnosti osnovnih operacij Alternativne strategije izvajanja poizvedb Upravljanje delno strukturiranih in nestrukturiranih podatkov JSON, XML, prostorski podatki, tekst, zvok, slika

Splošna literatura 1. Relacijski SUPB a) Thomas M. Connolly, Carolyn E. Begg (2005). Database Systems, A Practical Approach to Design, Implementation and Management, Fourth Edition, Addison-Wesley b) Ramez Elmasri, Shamkant B. Navathe (2003). Fundamentals of Database Systems, Fourth Edition, Addison Wesley c) S. Sumathi, S. Esakkirajan: Fundamentals of Relational Database Management Systems, Springer, 2007 d) Peter Rob, Carlos Coronel (2005). Database Systems: Design, Implementation and Management, Sixth Edition, Addison Wesley e) Raghu Ramakrishnan, Johannes Gehrke (2003). Database Management Systems, Third Edition, McGraw-Hill f) Paul Wilton and John W. Colby (2005): Beginning SQL, Wrox

Splošna literatura 1. Nerelacijski (NoSQL) SUPB a) Eric Redmond and Jim R. Wilson: Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement, Pragmatic Bookshelf, 2012 b) Ian Robinson, Jim Webber and Emil Eifrem: Graph Databases, O Riley (free download) https://neo4j.com/graph-databases-book/ c) Dan McCreary and Ann Kelly: Making Sense of NoSQL: A guide for managers and the rest of us, Manning Publications, 2013 d) Pramod J. Sadalage and Martin Fowler: NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence, Addison-Wesley, 2012 e) Alex Giamas: Mastering MongoDB 3.x: An expert s guide to building faulttolerant MongoDB applications, Apress, 2017

Vsebina vaj I. Praktična obravnava nekaterih tem s predavanj Spoznavanje s programsko opremo Načrtovanje podatkovne baze in podatkovnega skladišča Programski dostop do PB Normalizacija, priprave na normalizacijo, denormalizacija Transakcije Optimizacija poizvedb Nerelacijski SUPB II. Domače naloge (vsaj 50%) III. Seminarska naloga v obliki projekta (vsaj 50%) Na koncu semestra (december, januar) Nekoliko obsežnejša kot domače naloge Obvezen predstavitveni seminar (vaje ali predavanja) Pravočasnost izdelave, oddaje in zagovora!

Orodja PowerDesigner 12.5 MariaDB 10.3 (ali MySQL 8) PostgreSQL 10 MySQL Workbench, HeidiSQL Python 3.7 + dodatki MongoDB, Neo4j, MonadDB Gonilniki za dostop do baze (npr. ODBC) Lastni računalniki? Docker?

Izpitni red 1. Obveznosti vaj: iz domačih nalog in seminarske naloge morate doseči posamično najmanj 50% možnih točk (pogoj za pristop k pisnemu izpitu). 2. Pisni izpit morate za pozitivno oceno pisati najmanj 50% 3. Vaje veljajo eno šolsko leto! 4. Sodelovanje na predavanjih/vajah se nagrajuje (subjektivno, do 10%) Torej: domače naloge 50%, seminarska naloga 50%, izpit 50%

Predznanje?????? Programiranje: Python, Java, C/C++/C#, Programski dostop do podatkovne baze Načrtovanje podatkovnih baz (ER): OPB, RIS Normalizacija PB: RIS SUPB: MySQL/MariaDB, PostgreSQL, SQLite, Oracle, Microsoft SQL Server, NoSQL?????

Teme seminarskih nalog Specifična tematika, večja količina podatkov Praktična izvedba Dva študenta v skupini Teme (objavljene bodo na učilnici): Praktična izvedba obdelave (analiza, vizualizacija, ) nad izbranimi podatki (več nalog), na platformi SUPB + orodje Specifične pregledne teme z vzorčno implementacijo (več nalog) Stare teme seminarskih nalog za vzorec

Domača naloga Python, Python, Python!!! Vzpostavite si delovno okolje Preberite skripto "Python za programerje" in katerega od spletnih virov Naredite čimveč primerov Razmislite o svojih kompetencah s področja predmeta in o tem kakšen tip seminarske naloge ali seminarja bi vam najbolj ustrezal Oblikujte skupine po dva študenta

Terminologija Sistem za upravljanje s podatkovnimi bazami Podatkovna baza (data base) Podatkovno skladišče (data warehouse) Sodobni (ne)relacijski SUPB: NoSQL = Not only SQL NewSQL

Sistemi za upravljanje s PB (SUPB) Angleško: Database Management System (DBMS) Sistem za upravljanje s podatkovno bazo SUPB je programska oprema za obvladovanje velikih količin podatkov, shranjenih v vnaprej točno določeni obliki (logičnem podatkovnem modelu) Alternativa shranjevanje v aplikaciji lastni obliki; problemi: neprenosljivost, nefleksibilnost... Obstaja veliko vrst SUPB. Omejili se bomo predvsem na relacijske in nekatere sodobne nerelacijske: Oracle, Microsof SQL Server, Postgres, MySQL/MariaDB, MongoDB...

Podatkovna baza in podatkovno skladišče Podobno, vendar ne enako! Podatkovna baza (PB oz. DB): OLTP sistem (on-line transactional processing) opisuje trenutno stanje Podatkovno skladišče (PS oz. DW): OLAP sistem (on-line analytical processing) opisuje zgodovino vsebin OLTP sistema (pogosto več OLTP sistemov) Oba pristopa tečeta na SUPB, vendar z različnimi prioritetami izvajanja (OLTP - hitro izvajanje transakcij, OLAP - hitra analiza) Razlikujejo se tudi postopki načrtovanja

Načrtovanje PB, PS, NoSQL Podatkovne baze konceptualno načrtovanje: obsežne PB, veliko število tabel korak pri načrtovanju inf. sistemov logično načrtovanje (normalizacija relacij oz. tabel): direktno za manjše PB (nekaj deset tabel) preverjanje rezultatov konceptualnega načrtovanja fizično načrtovanje Podatkovna skladišča načrtovanje zvezdnih shem Načrtovanje nerelacijskih PB novo, nezrelo področje Zakaj razlike? PB: hitro izvajanje transakcij PS: hitro izvajanje analiz podatkov NoSQL: nerelacijski podatkovni modeli

Poglavje 1 Konceptualno načrtovanje transakcijskih podatkovnih baz

Trinivojska predstavitev podatkov... Podatki so v PB opisani na treh nivojih: Zunanje sheme (zunanji, uporabniški nivo) Konceptualna (logična) shema Fizična (notranja) shema Zunanja shema 1 Zunanja shema 2 Zunanja shema 3 Logična neodvisnost Fizična neodvisnost Metapodatki Konceptualna in logična shema Fizična shema Fizični podatki DISK

1.1 Trije nivoji načrtovanja trije modeli.. Uporabniške (podatkovne) zahteve Konceptualni model Odločitev o implementaciji, običajno izbor SUPB: -Oracle -MySQL -IBM DB2 Logični model: relacije Fizični model: tabele, SQL SUPB Podatkovna baza Reverse Engineering

Konceptualni podatkovni model Formalizem s katerim opišemo, kaj bi želeli hraniti v PB ter kakšne povezave obstajajo med elementi, ki jih želimo hraniti, se imenuje konceptualni model. Konceptualni model je torej način, kako na visoki ravni abstrakcije razumljivo in ne preveč tehnično opišemo podatke, ki jih želimo hraniti ter skrijemo nepomembne podrobnosti. Konceptualni model odraža uporabnikovo zaznavanje realnega sveta oziroma poslovnega problema, ter načrtovalčevo videnje problema (stična točka).

1.1 Trije nivoji načrtovanja trije modeli Načrtovanje PB: od realnega sveta do fizične podatkovne baze za potrebe poslovne domene svet mentalni model konceptualni model logični model fizični model =PB

1.2 Kaj je konceptualno načrtovanje?.. Konceptualno načrtovanje je postopek opredelitve podatkovnih potreb oz. zahtev poslovne domene s pomočjo konceptualnega modela Konceptualno načrtovanje preko konceptualnega modela poskrbi za opis pomena podatkov, potrebnih za poslovno domeno Konceptualno načrtovanje je neodvisno od dejanskega podatkovnega modela (relacijski,...) Konceptualnega načrtovanja ne moremo avtomatizirati, za njegovo izvedbo je odgovoren analitik. Gre za prenos semantike v model.

1.2 Kaj je konceptualno načrtovanje? Je najbolj kritično, saj se napake narejene pri konceptualnem načrtovanju prenašajo naprej na naslednje modele Pri konceptualnem načrtovanju je zelo pomembno sodelovanje uporabnikov in interakcija z uporabniki. Uporabniki so nosilci znanja o poslovni domeni, so poznavalci semantike in običajno vedo, kaj hočejo, a to težko natančno izrazijo Konceptualno načrtovanje mora upoštevati tudi poslovna pravila (kot omejitve modela)

1.3 Tehnike konceptualnega načrtovanja.. Percepcija Abstrakcija Objekti, koncepti (tipi) in términi Klasifikacija (objekti koncepti) Ureditev hierarhij konceptov (tipov) Agregacija (sestavljanje konceptov)

1.3 Tehnike konceptualnega načrtovanja.. Ureditev tipov OSEBA Generalizacija ŠTUDENT PEDAGOŠKI DELAVEC FAKULTETNI DELAVEC ADMINISTRATOR Specializacija DEMONSTRATOR UČITELJ ASISTENT

1.3 Tehnike konceptualnega načrtovanja.. Ureditev tipov Primera ureditve tipov: - pokrivanje? OSEBA ŠTUDENT ŠPORTNIK OSEBA ŽENSKA MOŠKI

1.3 Tehnike konceptualnega načrtovanja.. GIRLFRIEND?????? GIRL FRIEND

1.3 Tehnike konceptualnega načrtovanja Agregacija Preko agregacije definiramo nov agregiran (sestavljen) tip na osnovi obstoječih tipov GIRLFRIEND agregacija GIRL FRIEND Kakšne je razlika z generalizacijo? Agregirani tip vsebuje VSE lastnosti agregiranih tipov in ne samo skupnih! Pomensko agregirani tip ponuja nekaj novega.

1.4 Lastnosti konceptualnega modela.. Namembnost konceptualnega modela Razumevanje problema (načrtovalec) Vrednotenje razumevanja (uporabnik) Pomoč pri načrtovanju in implementaciji Zahtevane lastnosti konceptualnega modela izraznost, preprostost, minimalnost, formalnost, grafična popolnost, berljivost.

1.5 Entitetni model.. Predstavitev konceptualnega modela Najpogosteje uporabljana tehnika za predstavitev konceptualnih podatkovnih modelov sta entitetni model (model entiteta-razmerje) ter razredni diagram. Obravnavali bomo entitetni model. Nazivi, ki se uporabljajo: Konceptualni podatkovni model Podatkovni model Entitetni model ER model Razširjeni entitetni model

1.5 Entitetni model.. Gradniki entitetnega modela Entitetni tip Atribut Razmerje Identifikator

1.5 Entitetni model.. Gradniki entitetnega modela Grafična predstavitev gradnikov entitetnega modela Originalni Chenovi diagrami oznaka za razmerja (relacije) Običajni ER diagrami: vranja noga (crow foot, IE) oznaka za nekatera razmerja (relacije) Chenovi diagrami so bolj izrazni, vendar kompleksnejši in dopuščajo različne interpretacije razmerij. UML (Unified Modeling Language). - 48 -

1.5 Entitetni model.. Entitetni tip - Entiteta Entitete so posamezne instance (primerki) tipov objektov iz poslovne domene: dogodki, predmeti, osebe, pravila, dejstva O entitetah obstaja določena predstava o tem: kakšne lastnosti dejansko imajo kakšne lastnosti jim moramo določiti (morajo imeti), da bodo izpolnjevale poslanstvo entitetnega modela Na osnovi predstave o tem in percepcije, lahko entitete klasificiramo v entitetne tipe: vse entitete, ki ustrezajo določeni predstavi, pripadajo posameznemu entitetnemu tipu. Primer: študenti

1.5 Entitetni model.. Entitetni tip - Entiteta Vsak trenutek pripada posameznemu entitetnemu tipu množica entitet tega entitetnega tipa, ki jo imenujemo entitetna množica Entitetna množica je časovno spremenljiva: entitete nastajajo, se spreminjajo in tudi izginjajo (izstopajo iz množice). Entitetna množica je v nekem trenutku lahko tudi prazna. Natančno moramo poznati pomen entitetnega tipa: kaj predstavljajo entitete, ki mu pripadajo

1.5 Entitetni model.. Entitetni tip - Entiteta V praksi se pogosto uporablja poenostavljen izraz entiteta, čeprav bi se moral uporabljati izraz entitetni tip

1.5 Entitetni model.. Atribut Entitete imajo določene lastnosti, posamezne entitete (iz istega entitetnega tipa) se med seboj razlikujejo po njihovi vrednosti Le del entitetnih lastnosti je zanimiv oz. pomemben za opazovano poslovno domeno (abstrakcija) Lastnosti, ki so pomembne za opazovano poslovno domeno, vključimo v konceptualni model tako, da jih kot atribute določimo entitetnemu tipu

1.5 Entitetni model.. Atribut Torej: z atributi formalno opišemo lastnosti entitet Govorimo o več vrstah lastnosti: Entitetna imena: naziv, ime, opis Prave entitetne lastnosti: višina, teža, cena, vrednost Lastnosti, ki jih določimo za potrebe poslovnih procesov, poslovnih funkcij in poslovnih pravil: šifre, statusi, Atribut določimo za tisto lastnost, ki je za problemsko/poslovno domeno pomembna Vsak atribut ima določene lastnosti: kardinalnost (števnost), tip, dolžina

1.5 Entitetni model.. Atribut Kardinalnost atributa omejimo z minimalno in maksimalno vrednostjo (min,max): Totalni atribut (1,n), kjer je n >= 1 Parcialni atribut (0,n), kjer je n >= 1 Enovrednostni atribut (m,1), kjer je m {0,1} Večvrednostni atribut (m,n), kjer je m {0,1} in n>1 Minimalna števnost 0 pomeni, da je atribut lahko brez vrednosti (ni obvezen). Maksimalna števnost n pomeni, (1,1) EMŠO da atribut lahko zavzame (1,3) Ime poljubno število vrednosti. OSEBA (1,2) (0,n) Priimek Vzdevek

1.5 Entitetni model.. Atribut Atribut pripada določenemu abstraktnemu tipu: numerični, znakovni, Za večino tipov je potrebno določiti tudi dolžino. V Chenovih ER diagramih imajo atributi lahko poljubno kardinalnost V običajnih ER diagramih imajo atributi kardinalnost vedno (0,1) ali (1,1) Večvrednosten atribut predstavimo z drugimi gradniki (nov entitetni tip in razmerje)

1.5 Entitetni model.. Atribut OSEBA (1,1) (1,3) (1,1) (0,n) EMŠO Ime Priimek Vzdevek Chenov diagram OSEBA Običajen ER diagram EMŠO Ime Priimek Vzdevek

1.5 Entitetni model.. Razmerje Entitete niso svet zase, medsebojno se povezujejo preko razmerij (relacij) Razmerje ima določen pomen in števnost Predstavitev razmerja v modelu entiteta-razmerje je povezava Med opazovanim parom (v splošnem podmnožici) entitetnih tipov je lahko več razmerij: OSEBA, KRAJ stalno bivališče, začasno bivališče Razmerij je lahko veliko, izberemo samo tista, katerih evidenco želimo voditi!

1.5 Entitetni model.. Razmerje Chenov diagram OSEBA živi KRAJ OSEBA živi KRAJ Običajen ER diagram Pomen razmerja

1.5 Entitetni model.. Razmerje OSEBA prebiva KRAJ OSEBA prebiva v ima preb. KRAJ Vloga entitetnega tipa v razmerju (usmerjen pomen)

1.5 Entitetni model.. Razmerje - kardinalnost Kardinalnost (števnost) predstavlja število entitet entitetnega tipa, ki so v razmerju glede na pomen razmerja. Minimalna in maksimalna števnost določata veljaven razpon števila entitet. Vsak entitetni tip ima svojo kardinalnost v razmerju glede na vlogo. Pomen razmerja med entitetnima tipoma OSEBA, KRAJ (na naslednji strani): Ena (poljubna) oseba ima stalno bivališče v enem kraju (pošti) V enem (poljubnem) kraju (pošti) ima stalno bivališče več oseb

1.5 Entitetni model.. Razmerje - kardinalnost Razmerji med entitetama OSEBA in KRAJ (1,n) (1,1) (1,n) (0,1)

1.5 Entitetni model.. Razmerje - kardinalnost Vloga in števnost v delnem razmerju OSEBA stalno prebiva (1,n) ima prebivalca (1,1) KRAJ Oznake za števnost na ponoru delnega razmerja: 0: --o-- (krožec na povezavi) 1: -- -- (pravokotna črta na povezavi) več (m ali n): vranja noga (crow foot) Razpon določimo z dvema številkama (minimalna, maksimalna) ali kombinacijo grafičnih oznak (1,1) se označuje kot -- -- ali -- -- (0,1) se označuje kot --o-- ali --o -- - 62 -

1.5 Entitetni model.. Razmerje - kardinalnost Chenov diagram (omogoča tudi več kot dvomestna razmerja) A (n,m) povezava B (p,r).....

1.5 Entitetni model (Power Designer) Razmerje - kardinalnost - 64 -

1.5 Entitetni model.. Razmerje - mandatornost Mandatornost pove, ali sta dve entiteti vedno v razmerju ali lahko tudi nista v razmerju: obvezno, neobvezno razmerje Mandatornost lahko obravnavamo pod okriljem števnosti, zaradi česar dodatno uvedemo števnost 0

1.5 Entitetni model.. Razmerje je atributivnega značaja Razmerje tudi opisuje lastnost entitete Primer: OSEBA, KRAJ (poštna številka) Razmerje ima atributiven značaj Dilema: atribut (lastnost) ali razmerje? Stalno (1,1) in začasno (0,1) prebivališče Izpitni rok (3,3) ali (1,n)

1.5 Entitetni model.. Primer: eštudent

1.5 Entitetni model.. Enolični identifikator entitete Enolični identifikator entitete (krajše: entitetni identifikator ali samo identifikator) je podmnožica lastnosti entitetenega tipa (atributov in razmerij do drugih entitetnih tipov), ki enolično razlikujejo posamezne entitete znotraj entitetne množice Glede na to, ali tvorijo identifikator entitete le lastni atributi entitetnega tipa ali pa je v enoličnem identifikatorju tudi kakšno razmerje, ločimo med močnim entitetnim tipom in šibkim entitetnim tipom

1.5 Entitetni model.. Enolični identifikator entitete Imamo lahko več enoličnih identifikatorjev, vendar moramo enega izbrati določiti Izbrani določeni enolični identifikator je podlaga za (primarni) ključ v relacijskem modelu Identifikator: Abstrakten pojem Ključ: Relacijski model Identifikator se preslika v ključ relacije.

1.5 Entitetni model.. Enolični identifikator entitete OSEBA (1,1) (1,3) (1,1) (0,n) EMŠO Ime Priimek Vzdevek Chenov diagram (pobarvamo piko ali pike) Običajen ER diagram (podčrtamo atribut ali atribute) EMŠO Ime Priimek Vzdevek OSEBA

1.5 Entitetni model.. Enolični identifikator entitete Glede na atribute, ki sestavljajo identifikator, ločimo entitetne tipe na Močne: za identifikacijo objekta zadoščajo lastni atributi Šibke: za identifikacijo objekta lastni atributi ne zadoščajo potrebujemo še nekaj tujih atributov dobimo jih kot primarne ključe povezanih entitetnih tipov, od katerih je naš šibki entitetni tip odvisen. odvisnost označimo s puščico (trikotnikom) na povezavi: Šibki entitetni tipi pogosto nastanejo po pretvorbi iz večmestnih (>2) ali večvrednostnih (m:n) razmerij, ter razmerij z atributi

1.5 Entitetni model.. Šibki entitetni tip Trikotnik označuje odvisnost (dependency) šibkega entitetnega tipa od močnega (v smetri puščice trikotnika). Kardinalnost: (0,n) Identifikator šibkega ent. tipa pes: Ime_psa in EMSO skupaj! Identifikator močnega entitetnega tipa Oseba: EMSO - 72 -

1.5 Entitetni model.. Primer: eštudent

1.5 Razširjeni entitetni model.. Razvrščanje sorodnih entitetnih tipov v hierarhije Izognemo se redundantnosti, povečamo semantiko Generalizacija Imamo entitetna tipa B in C Generaliziramo (posplošimo) ju v nadtip A Pri tem se skupni atributi prenesejo na nadtip Specializacija: Imamo entitetni tip A Specializiremo ga v podtipa B in C Podtipa ne vsebujeta skupnih atrbutov. Generalizacija in specializacija - 74 -

Generalizacija in specializacija 1.5 Razširjeni entitetni model.. VOZILO OSEBNI AVTO AVTOBUS DELAVEC PROFESOR ASISTENT

1.5 Razširjeni entitetni model.. Entitetni tip A s podtipoma B in C B in C pokrivata A totalno in ekskluzivno, če velja: E B E C = E A in E B E C = {} B in C pokrivata A totalno in prekrivno, če velja: E B E C = E A in E B E C {} B in C pokrivata A delno in ekskluzivno, če velja: E B E C E A in E B E C = {} B in C pokrivata A delno in prekrivno, če velja: E B E C E A in E B E C {} Generalizacija in specializacija

Generalizacija in specializacija 1.5 Razširjeni entitetni model.. OSEBA Totalno in ekskluzivno MOŠKI ŽENSKA OSEBA Delno in prekrivno ŠTUDENT ŠPORTNIK