Konzistentnost. Pro a proti replikaci. Vztah ke škálovatelnosti (1)

Podobné dokumenty
Konzistentnost. Přednášky z distribuovaných systémů

Replikace. Pro a proti replikaci. Vztah ke škálovatelnosti (1)

Příprava na zk. z KIV/DS

Promnné. [citováno z

Distribuovaná sdílená pam

Komunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém

1 Píklady popisu typických konstrukcí

Každý datový objekt Pythonu má minimáln ti vlastnosti. Identitu, datový typ a hodnotu.

IMPORT DAT Z TABULEK MICROSOFT EXCEL

Cykly Intermezzo. FOR cyklus

ORACLE ÍZENÍ VÝROBY ORACLE WORK IN PROCESS KLÍOVÉ FUNKCE ORACLE WORK IN PROCESS

Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou

PÍRUKA A NÁVODY PRO ÚELY: - RUTINNÍ PRÁCE S DATY

1. Signatura datového typu

Ing. Jaroslav Halva. UDS Fakturace

27. asové, kmitotové a kódové dlení (TDM, FDM, CDM). Funkce a poslání úzkopásmových a širokopásmových sítí.

Prezentaní program PowerPoint

Zbytky zákaznického materiálu

Rzné algoritmy mají rznou složitost

Správa obsahu ízené dokumentace v aplikaci SPM Vema

2. Žadatel 2.1. Identifikace žadatele Název pozemkového úadu (nap. Ministerstvo Zemdlství R Pozemkový úad Jihlava)

4 - Architektura poítae a základní principy jeho innosti

MS Outlook konektor. Každý jsme hlava na nco jiného. My jsme hlavy na IT. Miloslav Záleský Patrik Šolc Jan Matuš

ORACLE DISCRETE MANUFACTURING ORACLE DISKRÉTNÍ VÝROBA

Gymnázium. Kromíž. Zpracování textu. Word 1 SIPVZ-modul-P0

Datový typ POLE. Jednorozmrné pole - vektor

Soudní exekutor JUDr. Vít Novozámský Bratislavská 40/ Brno k.j. 056 EX 9379/10-46

ORACLE MANUFACTURING SCHEDULING ORACLE HLAVNÍ PLÁNOVÁNÍ VÝROBY

Diagnostika u voz s 2-místnými diagnostickými kódy

Dodatek dokumentace KEO-Moderní kancelá verze 7.40

Kapitola 13: Transakce. Koncept transakce. ACID vlastnosti

Projektovéízení a strategický management - východiska programového financování - IPVZ, 2008

Pídavný modul rozvaha lze vyvolat z hlavní nabídky po stisku tlaítka Výkazy / pídavné moduly.

Pedání smny. Popis systémového protokolování. Autor: Ing. Jaroslav Halva V Plzni Strana 1/6

NSS - Cache 5. LECTURE MARTIN TOMASEK

Všeobecné obchodní podmínky spolenosti SV metal spol. s r.o.

10. EŠENÍ INDIVIDUÁLNÍCH PRACOVNPRÁVNÍCH SPOR

WWW poštovní klient s úložištm v MySQL databázi

Úloha 1. Úloha 2. Úloha 3. Text úlohy. Text úlohy. Text úlohy

Paralelní programování

Stanovení požadavk protismykových vlastností vozovek s ohledem na nehodovost

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í

II. Jak se p?ihlásit do diskusní skupiny

Rozvrhování na více procesorech

Architektury paralelních počítačů II.

TECHNICKÁ UNIVERZITA V LIBERCI

Závrená zpráva o útování a daovém posouzení hospodaení SRPdŠ pi SPŠ/VOŠ Chomutov za úetní a zdaovací období roku 2008

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

Závrená zpráva o útování a daovém posouzení hospodaení SRPdŠ pi SPŠ/VOŠ Chomutov za úetní a zdaovací období roku 2007

Získávání znalostí z databází. Alois Kužela

Procesy a vlákna (Processes and Threads)

VLASTNOSTI KOMPONENT MICÍHO ETZCE -ÍSLICOVÁÁST

Bezpenost dtí v okolí škol z pohledu bezpenostního auditora

Komunikace se Základními registry v prostředí MČ Praha 7

Jak správně navrhnout moderní a efektivní řešení pro ukládání dat

MATEMATIKA MATEMATIKA

METODY OCEOVÁNÍ PODNIKU DEFINICE PODNIKU. Obchodní zákoník 5:

VYTVÁENÍ VÝBROVÝCH DOTAZ

DUM. Databáze - úvod

ipové karty, standardy PKCS#11, PKCS#15

Semestrální práce z předmětu. Jan Bařtipán / A03043 bartipan@studentes.zcu.cz

Úvodní studie (pokraov

Smrnice správné klinické praxe vydané Mezinárodní konferencí pro harmonizaci

Programovací jazyk Python. Objektov orientovaný. [citováno z

Pednáška mikro 07 : Teorie chování spotebitele 2

Vaše uživatelský manuál ESET MOBILE ANTIVIRUS

Objektov orientovaný pístup

Lineární algebra Petriho sítí

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Návod k obsluze. Samostatné ovládací za ízení UC 42. Samostatné ovládací za ízení pro montážní lištu UC 45. D ležité informace pro elektrické zapojení

PR VODNÍ ZPRÁVA. 1. Identifika ní údaje. Zahájení stavby: p edpoklad rok Objednatel dokumentace: M sto Nasavrky Nám stí Nasavrky

Informaní systém katastru nemovitostí eské republiky

POPIS TESTOVACÍHO PROSTEDÍ 1 ZÁLOŽKA PARSER

Prostedky automatického ízení

Zkušenosti s využitím informa ních systém p i provozu a optimalizaci rafinérií

Sbírka zahrnuje základní autory, výbr nejdležitjších prací a spektrum názor Dsledn udržována

Pravdpodobnost výskytu náhodné veliiny na njakém intervalu urujeme na základ tchto vztah: f(x)

KONVENCE TVORBY A SPRÁVY PROCESNÍHO MODELU

(metalická vedení a vlastnosti) Robert Bešák

Roní plán pro 1.roník

íslo ryze periodické íslice /skupina íslic ), která se opakuje nazýváme perioda. V našem p ípad je perioda íslice 6.

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ DATABÁZOVÉ SYSTÉMY ARCHITEKTURA DATABÁZOVÝCH SYSTÉMŮ. Ing. Lukáš OTTE, Ph.D.

Digitální pekreslení leteckého snímku

ŠANCE PRO SPOLENOST, obanské sdružení

B-ISDN, ATM (vlastnosti)

asté otázky a odpov di k zákonu. 406/2000 Sb.

Vzájemné vyloučení procesů

OCR (optical character recognition) - rozpoznávání textu v obraze

Role a integrace HR systém

VOLEBNÍ ÁD. pro volby výboru a dozorí rady Spolenosti radiologických asistent R

2. PÍKLAD DÍLÍ ÁSTI SOUSTAVY - DÍLÍ ÁST SDÍLENÍ TEPLA

WWW poštovní klient s úložištm v MySQL databázi

Zamení fasády stavebního objektu

SAP PROCUREMENT DAY 2013

Základy MIDI komunikace

Vaše uživatelský manuál SHARP GX33

Specifikace požadavků. POHODA Web Interface. Verze 1.0. Datum: Autor: Ondřej Šrámek

Paralelní programování

Související ustanovení ObZ: 66, 290, 1116 až 1157, 1158 a násl., 1223 až 1235, 1694, 1868 odst. 1, 2719, 2721, 2746, 2994, 3055, 3062, 3063,

Transkript:

Konzistentnost Pednášky z distribuovaných systém Pro a proti replikaci 1. Zvýšení spolehlivosti. 2. Zvýšení výkonnosti. 3. Nutnost zachování škálovatelnosti systému co do potu komponent i geografické rozlehlosti. 4. Výkonnost se snižuje, protože s opravou jedné kopie souvisí i oprava ostatních kopií pro zachování konzistentnosti. 6.12.2004 DS - Konzistentnost a replikace 2 Vztah ke škálovatelnosti (1) Pro zlepšení škálovatelnosti jsou používány replikace a cache. Škálovatelnost je obecn prezentována jako problém prchodnosti. Replikace dat v blízkosti potenciálních uživatel mže zlepšit výkonnost a zlepšit škálovatelnost. Potenciální problémy: Šíka pásma požadovaná pro aktualizaci kopií mže být velká. Udržování konzistentních replikovaných kopií mže být problémové z pohledu škálovatelnosti. Proto je teba dodržovat urité dohody pi replikaci dat. 6.12.2004 DS - Konzistentnost a replikace 3 1

Vztah ke škálovatelnosti (2) Vícenásobné kopie. zvyšují výkonnost a redukují dobu pístupu zvyšují také režii pro udržení konzistentnosti píklad: N - krát replikované objekty frekvence tení R, frekvence zápisu W je-li R <<W vysoká konzistentnost zvyšuje režii, zprávy jsou zbytené Zdrojem ešení je udržování konzistentnosti volba vhodné sémantiky tsná konzistentnost vyžaduje globáln synchronizované hodiny ešení: snížíme požadavky na konzistentnost jsou k dispozici rzné stupn konzistentnosti 6.12.2004 DS - Konzistentnost a replikace 4 Úvod do konzistenních model K popisu a ešení problému konzistentnosti bylo vytvoeno mnoho model, ve kterých se mluví o operacích tení a zápisu nad distribuovanou datovou pamtí. Každý proces je chápán tak, že má k dispozici kopii celé datové pamti. Zápis je njaká zmna lokální kopie, kterou je teba replikovat do ostatních vzdálených kopií. tení je operace, která data nemodifikuje. Bžn je operace tení chápána tak, že vrací výsledek poslední operace zápisu do datové položky. Konzistenní model (konzistenní sémantika) je dohoda mezi procesy a datovou pamtí. Pokud budou procesy dodržovat dohody dané modelem, bude pam pracovat korektn. 6.12.2004 DS - Konzistentnost a replikace 5 Data-Centric konzistenní modely Obecná organizace pamti dat, fyzicky distribuované a replikované nkolika procesy. 6.12.2004 DS - Konzistentnost a replikace 6 2

Striktní konzistentnost Definice: jakékoliv tení datové položky X vrací hodnotu odpovídající výsledku poslední operace zápisu X. Definice implicitn pedpokládá existenci absolutního globálníhoasu. Je pirozen dostupná v jednoprocesorových systémech, ale neimplementovatelná v distribuovaných systémech. Dva procesy, pracující s týmiž daty. a) Striktn konzistentní pam. b) Pam, které není striktn konzistentní. 6.12.2004 DS - Konzistentnost a replikace 7 Linearizovatelnost a sekvenní konzistentnost (1) Sekvenní konzistentnost: Výsledek jakéhokoliv provádní je tentýž, jako kdyby operace tení a zápisu všech proces nad datovou pamtí byly provádny v njakém sekvenním poadí a operace všech individuálních proces se jeví v téže sekvenci, ve které je specifikována jejich programem. Všechny procesy vidí totéž poadí operací zápisu. a) Sekvenn konzistentní pam. b) Pam, která není sekvenn konzistentní. 6.12.2004 DS - Konzistentnost a replikace 8 Linearizovatelnost Definice: Výsledek jakéhokoliv provádní je tentýž jako kdyby operace tení a zápisu všech proces nad datovou pamtí byly provádny ve stejném poadí a operace všech individuálních proces odpovídají v této sekvenci poadí, specifikovaném jejich programem.navíc pokud platí, že TS(op 1 (x)) < TS( op 2 (y)), pak operace op1(x) musí nastat díve, než operace op2(y). V tomto modelu se pedpokládá, že operace pijímají asové znaky z globáln dostupného asového zdroje s konenou pesností. Linearizovatelná datová pam je také sekvenn konzistentní, ale je implementan náronjší než sekvenní konzistentnost. Linearizovatelnost se primárn používá pi formální verifikaci konkurentních program. 6.12.2004 DS - Konzistentnost a replikace 9 3

