Regisztráció és bejelentkezés

Tranzakciós algoritmusok megvalósítása felhő környezetben

Napjaink informatikai rendszerei között egyre nagyobb szerepet kapnak a számítási felhőt használó és szolgáltató rendszerek. Az infrastruktúra modell által általános és megosztott hozzáférést kapunk megosztott számítógépes erőforráskészletekhez, mindezt gyors és egyszerű módon minimális szolgáltatói interakcióval [1].

A „cloud” nem csupán számítási kapacitást jelent, hanem számos alternatív szolgáltatást nyújt, melyek kezelése a hagyományos paradigmáktól eltérő szemléletet igényel. Így például az adattárolásra a hagyományos fájl alapú és relációs adatmodell mellett megjelennek a félstrukturált (NoSQL), vagy a különböző célfelhasználásra készített megoldások (bináris objektumtár, üzenetsor stb.).

Programjaink és algoritmusaink nagy valószínűséggel kapcsolatba kerülnek az adattárolásai réteggel, ezért fontos, hogy figyelembe vegyék a felhőre jellemző sajátosságokat ezen a területen is. A teljesítmény centrikus alkalmazásokhoz célszerű a NoSQL alapú megoldást választani, amely számos előnye mellett komoly technológiai megkötésekkel rendelkezik [2]. Már egy olyan fogalom, mint a műveletek tranzakcióban való végrehajtása is csak korlátosan támogatott.

A dolgozatomban megvizsgálom az Azure felhő tárolási lehetőségeit. Megmutatom, hogy a table storage technológia számos, a tranzakciókezelésre vonatkozó korláttal rendelkezik. Megvizsgálom, milyen algoritmikus megoldásokkal lehet ezeken a korlátokon felülkerekedni. Konkrét megoldást adok egy olyan tranzakciókezelési folyamatra, mely segítségével a table storage elosztott kezelése mellett is megőrizhetők a tranzakció alapvető tulajdonságai (atomicitás, konzisztencia, izoláció, tartósság). Dolgozatomban matematikai módszerekkel elemzem a megoldásom elméleti megfontolásait és bizonyítom helyességüket, továbbá bemutatom a rendszer átbocsátóképességére gyakorolt hatásukat.

Algoritmusom lehetővé teszi egészen újszerű, felhő alapú megoldások kidolgozását. Egy lehetséges ipari alkalmazása például egy fájlrendszeres ACL megvalósítása, ahol kiemelten fontos szerepet játszik a konzisztencia és a teljesítmény.

[1] P. Mell és T. Grance, „The NIST Definition of Cloud,” Szeptember 2011.

[2] I. Hartung és B. Goldschmidt, „Performance analysis of Windows Azure data storage options,” Budapest.

szerző

  • Gönczi Tamás
    mérnökinformatikus
    nappali

konzulensek

  • Dr. Kővári Bence
    docens, Automatizálási és Alkalmazott Informatikai Tanszék
  • Szebeni Szilveszter
    CIO, Tresorit Kft. (külső)
  • Hartung István
    Head of Server Team, Tresorit Kft. (külső)