Elosztott adatbázis-kezelő formális elemzése

Hasonló dokumentumok
Gartner: Hype Cycle for Big Data NoSQL Database Management Systems

Szárnyas Gábor (BME) diáinak felhasználásával.

MapReduce paradigma a CAP-tétel kontextusában. Adatb haladóknak. Balassi Márton Adatbázisok haladóknak 2012.

Hálózatba kapcsolt adatbázisok. Erős Levente, TMIT 2011.

Nem-relációs adatbáziskezelés. Gajdos Sándor május 8.

Lineáris. Soros. Okozati FIFO. Belépő

Valószínűségi modellellenőrzés Markov döntési folyamatokkal

NoSql, Document Store, MongoDB. Gombos Gergő

RDBMS fejlesztési irányok. Ferris Wheel (óriáskerék) Jim Gray törvényei. Elosztott adatbázisok problémái. Elosztott adatbázisok

NoSQL adatbázisok. Adatb haladóknak. Trencséni Márton Adatbázisok haladóknak szeptember 25.

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Adatbázis rendszerek I

ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek

Szinkronizálás. 9. előadás

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Elosztott adatfeldolgozás

Felhő alapú hálózatok Konténerek orkesztrálása Simon Csaba. Budapesti Műszaki és Gazdaságtudományi Egyetem

Tranzakció-kezelés, alapfogalmak. Vassányi István, 2012.

Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Felhők teljesítményelemzése felhő alapokon

DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD

TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS

Big Data. Benczúr András Big Data Lendület kutatócsoport MTA SZTAKI, Informatika Laboratórium Benczúr András

9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Alapszintű formalizmusok

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

webalkalmazások fejlesztése elosztott alapon

GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN

Gyakorló feladatok: Formális modellek, temporális logikák, modellellenőrzés. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Nyilvántartási Rendszer

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

Modell alapú tesztelés mobil környezetben

S04-2 Elosztott alkalmazások készítése

Élet az SQL-en túl: Az adatfeldolgozás legújabb trendjei. Földi Tamás

MMK-Informatikai projekt ellenőr képzés 4

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

Automatikus tesztgenerálás modell ellenőrző segítségével

B I T M A N B I v: T M A N

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Modellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

Zárthelyi mintapéldák. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Adatbázisok elmélete 18. előadás

Big data amikor a probléma az adat mérete maga

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa:

Budapest Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Adatbázisok Oktatási Labor. Adatbázisok haladóknak VITMAV12

Tarantella Secure Global Desktop Enterprise Edition

Nagy bonyolultságú rendszerek fejlesztőeszközei

Adatbázisrendszerek 9. előadás: Tranzakciók és konkurencia

VIR alapfogalmai. Előadásvázlat. dr. Kovács László

Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

11. Elosztott állománykezelés. Operációs rendszerek. Elosztott állománykezelés. Teljesítmény növelése. Az állományokra hivatkozás. Az állományok nevei

API tervezése mobil környezetbe. gyakorlat

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Tranzakciók az SQL-ben

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán és Berényi Attila

Párhuzamos és Grid rendszerek

Alternatív adatbázisok Gráfadatbázisok

Adatbázis-kezelés. Dr. Fülep Dávid. SELECT id FROM tantargy WHERE intezmeny = sze ORDER BY hasznossag LIMIT 1 NGB_SZ_003_9

GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN

SAP vállalatirányítási rendszer alapjai

Valós idejű megoldások: Realtime ODS és Database In-Memory tapasztalatok

Vizuális adatelemzés - Gyakorlat. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.

Elosztott rendszerek

Szolgáltatás Orientált Architektúra és több felhasználós adatbázis használata OKF keretein belül. Beke Dániel

Automatikus infrastruktúra menedzsment és alkalmazástelepítés

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

NEPTUN ID BMENET ID. Címtár BME VPN. vcenter VPN SVN. Trac Wiki. Wifi

NoSQL adatbázis-kezelők 1

Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 7. rész: Konzisztencia & replikáció

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Weboldalak biztonsága

Konzisztencia és többszörözés. 10. kurzus

MongoDB THE NOSQL DATABASE. Készítette: Hugyák Tamás v2.1.1

Vállalati információs rendszerek I, MIN5B6IN, 5 kredit, K. 4. A meghirdetés ideje (mintatanterv szerint vagy keresztfélében):

Üzleti lehetőségek a nyílt forráskódú fejlesztésben

Két típusú összeköttetés PVC Permanent Virtual Circuits Szolgáltató hozza létre Operátor manuálisan hozza létre a végpontok között (PVI,PCI)

Multiprotocol encapsulation (RFC1483) - IETF Classical IP over ATM (RFC1577) - IETF LAN Emulation (LANE) - ATM Forum Multiprotocol over ATM (MPOA) -

Üzleti folyamatok a felhőben. ECM Szakmai Kongresszus 2011.október 4.

Központi közigazgatási rendszerek kapcsolatai

CCS Hungary, 2000 szeptember. Handling rendszer technikai specifikáció

ALKALMAZÁS KERETRENDSZER

Takács Gábor mérnök informatikus, okl. mérnöktanár

Teljesítménymodellezés

Big Data az adattárházban

Formális modellezés és verifikáció

Reaktív programozás szerver oldalon