Linearizovatelnost a sekvenní konzistentnost (2) Process P1 print ( y, z); Process P2 print (x, z); Process P3 Ti soubžn bžící procesy. 6.12.2004 DS - Konzistentnost a replikace 10 Linearizovatelnost a sekvenní konzistentnost (3) print ((y, z); print (x, z); print (x,z); print(y, z); print (x, z); print (y, z); print (x, z); print (y, z); Prints: 001011 Prints: 101011 Prints: 010111 Prints: 111111 Signature: 001011 (a) Signature: 101011 (b) Signature: 010111 (c) Signature: 111111 (d) tyi platné posloupnosti provádní proces z pedchozího obrázku. 6.12.2004 DS - Konzistentnost a replikace 11 Sekvenní konzistentnost a serializovatelnost Sekvenní konzistentnost je porovnatelná se serializovatelností v pípad transakcí. Odlišnost je v úrovni rozlišení: sekvenní konzistentnost je definována v termínech operací tení a zápis, serializovatelnost v termínech transakcí, které zahrnují tyto operace. Sekvenní konzistentnost pedstavuje uživatelsky pívtivý model, ale má vážné problémy s výkonností. Sequential consistency is a programmer-friendly model, but it has serious performance problems. Proto byly navrženy slabší modely konzistentnosti. 6.12.2004 DS - Konzistentnost a replikace 12 4

Píinná (Casual) konzistentnost (1) Píinná konzistentnost vyžaduje úplné uspoádání pouze pro operace zápisu, které jsou vzájemn závislé. 1. Operace read je píinn vztažena k operaci write, pokud write zapisuje data, která readte. 2. Operace write je píinn vztažena k operaci read, která nastane díve než write v tomtéž procesu. 3. Jestliže read závisí na write_1 a write_2 na read, pak také write_2 závisí na write_1. Nutné podmínky: 1. Zápisy, které mají potenciáln píinný vztah musí být vidny všemi procesy ve stejném poadí. 2. Konkurentní zápisy mohou být vidny v rzných poadích v rzných poadích v rzných procesech. 6.12.2004 DS - Konzistentnost a replikace 13 Píinná (Casual) konzistentnost (2) Tato sekvence je pípustná s píinn konzistentní pamtí dat, ale ne jako sekvenn nebo striktn konzistentní. 6.12.2004 DS - Konzistentnost a replikace 14 Píinná (Casual) konzistentnost (3) a) Porušení píinn konzistentní pamti. b) Správná sekvence událostí v píinn konzistentní pamti. 6.12.2004 DS - Konzistentnost a replikace 15 5

