Design databáze. NDBI /14 RNDr. Ondřej Zýka,

Podobné dokumenty
Design databáze. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Design databáze. RNDr. Ondřej Zýka

Design databáze. RNDr. Ondřej Zýka

Databázové patterny Profinit. All rights reserved.

Transakce Profinit. All rights reserved.

Integrace dat Profinit. All rights reserved.

Metadata Profinit. All rights reserved.

Databáze 2011/2012. Optimalizace, základní konstrukty T-SQL RNDr.David Hoksza, Ph.D.

Databáze. Optimalizace, základní konstrukty T-SQL David Hoksza

Databáze 2011/2012. Logický model DB. RNDr.David Hoksza, Ph.D.

GLOBÁLNÍ ARCHITEKTURA ROB

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D.

Information and Data Management Profinit. All rights reserved.

Specifikace pro SW aplikaci Start-up business.

Optimalizace. Ing. Marek Sušický, RNDr. Ondřej Zýka

Databáze 2011/2012 Konceptuální model DB. RNDr. David Hoksza, Ph.D.

4 Datový typ, proměnné, literály, konstanty, výrazy, operátory, příkazy

Datová kvalita Profinit. All rights reserved.

Databáze 2011/2012 T-SQL - kurzory, funkce. RNDr.David Hoksza, Ph.D.

Design databáze. RNDr. Ondřej Zýka

Dimenzionální modelování Profinit. All rights reserved.

Optimalizace Profinit. All rights reserved.

EXTRAKT z mezinárodní normy

- Aplikace je napsána v C#.NET, je instalována na webovém serveru - Data jsou ukládána v databázi MS-SQL 2005 a vyšší

Portál veřejné správy

Requirements Engineering

Vizualizace TIN (trojúhelníková nepravidelná síť) v Marushka Designu

Obsah cvic ení procvic ovane dovednosti

IPS1 zápočtový test na fei-learnu

Program prevence nehod a bezpečnosti letů

Možnosti připojení WMS služby do Klienta v Marushka Designu

Helios Orange Plugin Zadávání vlastností

Business Intelligence - principy, efekty, předpoklady. OKsystem, 26/11/2009

ZŠ ÚnO, Bratří Čapků 1332

ZŠ ÚnO, Bratří Čapků 1332

PŘÍLOHA D Požadavky na Dokumentaci

Práce s WKT řetězci v MarushkaDesignu

Tile systém v Marushka Designu

Databázové systémy I. - II. 2009/2010

IT Security a Cloud. Zbyněk Juřena Managing Director ALTRON Business Solutions, a.s. září 2014

Instalace a technické informace

Portál veřejné správy

Configuration Management

Etržiště České pošty Centrum veřejných zakázek.

