3. INFORMATIKAI RENDSZEREK ADATBÁZIS KEZELÉSE
3.5. Relációs adatbázis-kezelı rendszerek áttekintése
A rendszer telepítése kapcsán az egyik alapvetı kérdése, hogy mely adatbázis kezelı rendszer (DBMS) kerüljön bevetésre. A piacon ugyanis több gyártó van jelen, ha gazdagnak nem is nevezhetı is gazdag, de több lehetıséget kínáló termékskálával. A lehetséges rendszereket két fı csoportba oszthatjuk szét:
- Ingyenes termékek:
A termék szabadon letölthetı a gyártó honlapjáról és szabadon felhasználható. Itt ügyelni kell arra, hogy a letölthetı termékre a gyártó milyen felhasználást engedélyez. Vannak ugyanis olyan rendszerek, ahol a gyártó csak a termék tesztelését, betanulását engedélyezi, de a fejlesztést már tiltja. Más esetekben a fejlesztés még engedélyezett, de a piaci értékesítés már csak a fizetıs változattal jogszerő. A nagy DBMS gyártó cégek sorba jelentkeztek ilyen szabadabb felhasználású termékkel, melyeket rendszerint XE, azaz Express Edition változatnak neveztek el. A fontosabb szabadabb felhasználású termékek:
- mySQL - Postgres - HSQLDB - Oracle XE
- SQLServer XE - DB2 XE - Fizetıs termékek:
A fizetıs termékek esetében komoly licenszdíjat kell fizetni a felhasználásért. A kifizetett díjért cserébe rendszerint jelentıs többletérték kaphatunk vissza. A fizetıs változat mellett az alábbi érvek szólnak:
- garancia a rendszer funkcionalitására - többlet szolgáltatások:
o dokumentációk
o hatékonyság javító modulok
o nagyobb méretek kezelése (memória, adattábla) o adathordozó
o védelmi elemeket javító modulok o menedzselést támogató modulok
- termék használat támogatás (esetleg külön díj ellenében)
A DBMS termék kiválasztás után következı kérdés a DBMS verziójának, a kategóriájának a meghatározása. Egy adott DBMS termék ugyanis eltérı funkcionalitásban kapható a piacon.
Példaként az SQLServert véve, az alábbi verziók közül lehet választani:
- Express Edition - Workgroup Edition - Developer Edition - Standard Edition - Enterprise Edition
Az elıbb említett Express Edition elsıdlegesen egyfelhasználós környezetre és tanulási céllal készült. A rendszerbıl hiányoznak számos kényelmi szolgáltatások és jelentıs méretkorlátokkal kell számolni.
A Workgroup Edition kis vállalkozások számára készült, alapszinten támogatja a több processzort, van elemi DBA menedzseri modul, de nincs benne több hatékonyság és megbízhatóság támogató rész.
Developer Edition: Az adatbázis fejlesztık részére készült, amely támogat minden lehetséges funkciót, (mindent ami az Enterprise szinten elérhetı), viszont a termék csak fejlesztési idıszak alatt használható. Az elkészült adatbázis VIR alkalmazásához ez a szint már nem elegendı.
Standard Edition: Normál nagy és középvállalatok részére biztosít adatkezelési motort.
Elsıdlegesen csak a támogatott CPU-k számában és a particionálás hiányában különbözik a legnagyobb verziótól.
Enterprise Edition: A teljes funkcionalitást támogató verzió.
A fenti tervezési funkció mellett a DBA-hoz még tovább fontos és szabványos tevékenységkörök tartoznak, mint például:
- felhasználók karbantartása - védelmi rendszer felügyelete - objektumok paraméterezése - adatmentések elvégzése - adatbázis helyreállítása
- mőködési paraméterek beállítása, hibák kijavítása
A legnagyobb veszély az adatbázis mőködése során az, ha elveszik az aktuális adatbázis úgy, hogy nem is pótolható. Az adatvesztés a teljes nyilvántartási rendszer összeomlását jelenti, ami szinte pótolhatatlan veszteség mind a cég mind VIR szempontjából. A veszély súlyát jól mutatja, hogy a részeges leállások, idıleges leállások is több tíz vagy száz millió Forint veszteséget okozhatnak a cégnek. Ezen veszteségek elkerülésére gondoskodni kell az adatok lehetıség szerinti védelmérıl, az adatveszteség minimalizálásáról.
A DBA egyik alapfeladata az aktuális adatbázis állapot lementése. A mentés, vagy BACKUP funkció több módon is elvégezhetı. A legfontosabb mentési módok:
- file szintő mentés (például a COPY OS parancs használata) - DBMS szintő mentés
A file szintő mentés esetén a DBA az adatbázishoz tartozó állományokat átmásolja egy külön lemezre. Ezen mentés igen egyszerően elvégezhetı, azonban van egy szigorúbb elıfeltétel: a másolás alatt a DBMS nem mőködhet, senki nem dolgozhat a rendszerrel. Ha ugyanis dolgoznának a rendszerrel, a mentés inkonzisztens és használhatatlan lenne.
A DBMS szintő mentés esetén a segédeszközök lehetıvé teszik a folyamatos munka alatti mentést is. A konzisztencia biztosításához a mentést több állományba szétbontva végzik el. A lehetséges mentési módok:
- teljes mentés: minden adat
- napló mentés: csak a tevékenységlista mentıdik, az adat nem - különbségi mentés: csak a módosult adatok mentıdnek - részleges mentés: az adatbázis egyes szeletei mentıdnek csak
A mentés elvégzése után gondoskodni kell a másolatok megfelelı ırzésérıl. A másolatok felhasználásra rendszerint két esetben kerül sor:
- ha megsérül az aktuális adatállomány
- ha az adatbázist egy korábbi állapotra kell visszahozni.
A sérült állapot helyreállítását nevezik RECOVERY folyamatnak. A helyreállítás indítása történhet manuális és automata módon is. Ez utóbbi eset akkor következik be, ha a DBMS indításkor érzékeli, hogy sikertelen volt az utolsó rendszerleállás.
Az említett mentési-helyreállítási folyamat egyik gyenge pontja, hogy mind mentés és mind a helyreállítás viszonylag több idıt vesz igénybe, hiszen speciális indítási pontja van. Emiatt viszonylag hosszabb lehet a rendszer kiesési ideje. A veszteség további csökkentése érdekében vezették be a tükrözés mechanizmusát. Ekkor a rendszerben a dolgozó, fı adatbázis mellé két további adatbázist vesznek fel, melyek az alábbi funkciókat látják el:
- tüköradatbázis: ide másolódik a munkaadatbázis tartalma.
- irányító adatbázis: figyeli a munkaadatbázis állapotát, s szükség esetén a tükör adatbázist teszi meg munkaadatbázissá.
A tüköradatbázis tartalma automatikusan frissül, aktualizálása úgy történik, hogy a munkaadatbázisban végbement mőveletek a naplón keresztül átjutnak a tükör adatbázishoz és ott is lefutnak a tevékenységek. Az irányító adatbázis megadott gyakorisággal ellenırzi a munkaadatbázis érvényességét, s ha hibát talál, a két adatbázis szerepét felcseréli: a tüköradatbázis lesz a fı adatbázis, a korábbi munkaadatbázis lesz a tüköradatbázis.
A fenti mechanizmus mellett további módszerek is léteznek a veszteség minimalizálására. A DBMS kiesés csökkentését például a Cluster mechanizmusokkal lehet elérni.