Az adatbázis-adminisztrátor munkájának az egyik feladata az adatbázis-kezelő rendszer kiválasztása és annak telepítése, frissítése. A kiválasztásban a szakmai szempontok mellett természetesen nagy szerepet játszik a teljes felépítendő környezetnek, és a támogatásnak a költsége is. Ezért azt kell mondjuk, hogy a legtöbb cégnél a cég vezetősége dönt arról, hogy milyen adatbázis-kezelő rendszert választanak. Az adatbázis-adminisztrátornak nagy feladat a szakmai érvek felsorolása az egyes adatbázis-kezelő rendszerek, illetve környezetek mellett vagy ellen. Természetesen a telepítés és a frissítés az ő dolga lesz, ha nincs külön rendszer-adminisztrátori csoport.
Az adatbázis-adminisztrátor csoport feladata a cégen belül a támogatott adatbázis-kezelő rendszer, és a hozzá kapcsolódó különböző termékek politikájának meghatározása. Ha lehetséges minimalizáljuk a különböző típusú adatbázis-kezelő rendszerek és termékek számát. Ha többféle operációs rendszerre és többféle típusú hardverre kell adatbázis-kezelő rendszert telepíteni, akkor is érdemes egy alapértelmezett típusú adatbázis-kezelő rendszert választani. Ettől az alapértelmezettől csak akkor érdemes eltérni, ha a cég üzletmenete ezt megkívánja. De akkor is olyan adatbázis-kezelő rendszert válasszunk, amely megfelel az adatbázis-adminisztrátori csoport technikai elvárásainak.
A legtöbb nagyobb adatbázis-kezelő rendszernek hasonló eszközei vannak. Ha egy adatbázis-kezelő rendszernek valamilyen eszköze vagy funkcionalitása ma nem létezik, akkor 18-24 hónapon belül valószínűleg a piacra fogják dobni. Ezért nem érdemes a döntést kizárólag arra alapozni, hogy az adott eszközt csak az adott adatbázis-kezelő rendszer ismeri.
Napjainkban 3 nagy zárt adatbázis-kezelő rendszert szállító cégről szoktunk beszélni: az IBM-ről amely a DB2-t szállítja, az Oracle-ről, és a Microsoftról, amelynek a terméke az SQL Server. Ha adatbázis-kezelő rendszert szeretnénk választani, akkor érdemes először az ő kínálatukat megnézni. Ennek az is az oka, hogy ezeknek a termékeknek van a legnagyobb támogatottsága a piacon, azaz ezekhez a termékekhez találunk a legkönnyebben támogató, programozó szakembereket, helpdesk szolgálatot, assistance-t. A döntésnél vegyük figyelembe azt is, hogy milyen platformra lehet őket telepíteni: a Microsoft SQL Server csak Microsoftos operációs rendszeren fut, míg a DB2 és az Oracle esetén ennyire erős operációsrendszer-megszorítás nincs. A döntésnél érdemes azt is megvizsgálni, hogy a szállító cégeknek milyen széles a technológiai portfóliója. Azaz nézzük meg, hogy a cég tud-e ajánlani hardvert, operációs rendszert, adatbázis-kezelő rendszert, alkalmazásszervert és más adatbázisra épülő alkalmazásokat, szolgáltatásokat. Ha a cégünk ezeket be tudja építeni a saját hardver- és szoftverstratégiájába, akkor érdemes egy cégtől több megoldást is választani. Ezeknek a termékeknek így jobb lesz a támogatottsága, illetve mivel egymáshoz vannak igazítva, jobban ki tudják használni egymás lehetőségeit.
A piacon vannak más kiváló adatbázis-kezelő rendszer termékek is, amelyeket érdemes tekintetbe venni bizonyos helyzetekben. Nyílt kódú szoftverek közül például választhatjuk a PostgreSQL-t vagy a MySQL-t, vagy minialkalmazásokhoz az SQLLite-t.
Ha a 3 nagy szállító termékei közül választunk, akkor egy olyan adatbázis-kezelő rendszert kapunk, amely elegendő funkcionalitással rendelkezik, ugyanakkor kevés kockázattal jár. Ha kisebb cégek termékei közül választunk adatbázis-kezelő rendszert, akkor nagyobb kockázatnak tesszük ki magunkat. A kisebb cégek adatbázis-kezelő rendszereinek kisebb a funkcionalitása és a támogatottsága is.
A megfelelő adatbázis-kezelő rendszer kiválasztásához stratégiára és tervre van szükség. Az adatbázis-kezelő rendszereket több szempontból érdemes megvizsgálni, összehasonlítani. A következő tényezőket mindenképp vegyük figyelembe:
Operációsrendszer-támogatás: Támogatja-e az adatbázis-kezelő rendszer a cégünknél használt operációs rendszert abban a verzióban, amelyet most a használunk és később használni tervezünk?
A cég típusa: Vegyük figyelembe a cég filozófiáját, amikor adatbázis-kezelő rendszert választunk. Néhány cég nagyon konzervatív és ragaszkodik a megszokott környezetéhez. A kormányzatok, a pénzügyi cégek, a biztosító és egészségügyi cégek általában konzervatívak. A liberálisabb cégek gyakran választanak alternatív megoldásokat. Nem szokatlan, hogy a gyárak, az egyetemek kevésbe konzervatívak. És végül vannak cégek, amelyek nem bíznak a Windowsban és a Unixot részesítik előnyben, ez a választás eleve kizár néhány terméket.
Benchmarkok: Milyen teljesítmény benchmarkok (mérések) érhetőek el az adatbázis-kezelő rendszer szállítójánál és az adatbázis-kezelő rendszer használóinál?
Skálázhatóság: Tud-e az adatbázis-kezelő rendszer annyi felhasználót és akkora adatbázisméretet támogatni, amelyet meg szeretnénk valósítani?
Támogató szoftvereszköz elérhetősége: Vannak-e elérhető eszközök az adatbázis-kezelő rendszerhez, mint például lekérdező és elemző eszköz, adattárház-támogató eszköz, adatbázis-adminisztrációs eszköz, mentési és helyreállítási eszköz, teljesítménymonitorozó eszköz, kapacitástervező eszköz, adatbázis-segédprogramok, illetve támogat-e az adatbázis-kezelő rendszer különböző programozási nyelveket?
Szakemberek: Van-e elegendő megfelelően képzett adatbázis-szakember az adatbázis-kezelő rendszerhez? Vegyük figyelembe az adatbázis-adminisztrátorokat, a technikai támogatást nyújtó személyzetet (rendszerprogramozó és -adminisztrátor, stb.) és az alkalmazásprogramozókat.
A tulajdonjog költsége: Az adatbázis-kezelő rendszer tulajdonjoga összesen mennyibe kerül? A tulajdonjog teljes összege tartalmazza az adatbázis-kezelő rendszer licencének az árát, a támogató szoftverek licencének az árát, a programozó, támogató, adminisztráló szakemberek költségét és az adatbázis-kezelő rendszer működéséhez szükséges erőforrások költségét.
Új verziók ütemezése: Milyen gyakran ad ki az adatbázis-kezelő rendszer szállítója új verziót? Néhány adatbázis-kezelő rendszer esetén az új verziók nagyon gyakran, akár minden 12-18 havonta megjelennek. Ez lehet jó is és rossz is a mi szempontunkból. Ha a cégünk konzervatív, akkor a gyakran változó adatbázis-kezelő rendszert nehéz támogatni.
Ügyfél-referencia: Van-e az adatbázis-kezelő rendszer szállítójának jelenleg felhasználói referenciája? Találunk-e más felhasználókat, akik elfogulatlan válaszokat adnak? Beszéljünk a jelenlegi felhasználókkal, és tudjuk meg például a következőket: Általában úgy működnek-e a dolgok, ahogy reklámozták? Milyen a támogatás? Sok hiba van-e az adatbázis-kezelő rendszerben? Az új verzióknak milyen a minősége?
Ár/érték hányados: Lehet, hogy az adott termék nem a legmegfelelőbb, de az adott üzleti modellben ez térül meg.
Az adatbáziskezelőrendszer-architektúráknak általában 3 szintje áll rendelkezésre: vállalati (enterprise), személyi (personal) és mobil.
A vállalati adatbázis-kezelő rendszer skálázhatósághoz és nagy teljesítményhez van tervezve. A vállalati adatbázis-kezelő rendszer képes nagyon nagy adatbázisokat, nagyon sok konkurens felhasználót, és többféle típusú alkalmazást támogatni. A vállalati adatbázis-kezelő rendszer nagygépeken fut, több processzort, párhuzamos lekérdezéseket támogat, stb.
A személyi adatbázis-kezelő rendszer egyfelhasználós, általában PC-n fut. Ilyen például a Microsoft Access. De a nagy adatbázis-kezelő rendszerek szállítói is tudnak személyi változatot ajánlani, mint amilyen az Oracle Express. Ezek általában sokkal kevesebbe kerülnek, mint a vállalati adatbázis-kezelő rendszerek, nem skálázhatóak, és nem alkalmasak többfelhasználós alkalmazásokhoz.
A mobil adatbázis-kezelő rendszer egy különleges változata a vállalati adatbázis-kezelő rendszernek. A távoli felhasználókhoz tervezték, akik nem rendszeresen kapcsolódnak a hálózathoz. A mobil adatbázis-kezelő rendszer a laptop vagy a kézi eszköz helyi adatbázisát éri el és módosítja. Amikor a laptopot vagy a kézi eszközt a hálózathoz kapcsoljuk, akkor az adatbázis-kezelő rendszer lehetőséget kap, hogy a központi adatbázis-szerverrel szinkronizálja a helyi adatbázist.
A klaszterezés több független számítógép összekapcsolása, melyeknek az együtt végzett munkája a felhasználó számára úgy tűnik, mintha egy önálló, magas elérhetőségű rendszert használnánk. A skálázhatóság és elérhetőség növelése érdekében az adatbázis-kezelő rendszerek általában rendelkeznek klaszter támogatással. Két domináns architektúra létezik: a megosztás nélküli (shared- nothing) (lásd 2-1. ábra) és a megosztott-lemez (shared-disk) (lásd 2-2. ábra) architektúra.
2-1. ábra Megosztás nélküli (shared-nothing) architektúra
A megosztás nélküli architektúrában az egyes rendszereknek saját privát erőforrásaik vannak (memória, lemez, stb.). A folyamatok a gépeket összekötő hálózaton keresztül küldött üzenetekkel kommunikálnak. Egy kliens kérés automatikusan az erőforrásgazdához lesz irányítva. Ha hiba történik az egyik csomóponton, akkor az erőforrás tulajdonlása automatikusan egy másik rendszerhez kerül. Ez úgy történhet meg, hogy a csomópontokon tárolt adatok a klaszter legalább egy másik csomópontján többszörözve van. A fő előnye a skálázhatóság. Akár ezer processzorig skálázható a rendszer, mivel nem akadályozzák egymást.
2-2. ábra Megosztott-lemez (shared-disk) architektúra
Egy megosztott-lemez architektúrában az összekapcsolt rendszerek ugyanazokon a lemezeszközökön osztoznak. Minden processzornak van saját memóriája. Minden processzor közvetlenül címezhet minden tárat. Általában kisebb gépek esetén ez az architektúra kevésbé skálázható, mint a megosztás nélküli architektúrában. A megosztott-lemez architektúra nagygépes környezetben nagyvállalati folyamatokhoz alkalmas. Ha néhány nagygépet megosztott-lemez architektúrában kapcsolunk össze, nagyobb elérhetőséget és skálázhatóságot érünk el, mint sok közepes processzorú PC megosztás nélküli architektúrában történő összekapcsolásával.
A 2-3.-as ábra összehasonlítja a kétféle architektúrát.
2-3. ábra A megosztás nélküli architektúra és a megosztott-lemez architektúra összehasonlítása
Bármely architektúrát tekintve a klaszterezés legfontosabb előnye az elérhetőség növekedése. Sok esetben ez 99.999%-os elérhetőséget jelent.
A klaszterezésről további ismereteket még az Adatok elérhetősége című fejezetben találhatunk.