2. Konceptuální model dat, E-R konceptuální model

Podobné dokumenty
6. SQL složitější dotazy, QBE

Relační model reprezentuje databázi jako soubor relací. Kaţdá relace představuje tabulku nebo soubor (ve smyslu soubor na nosiči dat).

10. blok Logický návrh databáze

Etapy tvorby lidského díla

Databázové systémy trocha teorie

2 Konceptuální modelování a návrh databáze

2 Konceptuální modelování a návrh databáze

RELAČNÍ DATABÁZOVÉ SYSTÉMY

DBS Konceptuální modelování

5. Formalizace návrhu databáze

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

5. Formalizace návrhu databáze

Úvod do databázových systémů

Analýza a modelování dat. Helena Palovská

Analýza dat a modelování. Přednáška 2

Konceptuální modelování. Pavel Tyl

8. Zpracování dotazu. J. Zendulka: Databázové systémy 8 Zpracování dotazu 1

J. Zendulka: Databázové systémy 8 Zpracování dotazu Podstata optimalizace zpracování dotazu

EXTRAKT z české technické normy

Terminologie v relačním modelu

Diagramy tříd - základy

Korespondenční úkol. Entita: Atributy: bydliště: typ číslo (devítimístné) Třída (např. 6.A, 6.B...)

J. Zendulka: Databázové systémy 4 Relační model dat 1

4. Základy relačních databází, logická úroveň návrhu

7.3 Diagramy tříd - základy

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS

DATABÁZOVÉ SYSTÉMY 1. Základní pojmy databázové technologie

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např.

Objektově orientované technologie Logická struktura systému Objektový diagram. Pavel Děrgel, Daniela Szturcová

Relační databáze a povaha dat

7.3 Diagramy tříd - základy

4. Relační model dat. J. Zendulka: Databázové systémy 4 Relační model dat 1

4. Relační algebra. Databáze použité v příkladech. Operace. Selekce. jméno relace(selekční podmínka)

Infrastruktura UML. Modelování struktury v UML. Superstruktura UML. Notace objektů. Diagramy objektů

Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky

NÁVRH ELEKTRONICKÉ TŘÍDNÍ KNIHY PRO ZUŠ

Diagram výskytů a vztahů

4IT218 Databáze. 4IT218 Databáze

Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit (entitní množiny) Atributy

8.2 Používání a tvorba databází

Databázové systémy 1. Cvičení č. 9. Fakulta elektrotechniky a informatiky Univerzita Pardubice

Funkční analýza Předmět Informační systémy. Daniela Szturcová

Česká zemědělská univerzita v Praze. Provozně ekonomická fakulta. Katedra informačních technologií

PV167 Projekt z obj. návrhu IS. 26. března 2008

UNIVERZITA PALACKÉHO V OLOMOUCI

Hierarchický databázový model

Funkční schéma Datové schéma Integrita modelu s realitou

Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky Návrh a tvorba databáze v prostředí vybrané firmy

NÁVRH DATABÁZE SQL PRO MORAVSKÉ GYMNÁZIUM BRNO S.R.O.

Databázové modelování. Analýza Návrh konceptuálního schématu

DBS Transformace konceptuálního schématu na

ELEKTRONICKÁ PORODNÍ KNIHA POPIS APLIKACE Michal Huptych, Petr Janků, Lenka Lhotská

Metodika návrhu databáze

Databázové systémy. Ing. Radek Holý

Datové modelování II

1 Úvod. J. Zendulka: Databázové systémy - 1 Úvod 1

Modelování obchodních procesů

RELACE, OPERACE. Relace

Analýza dat a modelování. Přednáška 3

Kombinatorický předpis

Objektově orientovaný přístup

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: jan.skrbek@tul.cz tel.: Konzultace: úterý

. Určete hodnotu neznámé x tak, aby

DATOVÉ MODELOVÁNÍ ER MODEL

Finanční. matematika pro každého. f inance. 8. rozšířené vydání. věcné a matematické vysvětlení základních finančních pojmů

Učební osnova předmětu stavba a provoz strojů

Teoretické minimum z PJV

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE. Ing. Jaroslav Adamus. Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou

Databáze. Logický model DB. David Hoksza

EXTRAKT z mezinárodní normy Extrakt nenahrazuje samotnou technickou normu, je pouze informativním materiálem o normě.

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Databázové systémy. Vztahy a relace. 3.přednáška

J. Zendulka: Databázové systémy - 1 Úvod Intuitivní vymezení pojmu databáze

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Databázové systémy I. 1. přednáška

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