FIFO konzistentnost (1) Nezbytné podmínky: 1. Zápisy od jednoho procesu jsou ostatními procesy vidny v tomtéž poadí, ve které byly vyslány 2. Zápisy od rzných proces mohou být vidny rznými procesy v rzném poadí. 6.12.2004 DS - Konzistentnost a replikace 16 FIFO konzistentnost (2) Platná sekvence událostí FIFO konzistentnosti 6.12.2004 DS - Konzistentnost a replikace 17 FIFO konzistentnost (3) Process P1 print ( y, z); Process P2 print (x, z); Process P3 Ti soubžn bžící procesy. 6.12.2004 DS - Konzistentnost a replikace 18 6

FIFO konzistentnost (4) print (y, z); print(x, z); Prints: 00 (a) print(x, z); print ( y, z); Prints: 10 (b) print (x, z); print (y, z); Prints: 01 (c) FIFO konzistentní pohledy tí proces na poadí provádní píkaz z pedchozího obrázku. Zvýraznné píkazy print generují výstup. 6.12.2004 DS - Konzistentnost a replikace 19 FIFO konzistentnost (5) Process P1 if (y == 0) kill (P2); Process P2 if (x == 0) kill (P1); Synchronizace dvou konkurentních proces. Pi FIFO konzistentnosti dávají rzné výsledky (bží dva procesy, jeden proces nebo žádný proces). 6.12.2004 DS - Konzistentnost a replikace 20 Slabá (Weak) konzistentnost (1) Synchronizaní promnné zajišují konzistentnost skupiny operací (transakcí), ne individuálních zápis a tení. Vlastnosti: 1. Pístup k synchronizaním promnným spojeným s datovou pamtí je sekvenn konzistentní 2. Není dovoleno, aby byla nad synchronizaní promnnou provedena operace zápisu, dokud není na všech místech dokonena pedchozí operace zápisu 3. Není dovolena operace tení nebo zápisu nad daty, dokud nejsou provedeny všechny pedchozí operace nad synchronizaními promnnými. 6.12.2004 DS - Konzistentnost a replikace 21 7

