Transak ní zpracování I

Podobné dokumenty
DBS transakční zpracování

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1

Transakční zpracování

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Databázovéa informačnísystémy NÁVRH IMPLEMENTACE 2 KONZISTENCE DATABÁZE

Konceptuální modelování

Konzistence databáze v nekonzistentním světě

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9

Zálohování a obnova databáze

SQL - úvod. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 6

Transakční zpracování Bezpečnost databází. Vladimíra Zádová, KIN, EF TUL- DBS 1

Architektura SW pro transakční zpracování se skládá ze 3 modulů: - manažer dat - rozvrhovač - manažer transakcí

BOZP - akcepta ní testy

Normalizace rela ního schématu

IP kamerový systém Catr - uºivatelský návod k obsluze

Skalární sou in. Úvod. Denice skalárního sou inu

Kapitola 13: Transakce. Koncept transakce. ACID vlastnosti

Základní praktikum laserové techniky

Podíl zdrojů informací

Státní maturita 2010 Maturitní generálka 2010 Matematika: didaktický test - základní úrove obtíºnosti MAGZD10C0T01 e²ené p íklady

Binární operace. Úvod. Pomocný text

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web:

Uºivatelská p íru ka Octopus

Objektově orientované databáze

1. (18 bod ) Náhodná veli ina X je po et rub p i 400 nezávislých hodech mincí. a) Pomocí ƒeby²evovy nerovnosti odhadn te pravd podobnost

Transakce a zamykání Jiří Tomeš

Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s.

Prezentace. Ing. Petr V elák 6. b ezna 2009

Modelování v elektrotechnice

Datová centra, virtualizace a cloud computing

Integrování jako opak derivování

Transakce a zamykání. Administrace MS SQL Serveru (NDBI039) Pavel Hryzlík

Vektory. Vektorové veli iny

IPCorder KNR-100 Instala ní p íru ka

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: jan.skrbek@tul.cz tel.: Konzultace: úterý

Vektor náhodných veli in - práce s více prom nnými

SQL - SELECT. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 7

DeepBurner (testování UI)

Databázové systémy úvod

Kelvin v kapkový generátor

Databázové modely. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 2

CERIT-SC, MetaCentrum

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011

Zotavení z chyb. Databázové systémy

Krajská hospodářská komora Střední Čechy. Pravidla soutěže. Poznáváme firmy ve středních Čechách. 1. Pořadatel soutěže. 2. Termín konání soutěže

C++ Akademie SH. 2. Prom nné, podmínky, cykly, funkce, rekurze, operátory. Michal Kvasni ka. 20. b ezna Za áte níci C++

na za átku se denuje náhodná veli ina

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120

Operace nad celými tabulkami

Databázové systémy úvod

e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody

P íklad 1 (Náhodná veli ina)

Informa ní bezpe nost I Management bezpe nosti informa ních systém - ISMS. michal.slama@opava.cz

ízení Tvorba kritéria 2. prosince 2014

Výzva pro předložení nabídek k veřejné zakázce malého rozsahu s názvem Výměna lina

HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY

rové poradenství Text k modulu Kariérov Autor: PhDr. Zdena Michalová,, Ph.D

ZLATO ELFŮ. od Alana R. Moona

Copyright Dale Carnegie & Associates, Inc.

Uºivatelská p íru ka k programu SlaFoR verze 1.0

Návrh va kových prol - CamEdit Uºivatelská p íru ka

Fakulta elektrotechnická

ZÁKLADNÍ POVINNOSTI DOPRAVCE I PRÁCI S DATY Z DIGITÁLNÍHO TACHOGRAFU

Věc: Výzva pro předložení nabídek k veřejné zakázce s názvem: VÚ a ŠJ PŠOV, Nákup nového osmimístného vozidla

Základy graky. Jan Hamá ek. 13. zá í 2016

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

Distribuované algoritmy

Online komunikace a videokonference