PRÉCIS STRUKTUROVANÁ DATABÁZE JAKO ODPOVĚĎ NA NESTRUKTUROVANÝ DOTAZ. Dominik Fišer, Jiří Schejbal

6 Objektově-orientovaný vývoj programového vybavení

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Množiny, funkce

Datový sklad. Datový sklad

OOT Objektově orientované technologie

Jiří Mašek BIVŠ V Pra r ha

Databázové patterny. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Konceptuální datové modely používané při analýze

Třída. Atributy. Operace

Pojmové mapy ve výuce fyziky

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Manuál pro členy pracovních skupin Sektorové rady k vytváření dílčích kvalifikací

POROVNÁNÍ RELAČNÍHO A OBJEKTOVÉHO DATOVÉHO MODELU V KONSTRUKCI DATABÁZOVÝCH SYSTÉMŮ

Územní identifikace, adresy a RÚIAN. Jiří Formánek

Úvod do databázových systémů. Lekce 1

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Ontologie - metodika tvorby

Registrační číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B

Databázové systémy. Přednáška 1

Důvěrné. Draft k diskusi. Vladislav Severa Partner. Boris Mišun Senior Manager

Tvorba informačních systémů

Seminář z matematiky. jednoletý volitelný předmět

KULOVÁ ZRCADLA. Mgr. Jan Ptáčník - GJVJ - Fyzika - Optika - Septima

Transkript:

2. Konceptuální model dat, E-R konceptuální model Úvod Databázový model souhrn prostředků, pojmů a metod, jak na logické úrovni popsat data a jejich strukturu výsledkem je databázové schéma. Databázové modely vysokoúrovňové modely nízkoúrovňové (fyzické) modely reprezentační či implementační databázové modely SŘBD poskytuje uživateli tzv. konceptuální reprezentaci dat - konceptuální schéma, které do určité míry formalizovaně, ale dostatečně srozumitelně a názorně popisuje danou aplikaci (reálný svět), nikoliv fyzickou reprezentaci dat. Konceptuální schéma je implementačně nezávislé a slouží jako společným základ pro: chápání objektů uživateli, projektanty integraci uživatelských pohledů a návrh implementace zobrazení mezi uživatelskými pohledy a fyzickým uložením dat Konceptuální model dat je používán návrháři (tvůrci) databáze v procesu návrhu databáze. 1. Shromáždění požadavků uživatelů a analýza - v tomto kroku je třeba, aby se návrháři databáze spojili s potenciálními uživateli databáze a zaznamenali jejich požadavky ohledně dat funkční požadavky na databázi. Výsledkem je množina uživatelských požadavků jak na data, tak i na operace s daty prováděné (transakce - aktualizace i výběr dat). 2. Konceptuální návrh databáze - vytváření konceptuálního schématu databáze s použitím vysokoúrovňového datového modelu. Konceptuální schéma představuje výstižný popis uživatelských požadavků na data a zahrnuje detailní popis datových typů, vztahů a integritních podmínek (omezení dat).(tento návrh nezahrnuje žádné detaily o implementaci dat - konceptuální schéma je srozumitelné i pro nepříliš technicky založené uživatele). 3. Logický návrh databáze neboli mapování datového modelu - aktuální implementace databáze s použitím SŘBD jejímž výsledkem je databázové schéma vyjádřené pomocí implementačního modelu SŘBD. 4. Fyzický návrh databáze - specifikace způsobu fyzického uložení dat, struktura a organizace souborů. Paralelně probíhá návrh aplikačních programů a implementace databázových transakcí.

Obrázek 2.1 popisuje návrh databáze

Základní principy konceptuálních modelů orientace na objekty - uvažuje se v objektech, nikoliv v identifikátorech funkcionální podstata vztahů - zahrnuje možnost definovat vztahy mezi objekty jako funkce ISA hierarchie - umožňuje práci s podtypy a nadtypy (ISA - IS A např. teacher is an employee), nadtyp - vozidlo, podtyp - motorové vozidlo, podtyp - osobní auto hierarchický mechanismus pro konstrukci objektů z jiných objektů - agregace, seskupování, skládání funkcí, vytváření tříd.. Druhy konceptuálních modelů - ER modely - síťové modely - hierarchické modely - OO modely U nás nejčastěji užívaný je sémantický entitně-relační model. Příklad 2.1 ER schéma znázorňující zjednodušenou databázi firmy viz obrázek 2.2 Entity: Zaměstnanec Oddělení Projekt Dítě

Obrázek 2.2

