Fyzické uložení dat a indexy

Podobné dokumenty
Databázové systémy úvod

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

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů

Databázové systémy úvod

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Databázové systémy úvod

Databáze II. 1. přednáška. Helena Palovská

Databáze Bc. Veronika Tomsová

B Organizace databáze na fyzické úrovni u serveru Oracle

Databázové systémy Cvičení 5.2

Optimalizace SQL dotazů

Virtuální privátní databáze

Databázové systémy BIK-DBS

Použití databází na Webu

O Apache Derby detailněji. Hynek Mlnařík

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

Michal Krátký, Miroslav Beneš

Oracle XML DB. Tomáš Nykodým

ÚVOD DO DATABÁZÍ. Metodické listy pro předmět

1. Databázové systémy (MP leden 2010)

autoři: Rudolf Bayer, Ed McCreight všechny vnější uzly (listy) mají stejnou hloubku ADS (abstraktní datové struktury)

Architektura softwarových systémů

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

FIREBIRD relační databázový systém. Tomáš Svoboda

Využití XML v DB aplikacích

Stromové struktury v relační databázi

5. POČÍTAČOVÉ CVIČENÍ

BIG DATA je oveľa viac ako Hadoop. Martin Pavlík

4IT218 Databáze. 4IT218 Databáze

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

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

Databázové a informační systémy Jana Šarmanová

Stručný obsah. část III Aktualizace dat Kapitola 10: Aktualizace databáze 257 Kapitola 11: Integrita dat 275 Kapitola 12: Zpracování transakcí 307

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:

DBS Transformace konceptuálního schématu na

Základy informatiky. 08 Databázové systémy. Daniela Szturcová

Novinky v Microsoft SQL Serveru RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT

Programování a implementace Microsoft SQL Server 2014 databází

Databázové systémy trocha teorie

Kapitola 11: Indexování a hešování. Základní představa

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

INDEXY JSOU GRUNT. Pavel Stěhule

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

Klíčová slova: dynamické internetové stránky, HTML, CSS, PHP, SQL, MySQL,

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1

Tvorba informačních systémů

Stěhování aplikací. Michal Tomek, Sales Manager

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer

Jazyk SQL 1. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12

Optimalizace dotazů a databázové transakce v Oracle

Okruhy z odborných předmětů

Databázové a informační systémy

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

Úvod do databázových systémů. Ing. Jan Šudřich

6. Fyzická (interní) úroveň databázového systému

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí

Které příkazy SQL lze v PL/SQL procedurách a funkcích volat bez omezení a které s omezením? Jak lze v PL/SQL deklarovat datový typ?

Složitosti základních operací B + stromu

04 - Databázové systémy

SQL tříhodnotová logika

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

Vytváření uživatelských datových typů a funkcí v Javě

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

Ukládání a vyhledávání XML dat

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

IPZ laboratoře Struktura pevného disku L305 Cvičení 1 Cvičící:

6. Fyzická (interní) úroveň databázového systému

Najde si Software Defined Storage své místo na trhu?

12. blok Pokročilé konstrukce SQL dotazů - část II

Systémová administrace portálu Liferay

Hierarchický databázový model

37. Indexování a optimalizace dotazů v relačních databázích, datové struktury, jejich výhody a nevýhody

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

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

RELAČNÍ DATABÁZE. Cíl:

DBS Konceptuální modelování

Semináˇr Java X JDBC Semináˇr Java X p.1/25

Struktura pamětí a procesů v DB Oracle. Radek Strnad

Stručný obsah. K2118.indd :15:27

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

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

Algoritmy výpočetní geometrie

Komprese a dotazování nad XML dokumenty

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Datové struktury Úvod

Ukázka knihy z internetového knihkupectví

Databázová řešení IBM

Lekce 6 - Správa prostorových dat

Archivace relačních databází

13. blok Práce s XML dokumenty v databázi Oracle

Administrace Oracle. Práva a role, audit

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz

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

Databázové systémy úvod

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

PRŮBĚHOVÝ TEST Z PŘEDNÁŠEK

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

Základy informatiky. 06 Databázové systémy. Kačmařík/Szturcová/Děrgel/Rapant