Hadoop és használata az LPDS cloud-on

Adatbázis-kezelés. Fülep Dávid. SELECT id FROM eloadas WHERE intezmeny = sze ORDER BY unalomfaktor LIMIT 1 NGB_SZ_003_9

Component Soft és tovább

Adatbázisok elmélete 18. előadás

A Szoftver és Szolgáltatások. Stratégiai kutatási terve. Kondorosi Károly, BME IIT. Szoftvertechnológiai Fórum február 2.

SQLServer. Particionálás

Nyílt forráskódú irodai programkomponensek vállalati környezetbe való integrációjának vizsgálata és implementációja

Számítógép Architektúrák

RHadoop. Kocsis Imre Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Átírás:

Elosztott adatbázis-kezelő formális elemzése Szárnyas Gábor szarnyas@mit.bme.hu 2014. december 10. Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

ELOSZTOTT ADATKEZELÉS

Replikáció Többpéldányos tárolás read V read V write read V= V V = V =

Elméleti korlát: a CAP tétel Sejtés: Eric Brewer, 2000 Tétel: Nancy Lynch, Seth Gilbert, 2002 Tulajdonságok: o Consistency o Availability o Partition tolerance Fischer Lynch Paterson lehetetlenségi tétel Sejtés. Elosztott rendszerben egy időben nem garantálható mindhárom tulajdonság.

CAP tétel precízen Tétel. Egy elosztott rendszerben nem biztosítható, hogy a rendszer mindig (üzenetek elvesztése esetén is) garantálja az alábbi tulajdonságokat: o atomi konzisztencia (consistency), o rendelkezésre állás (availability). Bizonyítás. Seth Gilbert, Nancy Lynch, Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services, http://dl.acm.org/citation.cfm?id=564601

Consistency konzisztencia Egy adategység értékét bármely csomóponttól lekérdezve ugyanazt az értéket kapjuk. read V db0 db1 read write V V= V = V = nem konzisztens adategység

Availability rendelkezésre állás A rendszer minden működő csomóponthoz érkező kérésre válaszol read V db0 db1 write V= V = V = nem elérhető adategység

Konzisztenciamodellek A CAP tétel következménye gyenge konzisztencia erős konzisztencia erős konzisztencia több adategységen

Gyenge konzisztencia YouTube nincs szükség pontos értékre

Konzisztenciamodellek A CAP tétel következménye gyenge konzisztencia gyakori kompromisszum fokozatos konzisztencia erős konzisztencia erős konzisztencia több adategységen

Fokozatos konzisztencia Tumblr

Tranzakciók ACID garanciák Atomicity Consistency Isolation Durability http://en.wikipedia.org/wiki/acid_test_(gold)

ACID BASE spektrum Atomicity Consistency Isolation Durability Basically Available Soft state Eventually consistent???

CASSANDRA

Cassandra 2007 Dynamo (Amazon) 2008 Cassandra (Facebook) 2009 Apache projekt

DB-Engines Ranking 2014. dec. http://db-engines.com/en/ranking

Konzisztenciaszintek A A Cassandrában műveletenként specifikálható

Konzisztencia ellenőrzése 1. Szisztematikus terhelés o Adatbázis és naplófájlok elemzése 2. Implementáció helyességének ellenőrzése o A gyakorlatban kivitelezhetetlen

Cassandra formális elemzése Si Liu, et. al, Formal Modeling and Analysis of Cassandra in Maude, Tech report: https://sites.google.com/site/siliunobi/icfem-cassandra Eszköz: Maude LTL modellellenőrző o Adott állapotból kiindulva teljesül-e egy temporális logikai kifejezés

Kapcsolódó munkák Adatbázis-kezelők formális verifikációja o NoSQL rendszereknél nincs o Megastore (Google) Felhő alapú rendszerek verifikációja o ZooKeeper rendelkezésre állás o DoS resilience mechanizmusok o KLAIM nyelv architektúra elemzés

Konzisztenciamodellek formálisan

Erős konzisztencia

Fokozatos konzisztencia

Fokozatos konzisztencia ellenőrzése - 1 kliens A s1 s4 s2 s3 ONE/QUORUM/ALL 3 replika op eventual : Address Address Address Key Value -> Prop. eq < R1 : Server table: (K -> (V,T1),...),... > < R2 : Server table: (K -> (V,T2),...),... > < R3 : Server table: (K -> (V,T3),...),... > REST = eventual(r1,r2,r3,k,v) = true. red modelcheck(initconfig, <>[] eventual(r1,r2,r3,key,value)).

Fokozatos konzisztencia Fokozatos konzisztencia: mindig garantált

Erős konzisztencia ellenőrzése 1 kliens A s1 s4 s2 s3 ONE/QUORUM/ALL op strong : Address Value -> Prop. eq <A:Client store:(id,k,v),...> REST = strong(a,k,v) = true. red modelcheck(initconfig, <> strong(client,key,value)).

Erős konzisztencia

Több klienssel Fokozatos konzisztencia garantált Erős konzisztencia sérülhet

Összefoglalás Konzisztenciamodellek formális verifikációja megvalósítható A Cassandra modellje garantálja az ígért konzisztenciaszinteket Időzítési kényszerek további vizsgálata lehetséges (Real-Time Maude)