Cíl kapitoly: Cílem této č{sti je naučit se při debutov{ní číst hexadecim{lní hodnoty odpovídající z{znamu celých a re{lných čísel.

Novinky Autodesk Vault 2012 (Workgroup, Collaboration, Professional)

Základní mechanizmy UML

Naxos MULTIMEDIÁLNÍ ARCHIV

Základní škola Valašské Meziříčí, Vyhlídka 380, okres Vsetín, příspěvková organizace

Vykreslení obrázku z databázového sloupce na referenční bod geometrie

Sledování provedených změn v programu SAS

Simulátor krizových procesů na úrovni krizového štábu. Systémová dokumentace

Případy užití RSSystems

Databáze 2011/2012 SQL SELECT II. RNDr.David Hoksza, Ph.D.

16. Kategorizace SW chyb, kritéria korektnosti a použitelnosti, spolehlivost SW

ONLINESKLAD.CZ. Vysvětlení pojmů: V tomto manuálu i v celém systému figurují 3 základní osoby: Popis administračního rozhraní

Operační systém Windows 8.1

HTML šablona v MarushkaDesignu

Pozn.: v číselníku je často obsaženo více možností k výběru, ale pro program Interreg V-A ČR-Polsko jsou relevantní pouze možnosti výběru zde uvedené.

Lokalizace souřadnic v MarushkaDesignu

Témata v MarushkaDesignu

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

Eda. Evidence obchodních aktivit. Proces nákupu

Tento projekt je spolufinancován. a státním rozpočtem

Datové typy. $PROG 1 Str. 1/5

Architektura a design - úvod. Tomáš Krátký, Bohumír Zoubek

VIS ČAK - Uživatelský manuál - OnLine semináře

Úvod Strategie rozvoje infrastruktury pro prostorové informace v ČR do roku (GeoInfoStrategie) Eva Kubátová, koordinátorka projektu

Vedení projektů, Odhadování, historie. Jiří Mach

1. Předmět díla a technické požadavky

Jak zavést systém managementu kvality

Automatizace SDNS uživatelská dokumentace

INFORMACE O NOVÉ VERZI POSKI REAL

Informační ikony v MarushkaDesignu

DeepBurner Free 1.9. Testování uživatelského rozhraní s uživateli Deliverable B1 TUR Testování uživatelských rozhraní 2011 ČVUT FEL

Portál veřejné správy

Ministerstvo vnitra České republiky vyhlašuje Výzvu k předkládání žádostí o finanční podporu v rámci Integrovaného operačního programu

Zpráva pro uživatele

Technická specifikace předmětu plnění. VR Organizace dotazníkového šetření mobility obyvatel města Bratislavy

Generování Homepage ze serveru AReality.sk

Teradata basic Profinit. All rights reserved.

Dobývání znalostí z databází (MI-KDD) Přednáška číslo 1 - Úvod

Použití databází na Webu

Informačně expertní systém včasného varování a vyrozumění v důsledku stanovení rizik skalního řícení

Sylabus modulu: D Útvarové a procesní řízení, plánování, IT podpora projektového řízení

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

VŠB Technická univerzita, Fakulta ekonomická. Katedra regionální a environmentální ekonomiky REGIONÁLNÍ ANALÝZA A PROGRAMOVÁNÍ.

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

DTM (Digitální technická mapa) v Marushka Designu

Miroslav Dítě, Zdeněk Teplý, Pavel Končel, Miloš Urbánek

Eda. Evidence obchodních aktivit. Proces prodejních kontraktů

Metoda klíčových ukazatelů pro činnosti zahrnující zvedání, držení, nošení

NÁVODNÁ STRUKTURA MÍSTNÍHO AKČNÍHO PLÁNU VZDĚLÁVÁNÍ

Provozní řád služby zálohování CIT

MINISTERSTVO VNITRA generální ředitelství Hasičského záchranného sboru České republiky Kloknerova 26, pošt. přihr.69, Praha 414

Technická dokumentace

Maturitní prací student osvědčuje svou schopnost samostatně pracovat na projektech a aktivně využívat nabyté zkušenosti

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Transkript:

Design databáze NDBI036 2013/14 RNDr. Ondřej Zýka, ndrej.zyka@prfinit.eu

Návrh databáze Čtyři krky Shrmáždění business pžadavků Knceptuální mdel Lgický mdel Fyzický mdel Mdelvání d začátku neb rzvj stávajících systémů Nutnst začlenění klních systémů (prstředí) Vazba na lgický mdel rganizace Vazba na existující datvé mdely

Shrmáždění business pžadavků Cíle Pchpit business dménu Przumět ptřebám a pžadavkům zadavatelů a uživatelů Ověřit pchpení zadání Prstředky Interview Studium a dkumentace systémů Splupráce s experty v business blasti Infrmace rganizační struktuře a další dkumenty Data assesment Review stávajících systémů a prcesů Výstup Priritizvaný seznam pžadavků Dkument ppisující dménu (byznys slvník) Data-flw diagram

Data-flw diagram Data-flw diagram ppisuje S jakými daty se pracuje Kd data vytváří Kd a jak data zpracvává (mdifikuje) Kde jsu data ulžena Kd data pužívá Interface na úrvni dat Pužití Datvé tky na různých úrvních granularity Pdnikvé tky dat (bchdní prcesy) Tky dat na technické úrvni Ppisy ETL prcesů Ppisy integračních prcesů Ověření Všechna data jsu definvána Persistentní data jsu ulžena Každá data mají zdrj Pr každá data existuje dběratel

Data-flw diagram - příklad Decmpsitin Level 2 1.1.1 databáze/ subr CUSTOMER 1.1.2 CUSTOMER_ORDER Place Orders + [BOOK_ORDER] Bk Supplier Receive Orders + 1.1.3 Bk Shipment Invice [SHIPMENT] Bk Supplier datvá entita/ business bject funkce Prcess Invices + [PAYMENT] Bk Supplier vstup/výstup

Seznam pžadavků

Seznam pžadavků pžadavku Krátký ppis Pdrbné vysvětlení Oblast / systém Vazba na další pžadavky Zadavatel Pririta Funkční / nefunkční pžadavky

Knceptuální mdel Cíle Určit entity a jejich atributy U atributů určit jejich hdnty a vlastnsti U entit určit jejich ptenciální klíče (identifikátry) Identifikvat vazby mezi entitami Výstupy Kardinalita relace Jmén relace Ppis (rle) ER diagram Frmální věření E/R diagramu Mezi každými dvěma entitami je maximálně jedna relace. Neexistuje cyklická závislst. Entity s relací typu 1:1 zřejmě budu tvřit puze jednu entitu. Žádná entita nemá atribut, který je kandidátním klíčem jiné entity. Nepřímé relace jsu asi zbytečné.

Knceptuální mdel

Ntace Mnh standardů a ddavatelských specifik. UML ntace dle standardu UML, pužita ve všechny nástrje pdprující UML. Infrmatin Engineering standard pužívaný v mnha nástrjích. Existuje něklik verzí. Obecně, entity jsu bdélníka a relace jsu linky s různými zaknčeními. EF1X standardní ntace pr mdelvání relací a entit. Symbly značují kmbinaci vlitelnsti a kardinality entity. Barker Vytvřena Richardem Barkerem. Pužívaná zejména case nastrji Oracle. Speciální ntace pr dědičnst, vlastní ntace pr násbnst a speciální značky pr atributy. Filtered IE puze v Embarcader. Nezbrazuje cizí klíče. Entity/Relatinship Sybase specific, Entity/Relatinship je speciální verze IE ntace. Merise pužívá asciace míst relací. Crw's Feed Jedna z verzí IE ntace, tut ntaci pužívá FSLDM.

Násbnst a vlitelnst CAR Nejvíce jedn aut CAR Právě jedn aut CAR Libvlný pčet aut CAR Alespň jedn aut

Ntace entit a atributů

Ntace - příklady Allwed multiplicities N/A substituted by Nt Used Used Nt Used because nt needed

Pravidla pr čtení relací Assertin 2: "Each LINE ITEM must be part f exactly ne ORDER " Reading directin LINE ITEM Line number Quantity Price Delivery date part f 0..* 1 cmpsed f ORDER Order number Order date Assertin 2: "Each ORDER may be cmpsed f ne r mre LINE ITEMS "

Pravidla pr čtení

Vytvření lgickéh mdelu Cíle Vytvřit platfrmvě nezávislý lgický datvý mdel Pstup Převést entity na tabulky Rzhdnut, jak se bude pracvat se slžitými atributy Rzhdnut, jak se bude pracvat s atributy nabývajícími více hdnt Výběr primárníh klíče Převést binární relace (závislsti) typu 1:n na cizí klíče Vyřešit n-ární relace a relace typu n:n Rzhdnut způsbu reprezentace subtypů Nrmalizace mdelu Výstup Lgický datvý mdel

Kritéria pr výběr primárníh klíče Primární klíč: musí mít vždy definvanu hdntu (nt null), musí mít stálu hdntu (během celéh živtníh cyklu řádku), musí být c mžná nejmenší, nesmí bsahvat žádné zakódvané infrmace, musí být přístupný pr všechny uživatele. Umělý klíč Nevýhdy: přidává slupec d tabulky (s indexem), hdnty nemají význam pr uživatele Výhdy: snadná implementace rzhraní, unifrmní řešení

Vazba na bjektvé mdelvání Object-relatinal impedance mismatch Declarative vs. imperative interfaces RM data jak interface Schema bund RM Slupec k jedné tabulce, tabulka d schématu, OOM dědičnst bjektů Access rules RM relační algebra, OOM vlnější a slžitější knstrukty Relatinship between nuns and actins OOM - úzká vazba mezi bjekty a peracemi Uniqueness bservatin RM identifikace na základě klíče s jasným bsahem Nrmalizatin OOM nepužívá se nrmalizace Schema inheritance RM nepužívá se Structure vs. Behaviur OOM údržba, srzumitelnst, upravvatelnst, rzšiřitelnst, reuse, RM lgická integrita, efektivita, fault-tlerance Set vs. graph relatinships

Převd binární relace 1:N na cizí klíč

Převd závislsti na cizí klíč A U T H O R A U T H O R I D L A S T N A M E F I R S T N A M E P H O N E N U M B E R A D D R E S S A U T H O R A U T H O R I D L A S T N A M E F I R S T N A M E P H O N E N U M B E R A D D R E S S P I C T U R E P I C T U R E I D F O R M A T B Y T E S I Z E P I X E L W I D T H P I X E L H E I G H T P I C T U R E A U T H O R I D P I C T U R E I D F O R M A T B Y T E S I Z E P I X E L W I D T H P I X E L H E I G H T

Relace typu n:n AUTHOR AUTHOR LAST FIRST PHONE NUMBER ADDRESS BOOK BOOK TITLE CATEGORY QUANTITY SOLD AUTHOR AUTHOR LAST FIRST PHONE NUMBER ADDRESS AUTHOR-BOOK Assciative entity BOOK BOOK TITLE CATEGORY QUANTITY SOLD

Rzhdnutí reprezentaci dědičnsti Něklik pužívaných mžnstí V jedné tabulce: L-schéma Ve více tabulkách Všechny atributy Jenm vlastní atributy

První nrmální frma Tabulka je v první nrmální frmě, když každý slupec bsahuje právě jeden atmický datvý typ, který již nemá vnitřní strukturu z phledu businessu. Pr rzhdnutí primárních a cizích klíčích musí být tabulka v prvním nrmálním tvaru.

Vytvření fyzickéh mdelu Cíle Vytvřit fyzický mdel s hledem na specifika aplikace a pužitý typ databáze, pužitý hardware Pstup Tabulky (jmenné knvence) Datvé typy Vytvření prcesní matice Rzhdnutí struktuře tabulek Rzhdnutí primárním klíči (indexu) Implementace business pravidel - cnstraints Indexy, partitining, Denrmalizace, ulžení redundantních dat, spjení tabulek Fyzické ulžení tabulek Výstup Fyzický datvý mdel Implementační skripty

Tabulky (jmenné knvence) Case sensitive/case insensitive servery Omezení délky jména tabulek (Oracle 30 znaků) Omezení délky jmen slupců Omezení na jmenné prstry (tabulky, view, indexy, prcedury, ) Przumění mdelu Datvé tabulky Číselníky Lgy Uživatelské tabulky Natural jin

Datvé typy Dmain uživatelské datvé typy + lepší przumění + zajištění knzistence - nárky na údržbu Char, varchar, nvarchar, Numerické datvé typy int, tinyint, bigint, numeric(p,s), Datum rzsah, přesnst, způsb práce Timestamp je t čas neb není Binary, image, text, mem, Blean - raději "clumn_name" CHAR(1) default 'A' nt null cnstraint CKC_check_name check ("clumn_name" in ('A','Y')) Identity, Autincrement NULL, Nt null, Default value Speciální datvé typy

Prcesní matice

Rzhdnutí struktuře tabulek Cíle: Minimalizvat velikst Pužít ptimální přístupvé metdy Standardní tabulka Insert, Delete, Update, Scan, Index Index-rganized tables (Clustered index) + menší + rychlejší přístup p indexu - nárčnější insert, delete (update) Oracle nvější implementace, pdpra 7x24

Implementace business pravidel Dmain integrity - Check Na úrvni slupce Null/Nt null Default Check (frmat) Na úrvni řádku Entity integrity - primary key implementván unikátním indexem na nt null slupcích záznam v katalgu Unikátnst hdnt implementván unikátním indexem

Referenční integrita Implementace freign key Deklarativní definice Pužití triggerů Pužití ulžených prcedur Kód aplikace C se stane když Primární klíč se přidá/změní/zruší Cizí klíč se přidá/změní/zruší

Typy referenčních integrit Cnstraint Cascade update / delete Cascade Null Cascade Default Autmatic insert Bez mezení Restriktivní Insert PK Zachvání PK Zachvání PK Zachvání PK Zachvání PK Zachvání PK Zachvání PK Zachvání PK Insert FK Update PK Update FK Delete PK Puze existující hdnty PK Puze pkud nemá vazbu Jen na existující hdnty Puze pkud nemá vazbu Puze existující hdnty PK Změní i dpvídající FK Jen na existující hdnty Delete všech řádků s dpvídajícím FK Existující hdnty PK neb Null Odpvídající FK změní na Null Jen na existující hdnty PK neb Null Odpvídající FK změní na Null Existující hdnty PK neb Default Odpvídající FK změní na Default Jen na existující hdnty PK neb Default Odpvídající FK změní na Default Existující hdnty neb přidá řádek s PK Puze pkud nemá vazbu Existující hdnty neb přidá řádek s PK Puze pkud nemá vazbu Bez mezení (sirtci) Bez mezení (sirtci) Bez mezení (sirtci) Bez mezení (sirtci) Puze existující hdnty PK Není pvlen Jen na existující hdnty Není pvlen Delete FK Bez mezení Bez mezení Bez mezení Bez mezení Bez mezení Bez mezení Bez mezení

Důsledky pužití integritních mezení + zaručují knzistentní mdel - zvyšují výpčetní slžitst i v případě, kdy nedchází ke změnám (Oracle nt null) - kmplikují údržbu pvlení/zakázání věřvání integritních mezení

Denrmalizace Partitining Hrizntální Vertikální Ulžení vypčtených hdnt Eliminace nákladných jinů

Hrizntální rzdělení tabulek Přístupy puze na část tabulky Příklady: Aktivní a neaktivní plžky Histrické záznamy Mžnsti Rzdělení tabulek Přidání tabulky (duplicitní záznamy) Partitining Synchrnizace Table partitining Triggery Aplikační lgika

Rzdělení tabulky Rzdělení tabulky Part 1 Part 1 Table Part 2 View Table Part 3 Výhdy práce s menším mnžstvím dat méně prblémů se zamykáním lepší řízení indexů mžnst detailní ptimalizace Nevýhdy nutnst synchrnizace triggery, aplikační lgika Nárčnější údržba

Partitining Transparentní z phledu aplikace Rzdělení dle danéh rzsahu neb hdnt Dynamicky pdle hdnt Dynamicky vytvářen pr každý měsíc Nejčastější pužití Pdle hash klíče (určuje se puze pčet partitins) Part 1 Part 2 Part 3 Part 4 Více úrvňvý partitining Pdle času, pdle pbčky Mžnst individuálníh řízení partitin Omezený pčet partitin pdle implementace

Vertikální rzdělení tabulek Přístupy puze na některé slupce tabulky Příklady: Blby, brázky, ppisy Mžnsti Rzdělení tabulek Přidání tabulky (duplicitní záznamy) Vytvření indexu Synchrnizace Triggery Aplikační lgika

Rzdělení tabulky Rzdělení tabulky Table P a r t P a r t P a r t View Table P a r t 1 2 3 1 Výhdy práce s menším mnžstvím dat méně prblémů se zamykáním mžnst ptimalizace Nevýhdy nutnst synchrnizace triggery, aplikační lgika nárčnější údržba

Přidání indexů Transparentní z phledu aplikace Jeden clustrvaný index Libvlný pčet dalších indexů Autmatická údržba Pkrývající dtazy I n d e x 1 I n d e x 2 Nárky na diskvý prstr Snížení výknu pr OLTP aplikace

Ulžení vypčtených dat Přidání slupce Přidání tabulky Synchrnizace Trigerry Ulžené prcedury Aplikační lgika Nutn zavést prcedury pr údržbu a resynchrnizaci

Materializvaná view Transparentní z phledu aplikace Autmatické řízení výpčtu view Nákladné výpčty, nutnst mžnsti řízení výpčtů asynchrnně Duplicitní ulžení dat nárky na diskvý prstr

Eliminace nákladných jinů Neustálé dtahvání hdnt z číselníků Omezení datvých serverů (Sybase třicet tabulek v jednm jinu) Suptype/supertype vazba Mžnsti Redundantní data Spjení tabulek

Fyzické ulžení tabulek Cíl Distribuce zátěže na c nejvíce fyzických disků Rzlžení tabulek/indexů na disky Mžnsti datvých serverů (tablespace, segment) Mžnsti hardware (SAN, NAS, diskvé ple) Puze RA 1+0 Vazba na pčet prcesrů Mžnsti paralelníh zpracvání datvéh serveru

B-tree index příklad křen vnitřní blk indexu listvá úrveň indexu data klíč řádek blk Blk 1001 Bennet Chet 1421,1 1007 Karsen Kit 1876,4 1306 Smith Ade 1242,3 1062 Blk 1007 Bennet Chet 1421,1 1132 Fx Jhn 1317,3 1133 Hunter Len 1213,1 1127 Blk 1306 Karsen Kit 1876,4 1198 Larn Pard 1451,2 1199 Peters Mary 1856,4 1200 Blk 1132 Bennet Chet 1421,1 Burns Saly 1409,4 Claim Dave 1129,3 Dull Rb 1409,1 Blk 1133 Fx Jhn 1317,3 Greane David 1876,4 Green Mitch 1213,2 Greene Je 1409,2 Blk 1212 Larry Jhn 254 A3 Jetkins Paul 244 C3 White Susan 156 A1 Blk 1213 Hunter Len 124 A3 Green Mitch 125 B1 Smith Ade 156 A3 Blk 1421 Blk 1127 Bennet Chet 101 B2 Hunter Len 1213,1 Jetkins Paul 1212,2 Ringer Jhn 144 C1 INSERT INTO user VALUES ( Burns, Saly,128, A1 ) Blk 1409 Dull Rb 128 B1 Greene Je 142 A2 Prt Je 156 C3 Burns Saly 128 A1

Clustered index příklad křen vnitřní blk indexu listvá úrveň indexu klíč blk Blk 1001 Bennet Chet 1007 Karsen Kit 1306 Smith Ade 1062 Blk 1007 Bennet Chet 1132 Fx Jhn 1133 Hunter Len 1127 Blk 1306 Karsen Kit 1198 Larn Pard 1199 Peters Mary 1200 Blk 1132 Bennet Chet 101 B2 Burns Saly 128 A1 Claim Dave 123 A1 Blk 1133 Fx Jhn 100 A0 Greane David 111 E3 Green Mitch 125 B1 Greene Je 156 C3 Blk 1127 Hunter Len 122 A3 Jetkins Paul 124 A5 INSERT INTO user VALUES ( Burns, Saly,128, A1 )

Indexy přístupvé metdy Typy indexů B-tree Clustered/nnclustered Bitmapvé indexy Standardní index Hledání pdle indexu Scan nejnižší úrvně Dtaz pkrytý indexem Ignrvání indexu scan dat Clustered index Hledání pdle indexu Scan dat d nalezenéh řádku Scan nejnižší úrvně (scan dat)

Pužití indexů Select Pkrývající query Grup by Order by Jin Nepužívat indexy pr malé tabulky Selektivita indexů

Data ulžená p slupcích Vertica SAP Sybase IQ Oracle bitmapvé indexy

Tabulka relační ulžení dat DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH NUMBER VARCHAR2(50 BYTE) VARCHAR2(500 BYTE) NUMBER VARCHAR2(20 BYTE) NUMBER VARCHAR2(40 BYTE) NUMBER NUMBER NUMBER Struktura tabulky Datvé blky DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PRICE PROVER PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PRICE PROVER PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PRICE PROVER PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PRICE PROVER PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR QTY COLOUR PRICE PRICE PROVER PROVER PRICE PROVER WTH WTH WTH HEIGHT HEIGHT HEIGHT DEPTH DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PROVER PRICE PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PROVER PRICE PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION DESCRIPTION QTY COLOUR QTY COLOUR PRICE PROVER PRICE PROVER WTH WTH HEIGHT HEIGHT DEPTH DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH

Tabulka data ulžená p slupcích DESCRIPTION QTY COLOUR PRICE PROVER WTH HEIGHT DEPTH NUMBER VARCHAR2(50 BYTE) VARCHAR2(500 BYTE) NUMBER VARCHAR2(20 BYTE) NUMBER VARCHAR2(40 BYTE) NUMBER NUMBER NUMBER Struktura tabulky Datvé blky COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR COLOUR QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY QTY

Data ulžená p slupcích SELECT Cunt(*) FROM sale where clr = Green SELECT Cunt(*) FROM sale where clr in ( Green, Red )

Data ulžená p slupcích SELECT SUM(qty) FROM sale (2 * 64) + (3 * 32) + (2 * 16) + (1 * 8) + (3 * 4) + (2 * 2) + (3 * 1) = 283

Bitmapvé indexy Rychlé pr slupce s malu kardinalitu Rychlé pr perace na mál slupcích Slžitý update Zamykání a rebuild velkých blků Pmalé pr dtaz na jeden knkrétní řádek

Metdy ukládání bitmapvých indexů Samé nuly neb jedničky Blky se neukládají puze indikátr jejich existence D 20% nul neb jedniček Data se kódují jak suvislé mnžiny hdnt Mezi 20% a 80% jedniček Ukládá se skutečná mapa hdnt

Typy slupcvých indexů Mnh různých typů Více indexů na jednm slupci Bitvý index pr slupce s malu kardinalitu Bitvý index pr slupce s velku kardinalitu a malu selektivnstí Indexy pr slupce s velku kardinalitu G-Array (příbuzný B-tree) Prsté kmprimvané ulžení dat (pr textvé řetězce) Speciální indexy pr čas a datum Indexy pr jiny, prvnání a další perace

Velikst databáze (GB) Sybase IQ ulžení dat a indexů 500 450 400 350 300 250 200 150 100 50 0 Indexy Sumace Čistá data Čistá data CBRD Tradiční RDBMS Indexy jsu už data Nízké náklady na ulžení dat Rychlé zpracvání maléh mnžství dat

C si zapamatvat Jaké jsu hlavní krky při návrhu datvéh mdelu C t je knceptuální mdel a c bsahuje C je cílem sběru byznys pžadavků při vytváření knceptuálníh mdelu C je lgický mdel a c bsahuje Jaké aktivity je nutné prvést při převdu knceptuálníh datvéh mdelu na lgický datvý mdel Jaké pžadavky je ptřeba brát v úvahu při výběru primárních klíčů Jaké jsu hlavní rzdíly mezi relačním a bjektvě rientvaném mdelvání Kdy a prč se vytváří fyzický datvý mdel Které aktivity je nutné prvést při převdu lgickéh datvéh mdelu na fyzický datvý mdel C t je denrmalizace Jaké typy denrmalizace znáte Jaký je rzdíl mezi strukturu tabulky s klastrvaným a neklastrvaným indexem K čemu služí indexy a pr jaké přístupvé metdy k datům se pužívají Jak vypadají bitmapvé indexy C t je slupcvé ulžení dat (slupcvé indexy)

www.prfinit.eu Diskuse