Zpracování SQL Lubomír Andrle 5. přednáška 4.11.2013.

Slides:



Advertisements
Podobné prezentace
MS ACCESS - DOTAZY DATABÁZOVÉ SYSTÉMY.
Advertisements

Základy jazyka SQL Jan Tichava
SQL Trace, Profiling, …a Tuning Lubomír Andrle
Obecné praktiky práce s DB
Základy databázových systémů
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Aplikační a programové vybavení
Jazyk SQL Ing. Zdena DOBEŠOVÁ. SQL Structured Query Language 1974 SEQUEL (Structured English Query Language) neprocedurální relační dotazovací jazyk norma.
Databáze.
Nástroje pro řízení lidských zdrojů Ing. Milan Horváth.
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Přednáška č. 5 Proces návrhu databáze
Fakulta elektrotechniky a informatiky
Informatika pro ekonomy II přednáška 11
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 1 Cvičení č. 2 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy II Přednáška č. 6 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Architektury a techniky databázových systémů 30. září 2013
Temporální databáze a TSQL
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
Úvod do databází Databáze.
Databáze Jiří Kalousek.
Databázové systémy II Přednáška č. 8 – Pohledy (Views)
Execution plans Lubomír Andrle 6. přednáška
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Fakulta elektrotechniky a informatiky
Optimalizace SQL dotazů
Relační databáze.
Vypracoval: Ondřej Dvorský Třída: VIII.A
Databázové systémy. Práce s daty Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace.
Informatika pro ekonomy II přednáška 10
Databázové systémy I Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Databázové systémy 2 Cvičení č. 6 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky
Ing. Tomáš Váňa, Ing. Jiří Zechmeister
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Optimalizace SQL dotazů Michal Kopecký
Databázové systémy II Cvičení č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Databázové systémy 2 Zkouška – 12:00. Příklad I - Funkce Vytvořte funkci ZK_TRP_TREND(P_ID_TRPASLIKA IN NUMBER, P_DATUM_OD IN VARCHAR2, P_DATUM_DO.
Databázové modelování
Databázové systémy 2 Zkouška – 8:00. Příklad I – Procedura – 5 bodů Vytvořte proceduru P_ZK2(p_table_name VARCHAR2, p_min_nuls NUMBER, p_drop.
Databázové systémy Informatika pro ekonomy, př. 18.
Databáze velké množství dat pevně dané struktury
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B13 Autor Ing. Jiří Kalousek Období vytvoření březen.
Databázové systémy SQL Výběr dat.
Administrace Oracle Paralelní zpracování.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2015.
Informatika (1) Počítač - základní pojmy HW a SW4 OS MS-DOS, Windows 95, 982 Org. souborů na disku, operační paměť2 Aplikace Malování, Word8 Základy programování.
Databázové systémy Úvod, Základní pojmy. Úvod S rozvojem lidského poznání roste prudce množství informací. Jsou kladeny vysoké požadavky na ukládání,
Perzistence XML dat Kamil Toman
DATABÁZE.
Dynamická webová aplikace Autor:Ondřej Soukup Třída:I3.
Petr Puš SW Architekt Unicorn a.s. Microsoft C# MVP.
Databázové systémy přednáška 6 – Indexy
Architektury a technika databázových systémů
Databázové systémy I Přednáška 11 Databázové systémy 1 – KIT/IDAS1
Databázové systémy a SQL
Databázové systémy a SQL
Informatika pro ekonomy přednáška 8
Databázové systémy a SQL
Optimalizace SQL dotazů
Databázové systémy a SQL
Přednáška 9 Triggery.
Databázové systémy a SQL
Transkript prezentace:

Zpracování SQL Lubomír Andrle 5. přednáška

Obsah Zpracování příkazů SQL – Úvod do CBO O-R mapping

ZPRACOVÁNÍ PŘÍKAZŮ

Co se děje při volání SQL Syntax check – Jde o sql? Semantic analysis – Kontrola oproti datovému slovníku – Kontrola práv na objekty Hash textu – Select * from T versus – SELECT * from T

HARD PARSE

Hard parse Sql předáno CBO – Zajištění optimálního provedení příkazu – Musí najít nejefektivnější způsob provedení

Cost-base přístup Projití všech relevantních variant  ocenění Zvolení „nejlevnější“ varianty (plánu) Vložení této varianty do Library Cache – Přiřazení varianty danému sql (hash sql) – Plán zůstává v cache dokud nevyexpiruje

Execution plan Ukázka

Library cache Sdílená cache kurzorů Age out – LRU (Least Recently Used) algoritmus – Invalidation – změna vlastnosti objektu Sbírá informace – Počet spuštění – Počet čtení z disku – A spousty dalších …

Podklady pro cost-base Nutnost podkladových dat – Bez nich se neumí CBO rozhodnout Čím přesnější podkladová data, tím přesnější určení optimálního plánu Příklad – Podkladová data říkají, že je v tabulce 100 řádku – Skutečně jich je – Nepoužití indexu = špatný plán Podkladová data = Statistiky

Statistiky Pro celou tabulku – Počet řádků, průměrná délka řádku, … Pro každý sloupec tabulky – Low/High value – Hustota (Density) – Počet null hodnot Pro index – Např. počet leaf bloků Systémové statistiky Hodnota vždy normalizována na číslo bez ohledu na datový typ

Frekvenční histogramy Jeden z typů statistik Určují rozložení dat ve sloupci tabulky – Počet výskytů pro konkrétní hodnotu Mohou být velice prospěšné při stanovení ceny Mají větší váhu při rozhodování CBO

Frekvenční histogramy - příklad Data o zaplacení pojistného po měsících –... WHERE PAID_MONTH BETWEEN AND Ukázka histogramu

Frekvenční histogramy - příklad Ukázka jak by „viděl“ Oracle data bez histogramů

Systémové statistiky Údaje o HW a OS Rychlost čtení bloků Hospodaření s operační pamětí a výpočetní kapacitou procesoru …

Sběr statistik Sběr základních statistik a histogramů – pro datové objekty Velká režie sběru Defaultně sbírány systémovým jobem

Sběr statistik II Základní předpoklad – Mít statistiky aktuální – Nezatěžovat systém přílišným sběrem Aktualizace statistik v předem definovaném období – Období klidového provozu – Aktualizovat pouze statistiky, které od posledního sběru zastaraly

SOFT PARSE

Soft parse Oracle provede pouze základní validace Použije se plán pro daný hash sql – Uložen v Library Cache Příkaz se spustí

OR-MAPPING

Cíl O-R mappingu Konverze dat mezi aplikační a databázovou vrstvou Odstínění od relačních modelů – Čistě objektový pohled na data

Přínosy pro Oracle Zajištění stejných dotazů – Načtení stejné entity stále stejným sql – stejný hash příkazu Použití bind variables – … where name = ‘Andrle’  where name = :B1 – Hodnota B1 se doplní až po parse sql – Stejný hash = soft parse = méně práce pro CBO

Obecné přínosy Oddělení dvou „různorodých“ vývojářských skupin Podpora transparentních cache

Nevýhody Pomalejší – Oproti nativnímu přístup Méně pod kontrolou – Lazy load Použití alternativy k SQL – HQL, apod.

Q&A