Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.
Modely Konceptuální model se zabývá modelováním reality, není ovlivněn budoucími prostředky řešení. Logický model se vztahuje ke konkrétnímu datovému modelu a používá jeho konstrukční dotazovací a manipulační prostředky (relační, objektové, síťové, hierarchické, XML,...). Fyzický model zajišťuje fyzické uložení dat (sekvenční soubory, indexy, clustery,...). Obvykle řeší konkrétní SŘBD.
Konceptuální datový model Konceptuální model vzniká jako popis dat v databázi bez ohledu na jejich uložení. Konceptuální model představuje formální popis modelované reality. Hlavními úkoly je nalezení entit, vtahů a atributů.
Konceptuální datový model Na konceptuální úrovni se u modelů užívají pojmy: entita (object) student, předmět vztah (relationship) - studuje atributy - vlastnost - věk, rč
Komponenty modelů U modelu se obvykle řeší komponenty: strukturální - struktura dat specifikace integritních omezení manipulace dat - manipulace s daty Manipulace dat bývá řešena na nižší úrovni.
Činnosti při tvorbě E-R modelu Identifikace typů entit jako množiny objektů stejného typu. Např. PŘEDMĚT, STUDENT, PEDAGOG Identifikace typů vztahů, do kterých typy entit mohou vstupovat. Např. PEDAGOG garantuje PŘEDMĚT
Činnosti při tvorbě E-R modelu Přiřazení popisných atributů jednotlivým typům entit a vztahů podle požadované úrovně abstrakce. Např. PRIJMENI (popisný atribut) daného ZAMESTNANCE (entita), DATUM (popisný atribut), do kdy si daný ABONENT (entita) VYPUJCIL (údaj typu vztah) daný EXEMPLAR (entita). Formulace integritních omezení (IO) vyjadřujících s větší či menší přesností soulad schématu s modelovanou realitou.
Činnosti při tvorbě E-R modelu Atributem budeme rozumět funkci přiřazující entitám či vztahům hodnotu popisného typu, určující některou podstatnou vlastnost entity nebo vztahu. Vymezení pojmů entita, vztah a atribut je dosti volné. Vodítkem může být, že v souvislosti s entitami používáme podstatných jmen a se vztahy sloves.
Úplný konceptuální model Lineární zápis seznamu typů entit s jejich atributy a lineární zápis seznamu vztahových entit. Úplný grafický popis - ERD ve dvou úrovních: konceptuální schéma, transformovaný pro databázové schéma. Datový slovník. Seznam IO týkajících se entit, atributů a vztahů.
Lineární zápis Lineární (textový) zápis popisuje entity a vazby: Typ_entity ( klíč, atrib1, atrib2,... ) TYP_VZTAHU ( Typ_entity1, Typ_entity2,..., vztah_atrib1, vztah_atrib2, ) Například: Pedagog(Id_pedagog, jméno, příjmení, telefon) Předmět(Id_předmět, název, počet_kreditů) Garantuje(Pedagog, Předmět, od, do)
E-R diagram Graficky znázorňuje entitní typy a vztahy mezi nimi formou grafu. Obsahuje několik grafických prvků označených názvy: obdélníkový uzel označuje entitní typ, uvnitř je zapsán název, oválný uzel označuje atributy; atributy jsou spojeny hranami s odpovídajícím entitním typem; klíčové atributy se obvykle zvýrazní kosočtvercový uzel reprezentuje vztah mezi entitními typy, hranami je spojen s těmito entitními typy.
E-R diagram Chenova notace Pedagog Garantuje Předmět Zjednodušený zápis Pedagog Garantuje Předmět
Integritní omezení Integritní omezení (IO) popisují logická omezení na typy a hodnoty atributů, entit a vazeb tak, aby konceptuální model odpovídal zobrazované realitě. Mohou být zadána jak graficky v ERD, tak textovým popisem. Textově v datovém slovníku nebo doplňujícím textem formou poznámky za datovým slovníkem.
IO atributů - Datový slovník Představuje záznam IO pro atributy ve formě tabulky, která obsahuje: jméno atributu jako identifikátor, syntaktický typ atributu, jeho doménu popis a význam atributu velikost a formát vnější reprezentace atributu množinu operací, které lze nad jeho hodnotami provádět KLÍČ - příznak, zda je atribut klíčový, zda je součástí primárního klíče
Datový slovník NULL - zda je přípustné, aby měl atribut hodnotu nevyplněnu či je zadání hodnoty povinné poznámku pro další IO plynoucí z reality, která ve výše uvedených informacích nejsou uvedena (předdefinovaná hodnota, výpočet, popis kontroly ap.) případně další systémové informace (indexování ap.)
Integritní omezení Mezi další integritní omezení patří: neatomické atributy skupinové atributy Student( jméno, příjmení, adresa (ulice, město, PSČ, stát)) vícehodnotové atributy Zaměstananec( jméno, příjmení,dítě (jméno, d_rod_cis): multi,..., plat (leden, únor,, prosinec)) ISA hierarchie
IO vztahů mezi entitami Kardinalita vztahu Při definování vztahu typů entit E1 a E2, existují tři možnosti binárního vztahu: 1:1 jedné e1 E1 odpovídá ve vztahu nejvýše jedna e2 E2 a naopak, jedné e2 E2 odpovídá nejvýše jedna e1 E1; 1:N jedné e1 E1 odpovídá ve vztahu obecně několik e2 E2, ale jedna e2 E2 má vztah pouze k jedné entitě e1 E1; M:N jedné e1 E1 odpovídá ve vztahu obecně několik entit e2 E2 a naopak jedna e2 E2 má vztah k několika entitám e1 E1.
IO vztahů mezi entitami Povinnost členství ve vztahu Definujeme dva druhy členství ve vztahu: povinné (obligatorní) nepovinné (fakultativní)
IO vztahů mezi entitami Výskytový diagram představuje způsob záznamu vazeb mezi entitami. Znázorňuje jednotlivé výskyty entit a jejich vztahů. Používá se při ujasňování kardinality vztahu a povinnosti členství ve vztahu. V určité fázi je nutno provést dekompozici vztahu M:N, kde je možné si pomoci výskytovým diagramem.
Relační model dat (RMD) RMD je založený na matematické teorii množin a predikátové logice a definuje způsob reprezentace dat, způsob jejich ochrany (integritní omezení) a možné operace nad daty. RMD navrhnul a jeho pravidla publikoval Dr. E. F. Codd (pracovník firmy IBM) v r. 1970 v článku: "A relational model of data for large shared databanks". Byly zde základní definice, vycházející z teorie množin a predikátové logiky.
RMD RMD odděluje data, která jsou chápána jako relace od jejich implementace. Symetrický přístup k datům. Při manipulacích s daty nás nezajímají přístupové metody k datům v relacích. Pro práci s daty máme k dispozici relační kalkul a algebru (matematické aparáty, jimiž lze popsat sémantiku (význam konstrukcí) relačních jazyků). Pro omezení redundance dat, máme k dispozici pojmy pro normalizaci relací, což znamená možnost vhodně navrhovat databázové struktury.