Szerkesztő:Feketetomi

A Wikipédiából, a szabad enciklopédiából
                             Adatbázis, adatbázis-kezelő rendszer, adatmodell

Környezetünk leírásához meg kell azt figyelnünk, adatokat kell gyűjtenünk az objektumairól, összegeznünk kell azok tulajdonságait, valamint meg kell figyelnünk a köztük levő kapcsolatokat. Ezek után juthatunk a rendelkezésre álló, tárolt adatokból új ismeretekhez, információhoz.

Az adatmodellezés az adatállományok tervezésének korszerű módszere. Az adatmodellezéssel az a célunk, hogy egy információs rendszer adatait és az adatok között fennálló kapcsolatokat következetesen ábrázolva, elősegítsük a számítógépes információ-feldolgozást. Az adathalmaz és az adathalmaz elemei között fennálló kapcsolatok strukturált leírását adatmodellnek nevezzük. Az adatmodellek -mint ahogy a nevükből is következik-, általában nem írják le teljesen és hűen a modellezett rendszerben található adatokat és azok kapcsolatait, hanem azoknak csak egy részét. Egy kielégítő modellnek teljesítenie kell bizonyos feltételeket: átfogónak kell lennie, azaz minden lehetséges adatot és minden lehetséges kapcsolatot tudnia kell ábrázolni és kezelni; le kell tudnia írni a valóság általános, lényeges és tartós összefüggéseit; redundancia-mentesnek kell lennie, azaz minden adatot lehetőleg csak egyszer tartalmazzon; következetesnek kell lennie; valamint az alkalmazott hardverrel és szoftverrel összhangban levőnek kell lennie.

Az adatmodellben · világosan megkülönböztethetők az ábrázolt dolgok és a dolgok tulajdonságai; · pontosan meghatározott, hogy melyek az ábrázolandó dolgok olyan tulajdonságai, amelyekkel a dolgok egyértelműen azonosíthatók; valamint az adatmodell expliciten definiálja az ábrázolt dolgok közötti kapcsolatokat.

Az adatmodell a valóság egy szeletének a leképezését jelenti. A valós világhoz képest az adatmodellek tartalmaznak bizonyos megszorításokat és egyszerűsítéseket, sőt még a modellező személyétől függő vonásokat is. Egy adatmodell úgy viszonyul a valósághoz, mint a térkép az általa ábrázolt tájhoz: a térképrajzolónak egyszerűsíteni kell, ki kell jelölnie a térkép széleit, és el kell döntenie, hogy mit is akar egyáltalán a térképen feltüntetni. Ugyanígy, az adatmodell kialakításakor a rendszerszervezőnek is el kell döntenie, hogy melyek a modelljében az ábrázolandó információelemek, és ki kell választania a dolgok között fennálló lényeges kapcsolatok közül azokat, amelyeket be akar a modellbe építeni. A lényeges információelemek és a modellben ábrázolandó kapcsolatok kiválasztása párhuzamosan történik. Egy adatmodell a következő elemeket tartalmazza: · egyed, · tulajdonság, · kapcsolat. Vagyis:

· Egyedek a valóság olyan dolgai, amelyek más dolgoktól megkülönböztethetők, azaz az egyed a valós világban létező, fogalmi vagy fizikai léttel rendelkező dolog, amelyet tulajdonságokkal akarunk leírni. (pl. dolgozó, tanuló, vevő, autó, stb.) Ugyanaz a dolog többféle egyednek is tekinthető (pl. egy személy lehet dolgozó), de a képviselt konkrét elemek halmazát egyedhalmaznak nevezzük. (a vevő, mint egyedhalmaz az összes vevőt tartalmazza)

· Tulajdonságnak nevezzük a valóság dolgainak azon jellemzőit, amelyekkel az egyedeket leírjuk. (pl. autónál tulajdonság a típus, szín, rendszám, stb. A típus értékei lehetnek: BMW, Opel, stb.) Az egyedek a tulajdonságértékeikkel azonosíthatók.

· Kapcsolatnak nevezzük az egyedek közötti viszonyok fogalmi tükörképeit. Objektumok közötti viszony pl. az, hogy a munkás a kft. dolgozója. Ennek egy konkrét előfordulása pl. Kovács János a Zabhegyező kft. dolgozója.

Ezen felsorolt adatmodell-elemek mindegyikének három szintje van:

· Belső, vagy fizikai szint: az adatok fizikai elhelyezését és fizikai elérési módját írja le. Azaz leírja a tárolás és az elérés módját. A tárolási mód megadja, hogy melyik lemezen fizikailag hol helyezkednek el az adatbázis adott rekordjai és azt, hogy milyen konverziót kell ahhoz elvégezni, hogy az adat a felhasználóknak megfelelő formájú legyen. Az elérési mód megadja, hogy hogyan, milyen sorrendben követik egymást a rekordok, hogyan érhetjük el őket. Tipikus elérési módok: fizikai sorrendben, valamilyen mező szerint rendezve, közvetlenül indexek alapján.

