- Diagramy a databáze
- Dějiny
- Další průkopníci
- Filozofické zarovnání
- Prvky a symbolika
- - Grafy vztahu entity
- Symbologie
- -Elementy
- Entity
- Slabá entita
- Atribut
- Klíčový atribut
- Atribut s více hodnotami
- Odvozený atribut
- Vztah
- Kardinalita
- Vztah jeden ku druhému
- Jeden až mnoho vztahů
- Mnoho vztahů k jednomu
- Mnoho až mnoho vztahů
- Jak vytvořit model entity vztahu?
- Identifikujte entity
- Identifikujte vztahy
- Identifikujte kardinality
- Identifikujte atributy
- Vyplňte diagram
- Tipy pro efektivní ER diagramy
- Příklady
- Databázový diagram
- Model internetového prodeje
- Reference
Model entity vztahů (model ER) je návrh logické struktury databáze, kterou lze poté implementovat jako skutečnou databázi. Hlavními komponentami modelu ER jsou sady entit a vztahů.
Model entity-vztah popisuje vzájemně propojené věci zájmu v konkrétní doméně znalostí. V softwarovém inženýrství se model ER obvykle používá k začlenění věcí, které si společnost musí pamatovat, aby mohla provádět obchodní procesy.
Zdroj: pixabay.com
Obvykle se jedná o odvození systematické analýzy k určení a reprezentaci toho, co je významné pro procesy v některé oblasti podnikání. Graficky představuje pouze návrh obchodních dat, aniž by definoval procesy.
Jedná se tedy o snadno použitelný grafický nástroj pro modelování dat, široce používaný při návrhu databáze, který pomáhá identifikovat entity, které v systému existují, a vztahy mezi těmito entitami.
Obecně se kreslí pomocí rámečků (entit), které jsou spojeny čarami (vztahy), vyjadřující závislosti a asociace mezi těmito entitami.
Diagramy a databáze
Model entity vztahu je obecně implementován jako databáze. V jednoduché implementaci relační databáze každý řádek v tabulce představuje instanci entity a každý sloupec představuje atribut.
Entity jsou charakterizovány nejen vztahy, ale také dalšími vlastnostmi nazývanými atributy, které obsahují identifikátory nazývané „primární klíče“.
Diagramy představené entitami a vztahy, stejně jako atributy, lze spíše nazvat diagramy entit-vztahy (ER diagramy), nikoli modely entit-vztahy.
Struktura databáze je proto popsána pomocí diagramu vztahů entit.
V důsledku toho se ER model stává abstraktním datovým modelem, který definuje informační strukturu, kterou lze implementovat do databáze, obvykle relační.
Dějiny
Modelování dat vstoupilo do módy v 70. letech 20. století díky potřebě správného modelování databází nebo dokonce obchodních procesů v reálném světě.
Peter Chen popularizoval model entitní vztah ve svém slavném článku z roku 1976 „Model entitní vztah - směrem ke sjednocenému pohledu na data“.
Bylo navrženo vytvoření standardní konvence, která by mohla být použita pro relační databáze. Jeho cílem bylo použít model ER jako koncepční modelovací přístup.
Peter Chen ve svém článku uvedl: „Model entitní vztahy má přirozenější pohled na skutečný svět, který se skládá z entit a vztahů. Zahrnuje některé důležité sémantické informace o skutečném světě. “
Kromě návrhu databáze slouží Chenův ER model také dobře v systémech a aplikacích pro modelování informací. Unified Modeling Language (UML) je odvozen mnoha způsoby z modelu entita-vztah.
Další průkopníci
V předchozím roce zveřejnil AP Brown článek nazvaný „Modelování systému skutečného světa a návrh schématu jeho reprezentace“ v publikaci Mezinárodní federace pro zpracování informací.
Zatímco Brownův článek byl relevantní, Chenův článek byl ještě důležitější, zejména proto, že se zaměřoval na pojmy „entita“ a „vztah“. Toto je obecně považováno za začátek praxe modelování dat, jak je známo dnes.
Bachmanovy diagramy, forma modelování dat, si také zaslouží zmínku.
Článek Charlese Bachmana z roku 1969 pro publikaci databáze představil koncept databázových „entit“ a byl jedním z prvních diagramů struktury dat, později označovaných jako Bachmanův diagram. To na Petera Chena velmi ovlivnilo.
Filozofické zarovnání
Chen byl v souladu s filozofickými a teoretickými tradicemi od dob starověkých řeckých filozofů Sokratesa, Platóna a Aristotela (428 př.nl) až po moderní epistemologii, sémiotiku a logiku Peirce, Frege a Russell.
Platón sám spojuje znalosti se zadržením neměnných forem. Podle Sokrates jsou formy archetypy nebo abstraktní reprezentace mnoha typů věcí a vlastností a jejich vzájemných vztahů.
Prvky a symbolika
Diagram vztahů entit ukazuje vztahy sady entit uložených v databázi. To znamená, že ER diagramy pomáhají vysvětlit logickou strukturu databází.
Příklad: konkrétní skladba je entita, zatímco kolekce všech skladeb v databázi je sada entit.
- Grafy vztahu entity
Na první pohled vypadá ER diagram velmi podobně jako vývojový diagram. ER diagram však obsahuje mnoho specializovaných symbolů a jejich význam činí tento model jedinečným.
V následujícím diagramu jsou dva entity, Student a škola, a jejich vztah. Vztah mezi studentem a školou je mnoho k jednomu, protože škola může mít mnoho studentů, ale student nemůže studovat na několika školách současně.
Studentská entita má atributy, jako je její identifikace (Est_Id), jméno (Est_Nombre) a adresa (Est_Address). Školní entita má atributy, jako je její identifikace (Col_Id) a jméno (Col_Nombre).
Symbologie
- Rectangle: představuje sadu entit.
- Ellipse: představuje atributy.
- Diamond: představuje soubor vztahů.
- Řádky: propojují atributy s množinami entit a sady entit s množinami vztahů.
- Double elipsa: vícehodnotové atributy.
- Diskontinuální elipsa: odvozené atributy.
- Dvojitý obdélník: sady slabých entit.
-Elementy
Entity
Entita je něco ve skutečném světě, což je snadno rozpoznatelné. Je to cokoli ve společnosti, které bude v databázi zastoupeno. Ve skutečném světě se může jednat o něco fyzického nebo jen o skutečnost či událost.
Může to být místo, osoba, objekt, událost nebo koncept, který ukládá data do databáze. Charakteristikou entit je, že musí mít atribut jako jedinečný klíč. Každá entita se skládá z některých atributů, které ji reprezentují.
Subjekty lze považovat za podstatná jména. Příklady: počítač, zaměstnanec, píseň, matematická věta atd.
Slabá entita
Slabá entita je entita, kterou nelze jednoznačně identifikovat svými vlastními atributy a je založena na vztahu s jinou entitou.
Například bankovní účet nelze jednoznačně identifikovat, pokud banka, ke které patří, není známa. Bankovní účet je proto slabým subjektem.
Atribut
Atribut popisuje vlastnost entity. Je reprezentován oválným tvarem na ER diagramu. Existují čtyři typy atributů:
Klíčový atribut
Je to atribut, který může jedinečně identifikovat entitu z množiny entit. Například ID studenta může jedinečně identifikovat studenta ze skupiny studentů.
Atribut klíče je reprezentován elipsou stejně jako ostatní atributy. Text atributu klíče je však podtržen.
Atribut s více hodnotami
Je to atribut, který může obsahovat více hodnot. Je reprezentována dvojitými elipsami na ER diagramu.
Například osoba může mít více než jedno telefonní číslo, takže atribut telefonního čísla má více hodnot.
Odvozený atribut
Je to ten, jehož hodnota je dynamická a je odvozena z jiného atributu. To je reprezentováno nespojitou elipsou na ER diagramu.
Například věk osoby je odvozený atribut, protože se v průběhu času mění a lze jej odvodit z jiného atributu: datum narození.
Vztah
Vztah ukazuje, jak jsou entity vzájemně propojeny. Lze je považovat za slovesa, která spojují dvě nebo více podstatných jmen. Je to reprezentováno tvarem diamantu v ER diagramu.
Příklady: vztah mezi oddělením a zaměstnancem, mezi počítačem a společností, vztah mezi větou a matematikem, mezi umělcem a písní atd.
Kardinalita
Kardinalita určuje, kolik případů jedné entity souvisí s jednou instancí jiné entity. Obyčejnost je také úzce spjata s kardinálností.
Zatímco kardinálnost určuje výskyt vztahu, ordinalita popisuje vztah jako požadovaný nebo volitelný. Symbolika použitá pro toto je následující:
Jinými slovy, kardinálnost určuje maximální počet vztahů a ordinalita určuje absolutní minimální počet vztahů. V tomto smyslu existují čtyři typy vztahů:
Vztah jeden ku druhému
To je, když je jedna instance entity spojena s jedinou instancí jiné entity.
Například osoba má pouze jeden cestovní pas a jedné osobě je udělen pouze jeden cestovní pas.
Jeden až mnoho vztahů
To je, když je instance entity spojena s více než jednou instancí jiné entity.
Například zákazník může zadávat mnoho objednávek, ale mnoho zákazníků nemůže objednávat.
Mnoho vztahů k jednomu
To je, když je více než jedna instance entity spojena s jednou instancí jiné entity.
Například mnoho studentů může studovat pouze na jedné univerzitě, ale jeden student nemůže studovat na mnoha univerzitách současně.
Mnoho až mnoho vztahů
To je, když je více než jedna instance entity spojena s více než jednou instancí jiné entity.
Například student může být přiřazen k mnoha projektům a projekt může být přiřazen k mnoha studentům.
Jak vytvořit model entity vztahu?
Když dokumentujete systém nebo proces, pozorování systému více způsoby zvyšuje porozumění systému.
Diagramy vztahů mezi entitami se běžně používají k zobrazení obsahu databáze. Pomáhají vizualizovat, jak jsou data obecně propojena, a jsou zvláště užitečná při vytváření relační databáze.
Zde jsou kroky potřebné k vytvoření modelu entity vztahu:
Identifikujte entity
Prvním krokem při vytváření diagramu vztahů entit je identifikace všech entit, které budou použity. Entita není nic jiného než obdélník s popisem něčeho, o čem systém ukládá informace.
Pro každou entitu, na kterou si vzpomenete, by měl být nakreslen obdélník. Jako příklad lze uvést následující tři entity:
Identifikujte vztahy
Jsou sledovány dvě entity, pokud spolu souvisejí, je nakreslena souvislá čára spojující tyto dvě entity.
Pro popis vztahu entit je na právě přidané linii nakreslen diamant mezi těmito dvěma entitami.
Na diamantu by měl být napsán krátký popis jejich vztahu. Po příkladu máme následující:
Identifikujte kardinality
Pro účely uvedeného příkladu je známo, že student může být zařazen do několika kurzů a učitel může učit pouze jeden kurz. Diagram tedy vypadá takto:
Identifikujte atributy
Soubory, formuláře, zprávy a data, které organizace aktuálně udržuje, by měly být prostudovány, aby byly identifikovány atributy. K identifikaci subjektů lze také vést rozhovory s více zúčastněnými stranami. Zpočátku je důležité identifikovat atributy, aniž by je přiřadili konkrétní entitě.
Jakmile máte seznam atributů, musí být přiřazeny identifikovaným entitám. Ujistěte se, že atribut odpovídá přesně jedné entitě. Pokud se má za to, že atribut patří více než jedné entitě, musí být použit modifikátor, aby byl jedinečný.
Po přiřazení jsou identifikovány primární klíče. Pokud jedinečný klíč není k dispozici, musí být vytvořen.
Za účelem usnadnění příkladu je vedle klíče zobrazen pouze jeden atribut pro každou entitu. Bylo však možné identifikovat více atributů. Primární klíče lze od ostatních atributů odlišit, protože jsou podtrženy.
Vyplňte diagram
Pokračujte ve spojování entit s linkami a přidávejte diamanty k popisu každého vztahu, dokud nebudou popsány všechny vztahy.
Některé účetní jednotky nemusí být ve spojení s žádnou jinou účetní jednotkou. Na druhé straně mohou mít další entity více vztahů. Modernější reprezentace ER diagramu je následující:
Tipy pro efektivní ER diagramy
- Ujistěte se, že se každá entita v diagramu zobrazuje pouze jednou.
- V diagramu musí mít každá entita, vztah a atribut jméno.
- Vztahy mezi entitami musí být pečlivě prozkoumány. Jsou to opravdu nutné? Existují nějaké vztahy, které je třeba definovat? Jakékoli nadbytečné vztahy musí být odstraněny. Vztahy nejsou vzájemně propojeny.
- Doporučujeme používat barvy pro zvýraznění důležitých částí diagramu.
Příklady
Databázový diagram
Existují dva důvody pro vytvoření diagramu entity vztahů pro databázi: Navrhujete nový model nebo potřebujete dokumentovat svou existující strukturu.
Pokud máte existující databázi, která musí být zdokumentována, vytvořte diagram vztahů entit pomocí dat přímo z databáze:
Model internetového prodeje
Zde je příklad modelu vztahu entity pro internetový prodej pomocí schématu vztahu entity:
Reference
- Wikipedia, encyklopedie zdarma (2019). Model entita - vztah. Převzato z: en.wikipedia.org.
- Smartdraw (2019). Schéma vztahů entit. Převzato z: smartdraw.com.
- Chaitanya Singh (2019). Entity Relationship Diagram - ER Diagram v DBMS. Kniha pro začátečníky. Převzato z: Begnersbook.com.
- Guru99 (2019). Výukový diagram ER v DBMS (s příkladem). Převzato z: guru99.com.
- Vizuální paradigma (2019). Co je schéma vztahů entit (ERD)? Převzato z: visual-paradigm.com.
- Dataversity (2019). Stručná historie ER diagramu a informačního modelování. Převzato z: dataversity.net.
- Adrienne Watt (2019). Kapitola 8 Datový model vztahů entit. Otevřete text BC. Převzato z: opentextbc.ca.