PŘÍLOHA 10 SMLOUVY O PŘÍSTUPU KE KONCOVÝM ÚSEKŮM. Pravidla a postupy

Specifikace systému ESHOP

Fyzikální praktikum 3

Publicita projektu, udr itelnost projektu, pracovní místa, ú etnictví projektu. Seminá PAAK ízení projekt

Databázové systémy úvod

Uživatelská dokumentace

Teorie kategorií. Libor B hounek Verze ke dni 12. b ezna 2013.

Databáze I. 5. přednáška. Helena Palovská

Státnice - Rekurzivní a rekurzivn spo etné mnoºiny

4IT218 Databáze. 4IT218 Databáze

P íklady k prvnímu testu - Pravd podobnost

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012

Pr b h funkce I. Obsah. Maxima a minima funkce

Matematická logika cvi ení 47

SRF08 ultrazvukový dálkoměr

Datová úloºi²t CESNET

Finan ní ízení projekt

NÁVOD K OBSLUZE MODULU VIDEO 64 ===============================

Rovnice a nerovnice. Posloupnosti.

Automatizovaná aktualizace struktury a dat rela ní databáze dle doménového modelu podnikové aplikace

Odhad sm si s dynamickým ukazovátkem a statickými komponentami 1

Obsah. Pouºité zna ení 1

Odhad sm si s datov závislým dynamickým ukazovátkem a statickými komponentami 1

VERZE: 01 DATUM: 05/2014

Obnova zámeckých alejí ve městě Vimperk

Limity funkcí v nevlastních bodech. Obsah

Ovoce do škol Příručka pro žadatele

Polovodi e. Petr Ba ina. 16. ledna 2017

VÝZVA k podání nabídky na veřejnou zakázku malého rozsahu na dodávky

I. Objemové tíhy, vlastní tíha a užitná zatížení pozemních staveb

Vyvažování tuhého rotoru v jedné rovině přístrojem Adash Vibrio

2. Ur íme sudost/lichost funkce a pr se íky s osami. 6. Na záv r na rtneme graf vy²et ované funkce. 8x. x 2 +4

Transkript:

Transak ní zpracování I Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11, P edn. 11 Evropský sociální fond. Praha & EU: Investujeme do va²í budoucnosti Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 1 / 20

Úvod Transak ní zpracování Dva základní poºadavky na DBMS : e²ení chránit data ve smyslu odolnosti v i r zným haváriím serveru poskytnout korektní, rychlý a asynchronní p ístup v t²ímu mnoºství sou asn pracujících uºivatel. komponenta ízení soubeºného (paralelního) zpracování (concurrency control) komponenta zotavení z chyb (recovery) Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 2 / 20

Úvod Transak ní zpracování ízení soub ºného zpracování Zaji² uje uºivatel m, ºe kaºdý vidí konzistentní stav databáze bez ohledu na to, ºe více uºivatel p istupuje asynchronn ke stejným údaj m. Zotavení z chyb Zaji² uje, ºe stav databáze není naru²en v p ípad chyby software, systému, nebo fyzického média v pr b hu zpracování úlohy m nící data v databázi. D sledkem takového incidentu nesmí být nekonzistence databáze. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 3 / 20

Úvod Transak ní zpracování e²ením je transakce: vhodná programová jednotka a vhodné mechanismy, které zabezpe í, ºe po skon ení akce (korektním i nekorektním) z stane databáze konzistentní (platí v²echna IO denovaná ve schématu). Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 4 / 20

Úvod Moduly RDBMS RDBMS musí zaru it: Transparentnost paralelního zpracování transakce. Atomicitu vzhledem k chybám. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 5 / 20

Transakce Co je transakce? Vhodná logická jednotka práce. Obvykle se skládá z n kolika (i mnoha) díl ích operací. P íklady transakcí P evod pen z z jednoho ú tu na druhý. P ehlá²ení na termín zkou²ky. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 6 / 20