E-R konceptuální model E-R konceptuální model je množina pojmů, pomocí nichž se vyjadřuje na konceptuální úrovni struktura databáze. Je vhodný pro návrh schématu databáze metodou shora dolů. E-R model popisuje data jako entity, relace a atributy. Entita - samostatně existující objekt reálného světa. Může to být fyzický objekt - člověk, zvíře, rostlina, auto, dům, zaměstnanec, nebo nehmotný objekt - firma, práce, program, přednáška,. Každá entita má vlastnosti tzv. atributy, které ji popisují. (Zaměstnanec má jméno, adresu, datum narození, plat,...) Atributy nabývají hodnot z určité množiny hodnot, které se říká doména. Typy atributů jednoduché x složené jednohodnotové x vícehodnotové uložené x odvozené (vypočtené) Složené atributy - dají se rozdělit do menších částí (např. adresa). Atributy, které nejsou dále dělitelné, se označují jako jednoduché nebo atomické. Hodnota složených atributů je dána spojením hodnot odpovídajících jednoduchých atributů. Pokud se odkazujeme na složený atribut vždy jako na celek (tj. není nikdy potřeba ho dělit), můžeme ho brát jako jednoduchý. Většina atributů má jedinou hodnotu pro danou konkrétní entitu (pro instanci entity) - jednohodnotové atributy (věk, výška, hmotnost, ). Někdy s jedinou hodnotou nevystačíme např. barva auta, email, telefon - chápeme jako vícehodnotový atribut. Uložený atribut - je součástí databáze, kdežto odvozený atribut není nikde uložen, je vlastně zjištěn, vypočítán z jednoho nebo více uložených atributů. (věk a datum narození se dá odvodit z rodného čísla) Vztah (relace) - vazba mezi dvěma nebo více entitami. Druhy typů E ntitní typ jm é no typ u ( klíč ), atribu t V ztahový typ jm é no typ u jm éno ent. (, typu_ 1 jm éno ent. typu_ 2 )

Lineární textový zápis E-R schématu Příklad 2.2 : E: STUDENT (RODNÉ ČÍSLO,... ) PŘEDMĚT (KÓD PŘEDMĚTU,... ) R: MÁ ZAPSÁN (STUDENT, PŘEDMĚT ) Typový E-R diagram Binární vztah Ternární vztah Příklad 2.3: STUDENT má zapsán PŘEDMĚT

Výskytový diagram zobrazuje jednotlivé instance (výskyty entit) Příklad 2.4: STUDENT MÁ_ZAPSÁN PŘEDMĚT S1 Souček P2 Matematika P7 Fyzika P9 Programování S2 Peterka P4 Ekonomie P5 Účetnictví P6 Databáze P8 Finanční řízení Entitní typ definuje množinu entit se stejnými atributy. Příklad 2.5: JMÉNO ENTIT. TYPU : STUDENT UČITEL ATRIBUTY : jméno, rod.číslo, ročník jméno, os. číslo, katedra s 1 u 1 (Jan Souček, 7508131234, 3) (Petr Bláha, 12, fyzika) s 2 u 2 (David Zikeš, 7611303214, 2) (Josef Šedivý, 14, matematika) s 3 u 3 Vícenásobné hodnoty se zapisují do složených závorek {} Složené atributy se zapisují do kulatých závorek ( ) Příklad 2.6: Motorové vozidlo Majitel (jméno, adresa ( ulice, město, psč)), SPZ,tovární značka, model, rok, {barva} (Pavel Dvořák, (Luční 15, Č.Krumlov, 381 01)), CKA25-25, Škoda,120 LX,1988,{červená} (Domstav, (Luční 1112, Kaplice, 382 41)), CKB11-36, Nissan, Maxima,1994, {černá, žlutá} Null - specielní hodnota, kterou použijeme tehdy, pokud hodnotu urč. atributu neznáme nebo pro danou konkrétní instanci entitního typu neexistuje ( např. u zaměstnanců telefonní číslo - někdo nemá telefon, u jiného číslo neznáme )

