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

Podobné dokumenty
Databázové patterny. RNDr. Ondřej Zýka

Databázové patterny Profinit. All rights reserved.

Obsah. Zpracoval:

Správa dat v podniku. MI-DSP 2013/14 RNDr. Ondřej Zýka, ondrej.zyka@profinit.eu

Operátory ROLLUP a CUBE

Metadata. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Datová kvalita. RNDr. Ondřej Zýka

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

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Pattern Datový sklad. RNDr. Ondřej Zýka

DATABÁZOVÉ SYSTÉMY. Metodický list č. 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í

Hierarchický databázový model

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

Obsah přednášky. Databázové systémy. Normalizace relací. Normalizace relací. Normalizace relací. Normalizace relací

M4 PDF rozšíření. Modul pro PrestaShop.

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura

Information and Data Management. RNDr. Ondřej Zýka

Datová kvalita. RNDr. Ondřej Zýka

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

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

Databáze Bc. Veronika Tomsová

MVC (Model-View-Controller)

01. Kdy se začala formovat koncept relačních databází (Vznik relačního modelu, první definice SQL)? a) 1950 b) 1960 c) 1970 d) 1980

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

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

EKONOMICKÝ A LOGISTICKÝ SOFTWARE. Luhačovice

POKROČILÉ POUŽITÍ DATABÁZÍ

Integrace datových služeb vědecko- výukové

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

Konceptuální modelování. Pavel Tyl

PRVNÍ ELASTICKÝ INFORMAČNÍ SYSTÉM : QI

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

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

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

DBS Konceptuální modelování

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

Střední průmyslová škola Zlín

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace

GIS Geografické informační systémy

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

Diagram datových toků - DFD

JEDNODUCHÁ A PRAKTICKÁ METODA ODHADU PRACNOSTI PROJEKTU (S UTILITOU KE STAŽENÍ ZDARMA)

Vazby mezi námi. Bisnode Petr Krejčí

PRŮZKUMNÍK ISDP NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP)

Analýza a Návrh. Analýza

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

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

Ontologie. Otakar Trunda

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

Zhodnocení architektury podniku. Jiří Mach

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

Kapitola 1: Úvod. Systém pro správu databáze (Database Management Systém DBMS) Účel databázových systémů

Průzkumník IS DP. Návod k obsluze informačního systému o datových prvcích (IS DP) vypracovala společnost ASD Software, s. r. o.

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Konsolidovaný reporting CZ/SK v Cognos případová studie sanofi-aventis

Bridge. Známý jako. Účel. Použitelnost. Handle/Body

Přechod na virtuální infrastrukturu

Datová kvalita základ úspěšného BI. RNDr. Ondřej Zýka, Profinit

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

Analýza a modelování dat 2. přednáška. Helena Palovská

Vyřešené teoretické otázky do OOP ( )

Business Suite for Notes

Správa dokumentů rady a zastupitelstva. Ladislav Kraus ladislav.kraus@karvina.cz

Architektura softwarových systémů

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

Když jde řídit podnik formou SaaS, tak proč by to nemělo jít v případě státu

OOT Objektově orientované technologie

OOT Objektově orientované technologie

TÉMATICKÝ OKRUH Softwarové inženýrství

Klinický informační systém Porodní kniha - případová studie -

Databáze ArcView) Databázový systém

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into

1. Integrační koncept

7.3 Diagramy tříd - základy

Příručka pro nasazení a správu výukového systému edu-learning

MBI - technologická realizace modelu

PHOTO-ON Profesionální on-line správa fotografií

Dolování v objektových datech. Ivana Rudolfová

QAD CRM. Vladimír Bartoš. konzultant

Obsah. Co je to Field-Map? Field-Map software Popis technologie Field-Map Zdroje

Terminologie v relačním modelu

Budování infrastruktury v době digitalizace společnosti

Deskripční logika. Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Deskripční logika 37 / 157

Plant-wide Automation

Objektově orientované technologie. Daniela Szturcová

Analýza. Pracovní postup Analýza

Logický datový model VF XML DTM DMVS

Entity: Profese, Klient

MARIE PACS S PACSem hezky od podlahy když se data sypou!

Počítačové systémy. Uživatelské účty. Mgr. Martin Kolář

Administrační systém ústředen MD-110

Vývoj informačních systémů. Přehled témat a úkolů

7.3 Diagramy tříd - základy

Metadata. RNDr. Ondřej Zýka

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen

12. Virtuální sítě (VLAN) VLAN. Počítačové sítě I. 1 (7) KST/IPS1. Studijní cíl. Základní seznámení se sítěmi VLAN. Doba nutná k nastudování