Slabá (Weak) konzistentnost (2) int a, b, c, d, e, x, y; /* variables */ int *p, *q; /* pointers */ int f( int *p, int *q); /* function prototype */ a = x * x; /* a stored in register */ b = y * y; /* b as well */ c = a*a*a + b*b + a * b; /* used later */ d = a * a * c; /* used later */ p = &a; /* p gets address of a */ q = &b /* q gets address of b */ e = f(p, q) /* function call */ ást programu, kde mohou být nkteré promnné uloženy v registrech. 6.12.2004 DS - Konzistentnost a replikace 22 Slabá (Weak) konzistentnost (3) a) Platná posloupnost událostí pro slabou konzistentnost. b) Neplatná posloupnost pro slabou konzistentnost. 6.12.2004 DS - Konzistentnost a replikace 23 Uvolující (Release) konzistentnost (1) Platná posloupnost událostí pro uvolnnou konzistentnost. 6.12.2004 DS - Konzistentnost a replikace 24 8

Uvolující (Release) konzistentnost (2) Pravidla: Ped provedením operace tení nebo zápisu nad sdílenými daty musí být úspšn ukoneny všechny pedchozí požadavky Ped provedením požadavku uvolnní (release), musí být ukoneny všechny pedchozí tení a zápisy daného procesu Pístupy k synchronizaním promnným jsou FIFO konzistentní (sekvenní konzistentnost není požadována). 6.12.2004 DS - Konzistentnost a replikace 25 Vstupní (Entry) konzistentnost (1) Podmínky: Získání pístupu k synchronizaním promnným vztaženým k procesu je požadováno teprve tehdy, když jsou provedeny všechny opravy chránných sdílených dat vztažených k tomuto procesu. Ped povolením režimu výluného pístupu k synchronizaní promnné procesem nesmí mít jiný proces pístup k této synchronizaní promnné ani v sdíleném (nevýluném) režimu. Po ukonení režimu výluného pístupu k synchronizaní promnné nemže být proveden sdílený pístup k této synchronizaní promnné jinými procesy dokud není vzat na zetel vlastníkem promnné. 6.12.2004 DS - Konzistentnost a replikace 26 Vstupní (Entry) konzistentnost (2) Platná sekvence událostí pro vstupní konzistentnost. 6.12.2004 DS - Konzistentnost a replikace 27 9

