Elosztott adatbázis

A Wikipédiából, a szabad enciklopédiából
(Osztott adatbázis szócikkből átirányítva)

Az osztott adatbázis egy fizikailag megosztott, de logikailag egységes adatbázis.

Története[szerkesztés]

A lekérdezés a 80-as évekre erősen megnövelte a kommunikációs költségek részarányát az adatbázis-kezelés költségein belül. Ez a tény sugallta az ötletet: próbáljuk meg az adatokat a felhasználás közelében elhelyezni. Megoldás, az osztott adatbázisok.

Előnyei[szerkesztés]

Az előnyök:

  1. A kommunikációs költségek már említett csökkenése.
  2. Mindenki a számára ismerős adatokat gondozza.
  3. Egy-egy csomópont kiesése esetén a többi adatai továbbra is elérhetőek.
  4. Lehetséges a moduláris tervezés, a rugalmas konfigurálás.
  5. Hosszabb idő alatt a rendszer gépei akár ki is cserélhetők.

Hátrányai[szerkesztés]

Hátrányai:

  1. A rendszer bonyolultabb és sebezhetőbb lesz.
  2. Nem könnyű minden csomópontra egyformán jó személyzetet találni, másrészt, ha találunk fenyeget a szuboptimalizáció veszélye.
  3. Mindig valamennyi gépnek működnie kell.
  4. Többféle hardvert és szoftvert kell a rendszernek kezelnie és "összehoznia".
  5. Bonyolult a jogosultságok ellenőrzése (a jogosultságokat leíró táblázatokat hol tároljuk: egy csomópontban, vagy mindenütt?).

Redundancia[szerkesztés]

Külön problémát jelent, ha feladjuk a redundancia-mentesség elvét. Erre okot szolgáltathat az is, ha nem eldönthető egy-egy adatról, hogy hol használják legtöbbet, de biztonsági okokból is dönthetünk egy-egy adat többszörözése mellett. Ilyen esetekben biztosítanunk kell, hogy az egyes példányok tartalma azonos legyen, azaz a rendszer konzisztens maradjon. Az első osztott rendszerek megvalósításához nagy segítséget nyújtott az ún. backend gépek felhasználása. Az adatok elhelyezése tervezéskor az adatbázis felügyelő feladata (Mivel az osztott rendszereknél meg kell különböztetnünk központi és csomóponti adatbázis felügyeletet, pontosabban a központi adatbázis felügyeletét). A már működő rendszerek automatikusan is képesek a felhasználás gyakoriságát figyelve a kópiák számán és elhelyezkedésén változtatni. Az adatbázis felügyelő számára több elemzési módszer áll rendelkezésre döntései meghozatalakor.

Redundancia elemző módszerek[szerkesztés]

  • A forrás-nyelő elemzés

Elsősorban a felhasználás gyakoriságát kell vizsgálnunk.Nem mindegy azonban, hogy a felhasználó csomópont nyelő (azaz csak olvassa az adatot, s így a felhasználáskor elég a legközelebbi példányt megtalálnia), vagy forrás (mely az adatot létrehozza, vagy módosítja).

  • Az ABC elemzés

Az adatok kategóriákba sorolhatók "nélkülözhetetlenség" szerint. Ezekhez a kategóriákhoz különböző minimális kópiaszámot rendelhetünk.

  • Az érzékenység elemzés

A különböző csomópontok költség/teljesítmény aránya más és más lehet. Nyilvánvaló, hogy a teljesítményt "kevésbé érzékeny" csomópontoknál növelni, az "érzékenyebbeknél" csökkenteni kell. Említettük már a konzisztencia megőrzésének fontosságát. Ez a szinkronizációs protokollok feladata. E protokollok vagy biztosítják az erős konzisztenciát (vagyis azt, hogy egy-egy adat kópiái egyszerre változzanak meg), vagy a gyenge konzisztencia (amikor az adatbázis hosszabb-rövidebb ideig inkonzisztens marad) mellett gondoskodnak arról, hogy ez ne okozhasson problémát. A konzisztencia mérőszáma a koherencia, mely erős konzisztenciánál azonosan 1 értékű, gyenge konzisztenciánál pedig 1-hez tart. Következtetésképp a koherencia konvergenciája a konzisztencia feltétele.

Szinkronizációs protokollok[szerkesztés]

A szinkronizációs protokollokat két részre oszthatjuk. A központosított protokollokban az egyik (nem feltétlenül mindig ugyanaz) csomópont szerepe kitüntetett, az osztott protokolloknál ilyen nincs.
Központosított protokollok

  • A központi zárellenőrzés

Egy állandó központ végzi el a változtatásokhoz szükséges lezárásokat. Működése hasonlít az osztatlan adatbázisoknál megszokotthoz. A központ sérülésére érzékeny, csak statikus adatbázisoknál használható, erősen konzisztens módszer.

  • A zseton módszer

Egy, a csomópontok között körbejáró "zseton" jelöli ki az alkalmi központot, mely a változtatásokhoz szükséges lezárásokat elvégezheti. Igen kedvelt, erősen konzisztens módszer.

  • Az elsődleges példány módszer

Egy adat kópiáit egy szekvenciába szervezzük, s a változtatások csak ennek mentében történhetnek. Mivel a tranzakciók nem előzhetik meg egymást, nem okoz gondot, hogy a módszer gyengén konzisztens. Előnye, hogy az ideiglenesen működésképtelen csomópontok újra munkába állítása egyszerű
Osztott protokollok

E módszernél a tranzakciók elindításuk időpontjából és a csomópont azonosítójából egy időbélyeget kapnak, mely meghatározza végrehajtásuk sorrendjét. A távolságból adódó félreértéseket rendszeres dummy üzenetek küldésével kerülik el. A módszer gyengén konzisztens.

Adatvédelem[szerkesztés]

A modern ipar, kereskedelem, államigazgatás stb. (azaz a társadalom) zavartalan működéséhez azt jól kiszolgáló informatikai rendszereket igényel. Alapvető fontosságú ezen rendszerek védelme a behatolás, szabotázs, stb. ellen. Az USA-ban már a 80-as években kimutatták, hogy egy-egy számítógépes bűncselekmény nagyságrendekkel nagyobb kárt okoz, mint egy átlagos bankrablás. A védelemnek alapvetően három formája van:

  • a fizikai védelem

mely az adatokhoz való illetéktelen hozzáférést fizikailag próbálja megakadályozni (zárt, őrzött számítóközpont stb. A modern rendszerekben az adatok ilyenfajta védelme a műholdas adatátvitel elterjedése óta alig lehetséges, hiszen az ilyen vonalak vételének megakadályozása fizikailag lehetetlen.)

  • az ügyviteli védelem

mely a követendő biztonságtechnikai szabályokat, kötelező viselkedési módokat, továbbá a kötelező dokumentálás rendjét írja elő (elsősorban a felelősségkérdését szabályozza),

  • az algoritmikus védelem

olyan algoritmusok összessége, mely a fentieket hatékonyan elősegítő, kiszolgáló algoritmusokat tartalmaz. Az algoritmikus védelem is tovább osztható: a rejtjelezés és az üzenethitelesítés lehetővé teszi az adatok védetlen közegen való továbbítását, a felhasználó azonosítás a rendszert használó személyek egyértelmű azonosítására szolgál (ugyanez a feladata számítógépek kapcsolata esetén a partner azonosításnak), a hozzáférés védelem megakadályozza az egyébként jogos felhasználót abban, hogy hatáskörét túllépje, végül a digitális kézjegy az elküldött üzenetek letagadását akadályozza meg.