2012.02.08.
Ajánlott irodalom □ Ullmann, Jeffry David, Adatbázisrendszerek: Alapvetés □ Kovács László (2004) Adatbázisok tervezésének és kezelésének módszertana, Computerbooks, Budapest □ Joe Celiko (2002) SQL Felsőfokon, Kiskapu Kiadó, Budapest □ Bódy Bence (2003) Az SQL példákon keresztül, Jedlik Oktatási Stúdió, Budapest
Adatbázisok I. Szendrői Etelka főiskolai docens Rendszer- és Szoftvertechnológia Tanszék
[email protected]
2
Információs rendszerek adatkezelési követelményei (1)
Információk kezelése Az alkalmazói programok döntő többsége információk sokaságát kezeli.
Alkalmazási területek: □ Ipar, kereskedelem: □ Számlázó rendszerek □ raktári készlet és rendelések nyilvántartása □ termelésirányítás, anyaggazdálkodás □ ügyfél nyilvántartás
□ Kultúra, oktatás, egészségügy: □ könyvtári információs rendszerek □ hallgatók nyilvántartása □ betegek nyilvántartása
□ nagy adatmennyiség □ Közigazgatás: adónyilvántartás □ Közlekedés: helyjegy foglalási rendszerek □ Bankok: ügyfelek, pénzügyi tranzakciók nyilvántartása □ Tudomány: szakadatbázisok □ Internet szolgáltatók (Google, Yahoo, Amazon.com)
VLDB (www.vldb.org) : 400 GB < kínai telefontársaság: 1TB-os tábla 108 lap, 5 km hosszú polc >400 év Petabájtnyi anyagok (1015 bájt): Google Műholdak által küldött adatok YouTube –kép és videó megosztó 3
4
1
2012.02.08.
Információs rendszerek adatkezelési követelményei (2)
Információs rendszerek adatkezelési követelményei (3) □ konkurens hozzáférés
□ hatékonyság
konfliktus az erőforrások párhuzamos használatánál lost update jelensége
□ időbeli: optimális válaszidő: < 2 s megtűrt válaszidő: < 20 s □ helyszükségleti: minimális redundancia szabályozott redundancia
A prog.: jutalom elhelyezése (5) B prog.: fizetés elhelyezése (3)
Egymás után Párhuzamosan 5
Információs rendszerek adatkezelési követelményei (4)
6
Információs rendszerek adatkezelési követelményei (5)
□ integritás őrzés
□ védelem
az adatrendszer ne sértse meg az előre definiált szabályokat
adatvesztés elleni védelem másolatok, naplózás
□ Szabályok:
hozzáférés védelem
□ statikus: a megkötés a tárolt adatértékre vonatkozik
bejelentkezés, titkosítás hozzáférés kontroll (jogkörök)
□ az életkor 0 és 100 közé eső érték lehet □ bruttóár = nettóár + 25% áfa
□ hatékony fejlesztés
□ dinamikus: a megkötés az elvégezhető műveletekre, illetve ezek sorrendjére vonatkozik
rugalmasság szabványosság magas szintű programozási elemek gyorsaság
□ utazási iroda törlésekor törlődnek az általa szervezett utak is □ nem lehet felvinni tantárgyat, ha nem rendelünk hozzáoktatót 7
8
2
2012.02.08.
Adatkezelés információs rendszerekben
Adatbázis
□Felvitel □Törlés □Módosítás □Lekérdezés A nagytömegű adatok feltételeknek eleget tévő kezelését biztosító rendszereket adatbázis-kezelő rendszereknek nevezzük.
Az adatbázis egy integrált adatrendszer, mely több különböző egyed előfordulásainak adatait adatmodell szerinti struktúrában, perzisztens módon tárolja a kapcsolat leíróelemek mellett a metaadatokkal együtt, melyek a hatékonyság, integritásőrzés, az adatvédelem biztosítását szolgálják. Jelölés : DB (database)
9
Adatbázis-kezelő rendszer
10
Adatbázis rendszer
Az adatbázis-kezelő rendszer olyan programrendszer, amelynek feladata az adatbázishoz történő szabályozott hozzáférés biztosítása és az adatbázis belső karbantartási műveleteinek végrehajtása. Jele: DBMS (database management system)
Az adatbázis-kezelő rendszer, az adatbázis és az alkalmazói programok együttesét adatbázis rendszernek nevezzük. Jele: DBS (database system) parancsfelület
3 GL program
A DB csak a DBMS-en keresztül érhető el legálisan. 4GL program 11
12
3
2012.02.08.
Adatbázisok használatának előnyei (1) □ az egyedtulajdonságok, kapcsolatok és meta-adatok egységes(integrált) tárolási rendszere: nem egy speciális alkalmazói programhoz készült, több alkalmazói program adatait összefogja □ nagyobb adatabsztrakció: az adatok a felhasználó szemszögéből tekintve adatmodellben tárolódnak, ezért a felhasználónak nem kell törődnie a fizikai tárolás részleteivel, egy magasabb absztrakciós szinten értelmezheti az adatrendszert
Adatbázisok használatának előnyei (2) □ adatfüggetlenség □ fizikai: a fizikai adatszerkezet, az elérési mód megváltoztatható anélkül, hogy a programot is módosítani kellene szintjei: rekord szintű, mezőszintű □ logikai: a letárolt logikai adatmodell maga is bővíthető, ill. bizonyos mértékben módosítható anélkül, hogy az alkalmazói programokat is módosítani kellene
13
14
Adatbázisok használatának előnyei (3)
Adatbázisok használatának előnyei (4) □ hozzáférési jogosultságellenőrzés □ adatvédelem(statikus: mentés, dinamikus: naplózás) □ optimalizált fizikai adatszerkezeteket használ (javítható a műveletek gyorsasága, hatékonysága) □ integritási feltételek érvényesítése: az adatbázisban tárolhatjuk az adatrendszerre vonatkozó megszorításokat (integritási szabályokat); az adatbázis módosításakor automatikusan ellenőrzi a DBMS, hogy neme sérült meg valamely integritási szabály
□ integrált adatokhoz történő párhuzamos és osztott hozzáférés: az adatmegosztás révén a helyigény is csökkenthető, és mindenki a legaktuálisabb adatokhoz férhet hozzá □ ellenőrzött redundancia: több alkalmazás is ugyanazt az adatbázist használja, ezért a felhasznált adatok is egy helyen, egy kézben összpontosulnak: könnyebb megőrizni a konzisztenciát, nincs felesleges helyfoglalás 15
16
4
2012.02.08.
Adatbázisok használatának előnyei (5)
DBMS belső struktúrája
□ szabványosság: szabványos adatmodellek és kezelőfelületek
□ hatékony fejlesztés: számos fejlesztőeszköz áll rendelkezésre az alkalmazásfejlesztéshez
□ rugalmasság: a szükséges változtatások gyorsan végrehajthatók 17
Adatbázis-kezelő rendszerek osztályozása
18
Adatmodell
□ az alkalmazott adatmodell szerint □ felhasználók száma szerint
□ matematikai formalizmus, mely az adatok és az adatokon értelmezett műveletek leírására szolgál □ az egyes adatmodellek a kiválasztott formalizmus jellegében különböznek egymástól □ a gyakorlatban legelterjedtebbek: hierarchikus, hálós, relációs, objektumrelációs, objektum-orientált
□ egyfelhasználós □ többfelhasználós
□ DBMS csomópontok száma szerint □ egy gépen fut a DBMS □ osztott DBMS
□ támogatott hardver és operációs rendszer szerint 19
20
5
2012.02.08.
Hierarchikus adatmodell
Hálós adatmodell
□ az adatokat hierarchikus faszerkezetben tárolja(a fa mindencsomópontja egy rekordtípusnak felel meg) □ 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ó adatkezelő nyelvek rekordorientált adat megközelítést alkalmaztak □ 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 □ mára háttérbe szorult
□ a hierarchikus modell továbbfejlesztése □ jobban illeszkedik a bonyolultabb kapcsolatok ábrázolásához is □ az adatszerkezet leírása nem egy adategységgel, hanem több kisebb, hierarchikus felépítésű adategységgel történik □ rekordorientált adat megközelítést alkalmaz □ A hálós modellen alapuló DBMS-ek igen elterjedtek a nagygépes környezetekben □ 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
21
Relációs adatmodell
22
Objektum-orientált adatmodell
□ sokkal rugalmasabb szerkezetet biztosít □ az adatbázis azonos rekordtípusokat tartalmazó táblákból épül fel, ahol minden tábla teljesen egyenértékű □ az adatdefiníciókor nincs véglegesen lerögzített kapcsolat, szerkezeti váz □ az egyedek közötti kapcsolatok az adatértékeken keresztül valósulnak meg □ a táblákon értelmezett műveletek halmazorientáltak □ rekordorientált műveletek is használhatók □ elterjedt modell: egyszerű, rugalmas, elméletileg megalapozott, szabványos kezelőfelülete van (SQL) 23
□ objektum-orientált szemléletmódot alkalmaz □ az egyedek sokkal szemléletesebben írhatók le az objektumokkal, mint a relációs modellben szereplő rekordokkal □ az objektumorientáltság a megvalósult rendszerekben lehet teljes vagy részleges(objektumrelációs) □ A részleges OODBMS-ek rendszerint csak strukturálisan 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 24
6