2011.03.08.
Adatbázisok I Szemantikai adatmodellek
Adatmodellek komponensei Adatmodell: matematikai formalizmus, mely a valóság adatorientált leírására alkalmas Komponensei: strukturális rész: a valóságban megtalálható adattípusok és kapcsolataik leírására szolgál műveleti rész: felhasználásával különböző lekérdezési vagy módosítási tevékenységeket végezhetünk integritási rész: az adatbázisban megvalósuló adattípusokra, adatértékekre és kapcsolatokra, valamint az elvégezhető műveletekre ad megszorítást 2
1
2011.03.08.
Adatbázisrendszer-specifikus tervezés az adatrendszerre koncentrál adatbázis megtervezése központi probléma (hatékonyság, korrektség) tervezési célok: információk könnyen kezelhető struktúrában tárolása (felhasználók információ-igénye) gyors művelet végrehajtás kis helyfoglalás 3
Adatbázis modellek Az adatbázis kezelő rendszerek több különböző probléma területen is alkalmazhatók. A meglévő DBMS felhasználható hallgatói nyilvántartásra, helyjegyfoglalási rendszerre vagy éppen termelés irányítási adatbázisra, hiszen a DBMS tématerület független, általános adatkezelési rutinokat tartalmaz. A DBMS-hez léteznie kell egy nyelvnek, mellyel definiálható a tárolandó struktúra (séma). 4
2
2011.03.08.
Adatbázis modellek Adatmodell: azon formalizmus, melynek segítségével megadható a vizsgált problémakör adatelemeinek szerkezete, viselkedése. Séma: az adatmodell felhasználásával létrehozott adatszerkezet
5
Adatbázis modellek típusai
6
3
2011.03.08.
Adatbázis modellek kialakulásának idődiagramja
7
Adatbázis tervezés főbb lépései igényfelmérés és analízis koncepcionális adatbázismodell elkészítése DBMS rendszer kiválasztása A fogalmi modell átkonvertálása adatbázis adatmodellre A fizikai adatmodell megtervezése Adatbázis implementálás 8
4
2011.03.08.
Szemantikai adatmodellek Általános jellemzők: magasabb absztrakciós szint objektum orientált grafikus
Leggyakoribb elemek:
elemi objektum komplex objektum Asszociáció Típusöröklés Tartalmazás érték megkötés Operátorok műveleti megkötések
: szín, rendszám : autó, ember : tulajdonosa : jármű és autó : autó és motor : életkor > 14 : tulajdonos átírás : átírásnál adóbefizetés 9
Egyed-kapcsolat modell egyszerűsített szemantikai adatmodell, jele: ER kidolgozója: Chen(1976) csak strukturális részt és elemi statikus integritási részt tartalmaz Egyszerű grafikus jelölésrendszert alkalmaz nem teljes adatmodell, de egyszerűsége révén elterjedt, és ma is széles körben használatos tervezési segédeszköz a relációs adatbázis tervezéséhez 3 főkomponense van:
egyedhalmazok kapcsolatok Attribútumok(tulajdonságok) 10
5
2011.03.08.
Egyed elem az ER modellben Egyed: egy objektum típus, egy a külvilág többi részétől egyértelműen megkülönböztetett, önálló léttel bíró dolog, amiről az információkat tárolni kívánjuk. Hasonló egyedek összessége egyedhalmazt alkot. Kérdés: Mire vonatkozó információkat tároljunk a rendszerben?
Típusai: normál egyed (önmagában azonosítható): dolgozó, autó gyenge egyed (más egyedhez valókapcsolatán keresztül azonosított): dolgozó felesége, autó motorja
11
Tulajdonság elem az ER modellben Attribútum (Tulajdonság): Az egyedhalmazokhoz attribútumok tartoznak, melyek az egyedek tulajdonságait írják le. Kérdés: Milyen információkat tároljunk az egyedekre vonatkozóan? Típusai:
normál: egyértékű kulcs: azonosító szerepű összetett: több tagból áll többértékű: több értéke is lehet származtatott: értéke kiszámítható
ember.szülidő ember.TAJszám ember.lakcim(irsz,varos) ember.hobbi ember.életkor
12
6
2011.03.08.
Kapcsolat elem az ER modellben Kapcsolat: két vagy több egyedhalmazt kötnek össze egymással. A kapcsolatok leggyakrabban binárisak, azaz két egyedhalmazt kötnek össze, de az ER modell megengedi a többágú kapcsolatokat is. Kérdés: Milyen kapcsolatban állnak az egyes egyedek egymással? Kötelező jelleg szerinti típusok: opcionális: létezhet olyan egyedelőfordulás, melyhez nem kapcsolódik egyedelőfordulás a kapcsolatban kötelező: minden egyedelőforduláshoz kell kapcsolódnia egyedelőfordulásnak a kapcsolatban
13
Kapcsolat elem az ER modellben Számosság szerinti típusok: 1:1 egy egyedelőforduláshoz maximum egy egyed társul a kapcsolatban, mindkét viszonylatban •1:N (egy-több) egy egyedelőforduláshoz több egyed társulhat, de a másik irányban csak egy kapcsolódó egyedelőfordulás létezhet •N:M (több-több) mindkét irányban több kapcsolódó előfordulás létezhet
14
7
2011.03.08.
Példa Filmeket, színészeket és filmstúdiók adatait nyilvántartó adatmodellt készítünk. Tároljuk a film címét, műfaját, hosszát, gyártási évét, a stúdió nevét, címét, a színészek nevét és címét. Készítsük el az adatmodell ERD diagramját!
15
Kapcsolatok attribútumai Ha szükséges, a kapcsolatokhoz is rendelhetünk attribútumokat.
16
8
2011.03.08.
Kapcsolat attribútumának megszüntetése új egyed bevezetésével
17
Sokágú kapcsolat kiváltása egy egyedhalmazzal és bináris kapcsolatokkal
18
9
2011.03.08.
Modellezés menete ER-ben
19
Modellezési feladat Készítsük el egy könyvtár könyvkölcsönzési nyilvántartását az alábbi feladat specifikáció betartása mellett: Tartsuk nyilván a könyveket és jellemzőiket Tartsuk nyilván a könyvtárba beiratkozott személyeket, és azt hogy mikor melyik könyvet kölcsönzik ki A kikölcsönzési dátumból számítsuk ki a visszahozás dátumát (a kölcsönzési idő15 nap); amennyiben a könyvet később hozzák vissza, számoljunk naponta 100 Ft késedelmi díjat 20
10
2011.03.08.
Könyvtár ER modellje
21
11