Transakce Za átek a konec transakce Hranice transakce : konec transakce Explicitní COMMMIT (potvrzení) ROLLBACK (zru²ení) Implicitní ukon ení session (záleºí na klientovi zda commit nebo rollback). za átek transakce Je obvykle vymezen skon ením transakce p edchozí nebo vznikem session. Pozor na nastavení klienta! ƒasto bývá pouºit reºim Autocommit On. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 7 / 20

Transakce Obnova databáze po pádu Vyuºívá se transak ní ºurnál (log). V transak ním logu jsou zm nové vektory. Operace pouºité p i obnov - UNDO - REDO Informace z trasak ního ºurnálu se pouºívají pouze pro obnovu databáze po chyb. Pro operaci ROLLBACK a zaji²t ní tzv. read consistency se pouºívají jiné datové struktury. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 8 / 20

Transakce Stavový diagram transakce Stavový diagram transakce PC C A F AB aktivní (Active) - od za átku (probíhají DML p íkazy) áste n potvrzený (Partially Commited) - po provedení poslední operace transakce potvrzený (Commited) - po úsp ²ném zakon ení, tj. po potvrzení operace COMMIT chybný (Failed) - v normálním pr b hu transakce nelze pokra ovat zru²ený (ABorted) - po skon ení operace ROLLBACK, tj. uvedení databáze do stavu p ed zapo etím transakce Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 9 / 20

Transakce ACID vlastnosti Vlastnosti transakcí ACID ACID vlastnosti transakce: atomicita (Atomicity) - transakce musí bu prob hnout celá nebo v bec, konzistence (Consistency) - transakce transformuje databázi z konzist. stavu do jiného konzist. stavu, nezávislost (Independence) - díl í efekty jedné transakce nejsou viditelné jiným transakcím, trvanlivost (Durability) - efekty úsp ²n ukon ené (potvrzené) transakce jsou trvale uloºeny(persistence). Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 10 / 20

Zotavení systému po pádu Zotavení z chyby - t ídy moºných chyb Globální chyby (mají vliv na více transakcí) Spadnutí systému serveru (nap. výpadek proudu), d sledkem je obecn ztráta obsahu vyrov. pam tí. Chyby systémové, které ovliv ují transakce, av²ak nikoli celou databázi (nap. uváznutí, odum ení komunikace klienta se serverem). Chyby médií (nap. incident na disku), které zap í iní ohroºení databáze, nebo její ásti, Lokální chyby (v jedné transakci). Logické chyby, které by m ly být odchyceny a o²et eny na úrovni transakce explicitním vyvoláním operace ROLLBACK (pokus o poru²ení IO p i zápisu do DB, d lení nulou p i výpo tu). Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 11 / 20

Zotavení systému po pádu Zotavení z chyby - po restartu systému synchroniza ní body asové známky (v ºurnálu a v hlavi kách db soubor ); slouºí k nalezení místa (v ºurnálu) odkud je t eba za ít s rekonstrukcí databáze Poºadavky: Na transakce, jejichº stav bude v d sledku incidentu nedenovaný je nutné pouºít ROLLBACK. Transakce, které byly potvrzené p ed tím neº nastala chyba systému, av²ak které nebyly dokon eny fyzicky (nap. odeslání vyrovnávacích pam tí na disk), je nutné zopakovat a uloºit do datových soubor. Technicky má obnova systému po pádu dv fáze: 1 Roll Forward p ehrání transak ního ºurnálu (a obnova vyrovnávací pam ti) 2 Roll Back odvolání transakcí, které nebyly v dob pádu dokon eny. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 12 / 20

Zotavení systému po pádu Zotavení z chyby médií Záleºí na mód v jakém databázi provozujeme (archivní / nearchivní): archivní mód: Vystavení celé databáze (nebo jen chyb jících ástí) ze záloºní kopie (Backup). Pouºití ºurnálu k REDO v²ech ukon ených transakcí aº do té chvíle, kdy je²te ºurnál poskytuje pot ebné informace. Tento postup umoº uje i tzv PITR (Point In Time Recovery) nearchivní mód: Bu se m ºeme vrátit k poslední plné záloze systému (tedy zpátky v ase). Nebo ob tujeme data, která byla po²kozena. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 13 / 20