Atribut se dá chápat i jako funkce přiřazující entitám nebo vztahům určitou hodnotu - matematicky vyjádřeno atribut A entitního typu E, jehož množina hodnot je V, můžeme definovat jako fci A : E P(V), kde P(V) je množina všech podmnožin (tzv. mocnina množiny) Tj. můžeme označit hodnotu atributu A pro entitu e jako A(e) Hodnota NULL je reprezentována prázdnou množinou, hodnoty atomických atributů jsou jednoprvkové množiny, pro složené atributy je V kartézský součin V = P(V 1 ) x P(V 2 ) x...x P(V n) Klíčový atribut entitního typu - tzv. identifikační klíč - atribut (ev. skupina atributů), který jednoznačně určuje entitu. U některých entit může existovat více kandidátů na roli identifikačního klíče např. u zaměstnanců rodné číslo, osobní číslo, příjmení a jméno plus eventuelně číslo pracoviště.. Vztahový typ R mezi entitními typy E 1, E 2,, E n - množina vztahových instancí r i, kde každá r i spojuje n entit e 1, e 2,..., e n (každý zúčastněný entitní typ je zastoupen právě jednou entitou) a každá entita e j v r i je entitního typu E j pro všechna 1 j n. Říkáme, že každý z entitních typů E 1, E 2,, E n je členem vztahového typu R. Každá instance vztahového typu r i reprezentuje fakt, že členské entity v r i jsou spojeny spolu navzájem tak, že to odpovídá skutečnosti v reálném světě. Vztahový typ je matematická relace na E 1, E 2,, E n. Vztahový typ se též dá definovat jako podmnožina kartézského součinu E 1 x E 2 x x E n. Kardinalita vztahu jedna z důležitých charakteristik vztahu. Vyjadřuje, kolik různých instancí (výskytů entit) se může vyskytovat ve vztahové množině R(E 1, E 2, E n ). U binárních vztahů rozlišujeme kardinality: 1 : 1 1 : N M : N

Příklad 2.7 a) UČITEL 1 1 učí PŘEDMĚT b) UČITEL 1 N učí PŘEDMĚT c) UČITEL N 1 učí PŘEDMĚT d) UČITEL M učí N PŘEDMĚT Pro charakteristiku vztahu používáme také pojmy jako determinace neboli funkční závislost, rovněž tak rozlišujeme povinné či nepovinné členství ve vztahu. Funkční závislost existuje ve vztazích 1 : N (a samozřejmě 1 : 1), kdy entita na straně 1 je jednoznačně určena (determinována) entitou na straně N ve vztahu R(Učitel, Předmět) s kardinalitou 1 : N je učitel jednoznačně určen předmětem. Členství ve vztahu povinné (obligatorní) a nepovinné další z integritních omezení udávající, nakolik je jeden ze členů povinen účastnit se vztahu

Příklad 2.8: Ternární vztah R (UČITEL, PŘEDMĚT, TŘÍDA) učitel učí předmět v určité třídě a) b) c) U T U T U T 1 N 1 1 1 N 1 N O P P P d) U M N T O P Příklad 2.9 : Povinné členství ZAMĚSTNANEC ve vztahu s ODDĚLENÍM zaměstnanec musí být zařazen na oddělení ZAMĚSTNANEC 1 N je zařazen ODDĚLENÍ Existenční závislost entita s povinným členstvím ve vztahu je existenčně závislá na druhé entitě. Slabé entitní typy nemají vlastní identifikační klíč, jsou existenčně závislé na jiné entitě, s níž jsou v identifikačním vztahu. Příklad 2.10 : Slabé entitní typy DÍTĚ ve vztahu R (ZAMĚSTNANEC, DÍTĚ) DIPL_PRÁCE ve vztahu R (LEKTOR, DIPL_PRÁCE) KAPITOLA ve vztahu R (KNIHA, KAPITOLA)

Příklad 2.11 : Podmnožina databáze zdravotní evidence viz obr. 2.3 Obrázek 2.3

Příklad 2.12 : Podmnožina databáze praktického lékaře viz obr 2.4 Obrázek 2.4

Příklad 2.13 : Podmnožina databáze evidence hotelu viz obr 2.5 Obrázek 2.5

Literatura: [1] ELMASRI, R., NAVATHE, S., B. Fundamentals of Database Systems, 5th edition. Addison- Wesley, 2007. ISBN 978-03-213-6957-4. [2] SILBERSCHATZ, A., KORTH H. F., SUDARSHAN S. Database System Concepts, 5 th edition, New York: McGraw-Hill, 2006. ISBN 978-0-07-295886-7 [3] CONOLLY, T., BEGG, C., HOLOWZAK R. Profesionální průvodce tvorbou databází. Praha: Computer Press, a. s., 2009. ISBN 978-80-251-2328-7. [4] HERNANDEZ, M., J. Návrh databází. Praha: Grada, 2006. ISBN 80-247-0900-7. [5] POKORNÝ, J. Databázová abeceda. Veletiny: Science, 1998, ISBN 80-86083-02-2. [6] POKORNÝ, J., HALAŠKA, I. Databázové systémy, 2. vydání. Praha Vydavatelství ČVUT, 2003, ISBN 80-01-02789-9.