Transkript:

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

Obsah o Co je databázový pattern o Pattern: Přiřazení rolí o Pattern: Klasifikace

Databázové patterny o Odzkoušené a doporučené způsoby, jak řešit často se vyskytující požadavky o N-ární relace o Dědičnost o Přiřazení rolí o Klasifikace

Úrovně patternů o Stejný typ požadavků může být řešen v databázi mnoha způsoby o Jednoduše I při drobné změně požadavku je nutný zásah do databáze, Lehce srozumitelné uživatelům, analytikům, vývojářům. o Složitě Hodně změn se dá vyřešit pouze změnou dat. Komplikované datové struktury, uživatelsky nesrozumitelné. Vždy je nutné mít jednoduché uživatelské rozhraní. Koncový uživatel nesmí být zatěžován implementační složitostí.

Pattern: Přiřazení rolí o Definice Partneři kooperující s podnikem Podnik - zákazník, dodavatel, partner, zaměstnanec, Škola student, zaměstnanec, spolupracovník, přednášející,

Pattern: Přiřazení rolí I CUSTOMER ID ORGANIZATION/FIRST/LAST NAME CREDIT LIMIT 100 Moje data s.r.o. 1000000 CZK 101 Tvoje Data s.r.o. null SUPPLIER ID ORGANIZATION NAME TAXATION IDENTIFIER 369 Moje data s.r.o. 123456789 456 Vaše Data s.r.o. 987654321 PARTNER ID ORGANIZATION/FIRST/LAST NAME PARTNER TYPE 1001 Moje data s.r.o. 10 (Global partner) 1002 Tvoje Data s.r.o. 20 (Software testing)

Pattern: Přiřazení rolí I o Nejjednodušší řešení - každá role jiná entitu o Vlastnosti Jasně definované role Atributy jsou společné (Jméno) a specifické (EMPLOYEE NUMBER) Jedna organizace nebo člověk může mít více rolí Některé role mohou zastávat pouze organizace (SUPPLIER), některé pouze lidé (EMPLOYEE), některé jak lidé, tak organizace

Pattern: Přiřazení rolí I o Slabé stránky Není vhodný pro prostředí, kde často vznikají a zanikají role nebo kde se mění atributy rolí; Stejná informace je uložena na více místech (Jak řešit změnu adresy firmy Vaše Data); Těžko se skládá celkový obrázek o vazbách s ostatními subjekty; Není jasné, jak jednoznačně identifikovat subjekt.

Pattern: Přiřazení rolí II

Pattern: Přiřazení rolí II o Složitější řešení (umožňuje) odstranění redundance informací o osobách a organizacích. o Vlastnosti Role může být vázána na PARTY, nebo jenom na podtyp ORGANIZATION; Jednotlivé role jsou samostatné entity.

Pattern: Přiřazení rolí II o Vlastnosti Umožňuje jednoduše vázat další entity (faktura, objednávka) přímo na PARTY, není potřeba rozlišovat, zda se jedná o osobu nebo organizaci. Umožňuje jednoduše přidávat další role existujícím PARTY. Umožňuje, aby jedna PARTY vystupovala ve více rolích.

Pattern: Přiřazení rolí II o Slabé stránky V některých prostředí nejsou schopni rozlišit PARTY od rolí. Pattern naznačuje, že PARTY vystupuje v roli pouze jednou. Přidávání rolí vyžaduje přidání entity. Není vhodné pokud nové role vznikají často. Neumožňuje řídit informace ohledně typů rolí.

Pattern: Přiřazení rolí III

Pattern: Přiřazení rolí ROLE TYPE ID NAME PARENT ROLE TYPE ID 100 Party role Null Null PARENT NAME 101 Customer 100 Party role 102 Partner 100 Party role 103 Organization role 100 Party role 104 Supplier 103 Organization role 105 Person role 100 Party Role 106 Employee 105 Person role 107 Manager 106 Employee 108 Debtor 100 Party role

Pattern: Přiřazení rolí Party Role Partner Customer Organization Role Person Role Supplier Employee

Pattern: Přiřazení rolí III o Ještě složitější přístup PARTY ROLE je rodičovská entita pro všechny role. o Vlastnosti PARTY může přijímat mnoho rolí. Role pro jednotlivé party mají časovou dimenzi. Existuje stromová hierarchie mezi rolemi. Pokud nové role nevyžadují nové atributy, nevyžaduje přidávání rolí zásah do datového modelu.