Soub ºné zpracování transakcí Paralení zpracování transakcí P edpoklady: ploché transakce, objekty atomické, FETCH, resp. OUTPUT p esunou stránku vyrovnávací pam ti z/na disk READ(X,x) p i azuje hodnotu atributu X lokální prom nné x. Není-li stránka s danou hodnotou ve VP, provede se FETCH(X), následuje p i azení hodnoty X z VP prom nné x. WRITE(X,x) p i azuje hodnotu lokální prom nné x atributu X ve vyrovnávací pam ti. Operace má op t dv fáze - není-li ºádaná stránka ve vyrovnávací pam ti, provede se FETCH(X), následuje p i azení prom nné x atributu X ve vyrovnávací pam ti. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 14 / 20

Soub ºné zpracování transakcí Prokládání transakcí, rozvrh, rozvrhova Transakce T 1 a T 2 se skládají z díl ích operací T 1 = {T 11...T 1n } a T 2 = {T 21...T 2m } Moºnosti prokládání: Stanovení po adí provád ní díl ích akcí více transakcí v ase nazveme rozvrhem. Maximalizace paralelismu zpracování, tj. vytvá ení rozvrhu, je v cí rozvrhova e. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 15 / 20

Soub ºné zpracování transakcí Problémy s nedostate nou izolací transakcí Ztráta aktualizace nebezpe í ztráty aktualizace (p i prokládaní transakcí) T1 T2 stav READ(X) X = 80 X:=X-5 zru²ení 5 rezervací READ(X) X = 80 X:=X + 4 p idání 4 rezervací WRITE(X) X = 75 WRITE(X) X = 84 Ztráta aktualizace P estoºe by hodnota X v databázi m la být 79, je 84 Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 16 / 20

Soub ºné zpracování transakcí Problémy s nedostate nou izolací transakcí Ztráta aktualizace nebezpe í do asné aktualizace (p i chyb systému) Chyba transakce T1 READ(x) X:=X-5 WRITE(X) READ(Z) chyba transakce T2 READ(X) X:=X+4 WRITE(X) Po provedení operace ROLLBACK u transakce T1 bude aktualizace provedená transakcí T2 zaloºena na posléze odvolaných zm nách takºe výsledek bude chybný. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 17 / 20

Soub ºné zpracování transakcí Problémy s nedostate nou izolací transakcí Problémy s paralelním zpracováním nebezpe í nekorektního pouºití agrega ní funkce T1 T3 stav sum:=0 íta po tu rezervací READ(A) sum:=sum+a READ(X) X:=X-A WRITE(X) READ(X) te po zm n X sum:=sum + X READ(Z) sum:=sum + Z te p ed zm nou X WRITE(Z) Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 18 / 20

Soub ºné zpracování transakcí Problémy s nedostate nou izolací transakcí Problémy s paralelním zpracováním neopakovatelné tení fantóm Transakce T1 provede SELECT a pouºije na tené hodnoty. Transakce T2 poté zm ní hodnoty n kterých ádk. Kdyº transakce T1 pozd ji provede tentýº select, dostane jiné hodnoty. Jako v p edchozím p ípad, pouze s tím rozdílem, ºe transakce T2 smaºe nebo p idá ádky. Ve druhém dotazu obdrºí tedy trasakce T1 jinou sadu dat. Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 19 / 20

Soub ºné zpracování transakcí Stupn izolace Stupn izolace Úrove izolace Anomálie 0 1 2 3 do asná aktualize x - - - neopakovatelné tení x x - - fantón x x x - 0... read uncommited 1... read commited 2... repeatible read 3... serializable Michal Valenta (FIT ƒvut) Transak ní zpracování I BI-DBS, 2010, P edn. 11 20 / 20