konzistentnost písná linearizovatelnost sekvenní píinná FIFO konzistentnost slabá uvolující vstupní Pehled konzistenních model popis Absolutní uspoádání v ase pro všechny události sdílených pístup. Všechny procesy musí vidt všechny sdílené pístupy ve stejném poadí. Pístupy jsou navíc uspoádány podle globálních (nejednoznaných) asových znaek. Všechny procesy vidí všechny sdílené pístupy ve stejném poadí. Pístup není uspoádán v ase. Všechny procesy vidí píinn svázané sdílené pístupy v tomtéž poadí. Všechny procesy vidí zápisy ostatních proces v poadí, ve kterém byly použity. Zápisy od rzných proces nemusí být vidny v tomtéž poadí. popis Sdílená data mohou být chápána jako konzistentní pouze po ukonení synchronizace. Sdílená data jsou vytvoena konzistentn po ukonení kritické sekce. Sdílená data náležející kritické oblasti jsou vytvoena konzistentn po vstupu do kritické sekce. (b) a) Konzistentní modely, které nepoužívají synchronizaní operace. b) Modely se synchronizaními operacemi 6.12.2004 DS - Konzistentnost a replikace 28 (a) Ostatní konzistenní modely (Klient-Centric konzistenní modely) Pedchozí studované modely se týkaly údržby konzistentní datové pamti v pípad konkurentních operací zápisu a tení. Jiná tída distribuovaných datových pamtí je charakterizována tím, že postrádá soubžné opravy. Tj. mnoho operací požaduje tení datové pamti, ale ne zápisy. Takové datové pamti používají velmi slabou formu konzistentnosti, známou jako možná (eventual) konzistentnost. 6.12.2004 DS - Konzistentnost a replikace 29 Možná (Eventual) konzistentnost Mezi systémy, kde mže být velmi uvolnná konzistentnost patí: DNS systém Web. Otázka zní: jak rychle mohou být opravy pístupné procesm, které data pouze tou? Po njaké dob vidí všechny repliky všechny opravy a pechází do konzistentního stavu (jsou postupn konzistentní). Tento typ konzistentnosti je znám jako možná konzistentnost. Možná konzistentnost vyžaduje zadávat pouze takové opravy, u kterých je zarueno, že budou v konené dob dorueny do všech replik. Možná konzistentnost pracuje dobe pokud se klienti vždy pipojují k téže replice. Pokud se do distribuovaných systém pidá mobilita, mže systém zkolabovat velmi rychle. 6.12.2004 DS - Konzistentnost a replikace 30 10

Možná (Eventual) konzistentnost Princip pístupu mobilních uživatel k rzným replikám distribuované databáze. 6.12.2004 DS - Konzistentnost a replikace 31 Monotónní tení Operace tení jsou provádny jedním procesem P na dvou rzných lokálních kopiích téže datové pamti. a) Monotónní tení konzistentní datové pamti b) Datová pam, kde se neprovádí monotónní tení. 6.12.2004 DS - Konzistentnost a replikace 32 Monotónní zápis Operace zápisu provádné jedním procesem P nad dvma rznými lokálními kopiemi téže datové pamti a) Monotónní zápis konzistentní datové pamti b) Datová pam, která neprovádí konzistentní monotónní zápis. 6.12.2004 DS - Konzistentnost a replikace 33 11

tení vlastních zápis a) Datová pam, která poskytuje konzistentnost typu tení vlastních zápis. b) Datová pam, která to neposkytuje. 6.12.2004 DS - Konzistentnost a replikace 34 Zápisy následující po tení a) Datová pam s konzistentností typu writes-follow-reads. b) Datová pam bez konzistentnosti typu writes-follow-reads. 6.12.2004 DS - Konzistentnost a replikace 35 12