Pattern: Přiřazení rolí III o Slabé stránky Je to složité Při uvedeném číselníku typů rolí je těžko pochopitelná vazba mezi Person role a Organization role a strukturou PARTY. Pokud nová role vyžaduje nové atributy, je stále nutné zasáhnout do datového modelu.

PARTY model - příklad

PARTY_ROLE jiný příklad

Pattern: Klasifikace o Definice Podpora členění instancí entity podle typů, do kategorií a taxonomií. Typy skupiny se společnými charakteristikami Kategorie kategorizace podporuje více druhů členění (Typy typů) Taxonomie původně věda zabývající se klasifikací organismů; členění dle definované struktury (například Klasifikace ekonomických činností (CZ- NACE))

Klasifikace Product Type Hardware Software Accessory Processors Storage devices Business software Gaming Software Cases Mouse pads Product Family Disk drives Carrying Cases Computer Memory Desktop Computers Laptop Computers Product Line Home Use Commercial Use Home Business Government

Pattern: Klasifikace I

Pattern: Klasifikace I ID NAME TYPE FAMILY LINE 1 LINE 2 CAPACIT Y 100 Save Disk 2000 HW Disk Drivers Home use Commercial Use 101 Carry All Case Accesory Carrying Case Commercial use 102 HS Software package 103 Memmory card M10 Software Hardware Computer memory Home Business Home use Home Business 20GB 1GB COLOU R Black Green

Pattern: Klasifikace I o Velice jednoduchý model, snadno pochopitelný pro všechny uživatele o Vhodný jako základ (prototyp), odrazový můstek pro pochopení a podrobnější analýzu o Implementace může používat omezení na hodnoty ve sloupcích nebo pouze uživatelská pravidla.

Pattern: Klasifikace I o Slabé stránky Složitá správa redundantních dat (HW hardware Hardware) Velice nepružný model Přidání kategorie přidání atributu Mnoho typů mnoho atributů Více typů klasifikací více sloupců (Product line 1, Product line 2); Nedají se udržovat data o klasifikacích popis, doba platnosti a podobně; Model nepodporuje složitější vazby o klasifikacích pouze povinné a nepovinné klasifikace.

Pattern: Klasifikace II

Pattern: Klasifikace II o Klasifikace Navzájem se vylučující typy Hardware, Accessory, Software; Více hodnot z klasifikace Product Line. o Klasifikace je možné měnit. o Pro porozumění modelu je důležité znát obsah tabulek (číselníků). o Umožňuje nezávislé řízení klasifikací MDM o Rozdílné klasifikace mohou mít své atributy. o Porozumění modelu není extrémně složité.

Pattern: Klasifikace II o Slabé stránky Málo pružný model, pokud je potřeba přidávat nové klasifikace. Klasifikace jsou udržovány v oddělených entitách. Není zde standardní způsob, jak řídit typy. Každý typ má své atributy. (To může být i výhoda.) Mnoho typů klasifikací mnoho atributů, mnoho entit s klasifikacemi.

Pattern: Klasifikace III

Pattern: Klasifikace III o Popis Sjednocení všech kategorií do jedné entity; Zavedení klasifikace kategorií; Hierarchická struktura na kategoriích i typech kategorií (například pro reporting). o Vlastnosti Jednoduché řízení klasifikací přidávání nové kategorizace, změna hierarchie kategorií; Vhodné pokud je potřeba mnoho klasifikací; Jednoduchý po databázové stránce jenom čtyři tabulky; Umožňuje jednoduše složitější analýzy podle různých klasifikací.

Pattern: Klasifikace III o Slabé stránky Těžký na porozumění, zejména při úpravách dat číselníků. Nevynucuje žádná business pravidla. Není vazba mezi hierarchií Kategorií a Typů kategorií. Model neumožňuje mít rozdílné atributy pro specifické typy.

Shrnutí o Řešení musí odpovídat Složitosti business domény, Složitosti business pravidel, Schopnosti analytiků a vývojářů porozumět modelu, Schopnosti uživatelů udržovat model. o Vždy je vhodné při návrhu modelu vytvářet i data entit.

Další směry o Řešení časové platnosti záznamu. o Řešení více hierarchií. o Řešení definice různých atributů pro různé typy.

Co si zapamatovat o Co to jsou databázové pattery o Jaké databázové patterny se používají o Jaké řešení pro pattern Rolí se používají, jaké mají slabé a silné stránky o Jaké řešení pro pattern klasifikace se používají, jaké mají slabé a silné stránky

www.profinit.eu Diskuse