· Külső szint (view-k): melyek azt írják le, hogyan látják az egyes felhasználók az adatbázist. (view= alséma, szűkített adatbázis, amely az adatbázis rekordjait tartalmazza, de nem az összes mezővel.)

· Koncepcionális szint (fogalmi adatbázis): mely azt írja le, hogy logikailag egységbe vonva, hogyan néz ki ténylegesen az adatbázis. Azaz leírja. hogyan néznének ki az adatok, ha mindenki mindent láthatna belőlük. Ezt a leírást szoktuk az adatbázis sémájának nevezni. Ez tartalmazza a koncepcionális szint összes rekordtípusának tartalmi leírását, de az adatfüggetlenség érdekében nem tartalmazza az adatok helyét és a hozzáférési módot. Ugyancsak ez a szint írja le, milyen kapcsolatok vannak az egyes rekordok között. A kapcsolat leírásának módja az adatmodelltől függ.

Több adatmodell is létezik, de ezekből négy terjedt el igazán a gyakorlati életben: a hierarchikus, a hálós, a relációs és az objektum orientált adatmodellek. Ezek közül a relációs adatmodell a legnépszerűbb ma, a hálós modell kezd háttérbe szorulni, míg a hierarchikus már inkább a múlté, míg az objektum orientált modell a jövőben válik csak igazán piacéretté.

A hierarchikus adatmodell az adatokat egy hierarchikus faszerkezetben tárolja. E fa mindegyik csomópontja egy rekordtípusnak felel meg. A hierarchikus modell alapja, hogy a gyakorlati életben a szervezetek vagy éppen a struktúrák nagyon gyakran hierarchikus felépítésűek, gondoljunk csak a vállalati hierarchiára vagy egy gyártmány alkatrészeinek hierarchiájára. Emiatt természetesnek tűnik, hogy a modellezés megkönnyítésére a valóságban leggyakrabban használt, hierarchikus modellt hozzuk létre. Ez a modell a gyakorlati alkalmazások során fejlődött ki , ezért nincs olyan elméleti megalapozottsága mint a későbbi adatmodelleknek. A modellhez kapcsolódó DML nyelvek mind rekordorientált adatmegközelítést alkalmaztak. A bonyolultabb kapcsolatok ábrázolása csak kerülőutakon lehetséges. A modell előnye, hogy a hierarchikus szerkezet egyszerűen leírható és tárolása a mágnesszalagos tárolási formához is jól illeszkedik.

A hálós adatmodell a hierarchikus modell továbbfejlesztése, mely jobban illeszkedik a bonyolultabb kapcsolatok ábrázolásához is. Ebben a modellben az egyedek között tetszőleges kapcsolatrendszer, egy kapcsolatháló alakítható ki. Az adatszerkezet leírása, mivel a háló tetszőleges nagy lehet, nem egy adategységgel, hanem több kisebb, hierarchikus felépítésű adategységgel történik. Ehhez a modellhez is rekordorientált adatmegközelítést alkalmaztak a DML kialakításakor. A hálós modellen alapuló DBMS igen elterjedtek a nagygépes környezetben, hiszen a hálós modell nagy adatmennyiségek viszonylag gyors feldolgozását teszi lehetővé. A kezelőnyelv bonyolultsága, viszonylag merevebb szerkezete gátolta szélesebb körben történő elterjedését.

A relációs adatmodell sokkal rugalmasabb szerkezet biztosít az elődeihez viszonyítva. Az adatbázis azonos rekordtípusokat tartalmazó táblákból épül fel, ahol minden tábla teljesen egyenértékű, s nincs semmilyen az adatdefiníciókor véglegesen lerögzített kapcsolat, váz, mint ami az előző modelleknél előfordult. A relációs modellben az egyedek közötti kapcsolatok az adatértékeken keresztül valósulnak meg. A relációs modellben a táblákon értelmezett műveletek ugyan halmazorientáltak, de számos olyan implementáció létezik, melyben rekordorientált műveletek használhatók. A modell elterjedése az egyszerűségének és rugalmasságának köszönhető. Az objektum orientált modell célja az objektumorientáltság szemléletmódjának alkalmazásával minél valósághűbb adatmodellt megalkotása. Az egyedek ugyanis sokkal szemléletesebben írhatók le az objektumokkal, mint a relációs modellben szereplő rekordokkal. Az objektum orientáltság a megvalósult rendszerekben lehet teljes vagy részleges. A részleges OODBMS-ek rendszerint csak strukturálisan objektum objektum orientáltak, a funkcionális, aktív elemek csak a teljes OODBMS-ekben jelennek meg. Az OODBMS-ek elterjedését az egységes elméleti alapok hiánya és az implementációs nehézségek fékezik.