Transkript:

Fyzické uložení dat a indexy Michal Valenta Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 1 / 18

Různé úrovně pohledu na data Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 2 / 18

Oracle fyzická a logická struktura databáze Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 3 / 18

Oracle fyzická struktura databáze Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 4 / 18

Dvou a vícevrstvá architektura Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 5 / 18

Oracle fyzická organizace relační tabulky Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 6 / 18

Adresa řádku (Oracle, ale podobně i jinde) Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 7 / 18

Index typu B*-Tree CREATE INDEX nazev_idx on Titul (nazev); CREATE UINIQUE INDEX titul_id_idx on Titul (titul_id); Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 8 / 18

Index typu B-Tree - charakteristika B - strom (řádu m) je m-ární strom, splňující následující omezení Kořen má nejméne 2 potomky, pokud není listem každý uzel kromě kořene a listu má nejméně [m/2] a nejvýše m potomků každý uzel ma nejméně m/2 1 a nejvíce m 1 datových záznamů (většinou jen klíčů) všechny cesty ve stromě jsou stejně dlouhé data v nelistovém ulzu jsou organizována p 0 (k 1, p 1 ), (k 2, p 2 ),..., (k n, p n ), u kde p0, p 1,..., p n jsou ukazatele na potomky k0, k 1,..., k n jsou klíče u je nevyužitý prostor záznamy(k i, p i ) jsou uspořádany vzestupně podle klíčů m/2 1 <= n <= m 1 odpovídá-li ukazateli p i, kde i < 1, n > podstrom U(p i ) platí: (i) pro každé k U(p i 1 ) je k <= k i (ii) pro každé k U(pi ) je k > k i listy obsahují úplnou množinu klíčů a mohou se lišit strukturou. Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 9 / 18

Bitmapové indexy Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 10 / 18

Použití bitmapového indexu při vyhodnocení dotazu Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 11 / 18

Použití bitmapového indexu při vyhodnocení dotazu Výběrová podmínka s operátorem IN Výberová podmínka s operátorem AND/OR Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 12 / 18

Porovnání indexů B-strom a Bitmap Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 13 / 18

Indexově organizovaná tabulka (Index-organized table) Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 14 / 18

Shluk (Cluster) Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 15 / 18

Přístup k SQL z aplikace fáze zpracování dotazu parse bind execute fetch + struktura pro návrat chybového kódu standardizované API a drivery (ODBC, JDBC,...) specifické knihovny (PHP,...) většinou API kopíruje fáze zpracování SQL dotazu... a přístupy, které odstiňují používání databáze: hibernate, tapestry,... Ruby on Rails, JAXB,... Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 16 / 18

Další techniky zrychlení přístupu k datům Připomenutí pojmů: OLTP versus DSS systémy optimalizace dotazu, prováděcí plán, cena dotazu fáze zpracování dotazu (příkazu) Používané techniky: zavedení redundance, materializované pohledy využítí vyrovnávacích pamětí pro data, ale také pro parsované SQL příkazy a kurzory Optimalizace aplikace a databáze: návrh struktury (normalizace vs. denormalizace) speciální struktury pro uložení dat optimalizace dotazů (zjištění dotazů, které je třeba optimalizovat) systémové zdroje (pamět - velikost a struktura) konfigurace serveru (disky, parametry databáze, zálohování) Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 17 / 18

K zapamatování (relační) databáze bez indexů nefungují rozumně indexy jsou nutné (pro větší data) DB stroj často některé indexy vytváři automaticky kvůli kontrole IO (PK, UK) v OLTP se nejčastěji používají indexy na bázi B-stromů (tam, kde jsou data (skoro) unikátní) kde jsou data velmi neunikátní (např. pohlaví) a potřebuji indexovat, tam se používají bitmapové indexy indexy je třeba udržovat (zjednodušeně ušetřím na dotazech, platím více při DML) klíč indexu (indexované atributy) může být složený / jednoduchý index může být unikátní / neunikátní. Kromě tzv heap table máme k dispozici další fyzické struktury v Oracle IOT a cluster Michal Valenta (FIT ČVUT) Fyzické uložení dat a indexy Databázové systémy 2016 18 / 18