Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Adatmodellezés (A logikai adatmodell kialakítása) 1 / 52.

Hasonló előadás


Az előadások a következő témára: "Adatmodellezés (A logikai adatmodell kialakítása) 1 / 52."— Előadás másolata:

1 Adatmodellezés (A logikai adatmodell kialakítása) 1 / 52

2 Adatmodellezés (A logikai adatmodell kialakítása) 2 / 52 Gáspár Bencéné Dr. Vér Katalin nyomán Barna Róbert KE GTK Informatika Tanszék Adatmodellezés (A logikai adatmodell kialakítása)

3 Adatmodellezés (A logikai adatmodell kialakítása) 3 / 52 nagymennyiségű adat leírására tárolására visszanyerésére kifejlesztett rendszer, amelyet több felhasználói program is használ. Adatbázis fogalma

4 Adatmodellezés (A logikai adatmodell kialakítása) 4 / 52 adatállomány (data fájl, database), amelyben az adatokat tárolják; kezelőszoftverek (adatbázis-menedzsment rendszer/Database Management System, DBMS), amelyek az adatokat a megadott leírásnak megfelelően tárolják, megkeresik vagy további műveleteket hajtanak velük végre. Adatbázis elemei

5 Adatmodellezés (A logikai adatmodell kialakítása) 5 / 52 Adatbázis-séma Az adatbázis teljes felépítése, az adatok struktúrája - az egyes adatelemek - az adatelemek kapcsolatai az adatbázis-sémában kerülnek rögzítésre.

6 Adatmodellezés (A logikai adatmodell kialakítása) 6 / 52 Példa adatbázis-sémára

7 Adatmodellezés (A logikai adatmodell kialakítása) 7 / 52 Adatbázis-séma Minden adatbázishoz egyetlen egy séma tartozik. SÉMA: meghatározza a logikai adatszerkezetet tárolási struktúrát az egyes adatelemek között fennálló fizikai és logikai kapcsolatokat. Egy adatbázis sémához akárhány alséma illeszthető.

8 Adatmodellezés (A logikai adatmodell kialakítása) 8 / 52 Adatbázis tervezés célja az adatok integrációjának, felhasználói programok adatfüggetlenségének biztosítása.

9 Adatmodellezés (A logikai adatmodell kialakítása) 9 / 52 Adatbázis tervezés lépései 1. Követelmények rögzítése 2. Koncepcionális adatmodell kialakítása 3. Adatmodell kiválasztása 4. Adatbázis séma megvalósítása

10 Adatmodellezés (A logikai adatmodell kialakítása) 10 / 52 Adatbázis tervezés lépései 1. Az adatbankkal szemben támasztott követelmények rögzítése statikus követelmények (entitások, tulajdonságaik, kapcsolataik) dinamikus követelmények (entitásokon végzett műveletek)

11 Adatmodellezés (A logikai adatmodell kialakítása) 11 / A koncepcionális adatmodell kialakítása A három-séma koncepció alapján (egységes adatleírást jelent) koncepcionális séma (logikai szint) belső séma (fizikai szint) külső séma (felhasználói szint) A szemantikus adatmodell (E-R, azaz Entity - Relationship - Modell) - gépfüggetlen, az adatok tartalmi elemzéséből indul ki. Adatbázis tervezés lépései

12 Adatmodellezés (A logikai adatmodell kialakítása) 12 / Az adatmodell kiválasztása a.Az adatmodell egy olyan séma, amelyben megadjuk milyen tulajdonságok határozzák meg az egyedeket, b.milyen egyedek szerepelnek a sémában, és ezek között c.milyen kapcsolatok vannak. Adatmodellek típusai: hierarchikus hálós relációs Adatbázis tervezés lépései

13 Adatmodellezés (A logikai adatmodell kialakítása) 13 / 52 Hálós adatmodell A hálós adatmodell szerkezetét gráffal adjuk meg. Ebben a gráfban a csomópontok az egyedek, az élek pedig a kapcsolatot fejezik ki. Az egyedeket tulajdonságaikkal írjuk le.

14 Adatmodellezés (A logikai adatmodell kialakítása) 14 / 52 Hierarchikus adatmodell A hierarchikus adatmodell szerkezetét speciális gráffal, fával adjuk meg. A csomópontok itt is egyedeket jelentenek és a nyilak a kapcsolatokat fejezik ki. Például: Hierarchikus adatmodell alakítható ki egy cég szervezeti hierarchiájának leírására Hierarchikus adatmodellt használnak a windows rendszerek felhasználói adatbázisának tárolására Hierarchikus adatszerkezetet használunk egy file rendszer leírására.

15 Adatmodellezés (A logikai adatmodell kialakítása) 15 / 52 Relációs adatmodell Ennél az adatmodellnél a három adatmodell elem közül a kapcsolat nem, csak a lehetőség épül be az adatmodellbe A relációs adatmodellnél a tulajdonságok kapják a fő hangsúlyt, a tulajdonságokkal definiáljuk az adatmodell szerkezetét Az előző két modellben a gráffal történő leírásban éppen a tulajdonságok nem szerepeltek, ezeket külön adtuk meg

16 Adatmodellezés (A logikai adatmodell kialakítása) 16 / 52 Relációs adatmodell A relációs adatmodellben az egyedet egy táblázattal adjuk meg, melynek oszlopai a tulajdonságok. A táblázat sorai az egyed értékei (vagyis a táblázat maga éppen az egyedhalmaz). A relációs adatmodellben minden tábla egy egyedhalmaz, de a táblázatok (tehát az egyedek) közötti kapcsolatokat nem definiáljuk az adatmodell felírásakor. Ez nem azt jelenti, hogy nincsen közöttük kapcsolat, de ezeket a kapcsolatokat például egyszerűen az fejezi ki, hogy két táblának van közös oszlopa (mindkét táblában szerepel ugyanaz a tulajdonság).

17 Adatmodellezés (A logikai adatmodell kialakítása) 17 / Az adatbank séma megvalósítása A konkrét adatbázis kezelőrendszer kiválasztása (Pl. ORACLE, ACCESS) Az adatbázis tervezés eredményeként létrehoznak egy ADATKATALÓGUS (ADATSZÓTÁR)-t az adatbázisbeli adatok, valamint tárolási és használati módjuk leírása. Adatbázis tervezés lépései

18 Adatmodellezés (A logikai adatmodell kialakítása) 18 / 52 Relációs adatbázis objektumok EAR = Entity-Attribute-Relationship Típus és előfordulás Egyed - Entity Kapcsolat - Relationship Adat - Attributum Az adatmodellben az entitástípusokkal foglalkozunk, A feldolgozásban ezen típusok konkrét értékével.

19 Adatmodellezés (A logikai adatmodell kialakítása) 19 / 52 Meta-adat Olyan adat, amely más adat vagy adatok jellemzőit, tulajdonságait írja le. Például: az adat definíciók, az adatra vonatkozó korlátok és szabályok, az adat szerkezeti felépítése stb. A meta-adatok: nem tartalmazzák magukat az adatokat, amelyeket leírnak, a teljes adatállományról egy átfogó képet tudnak adni, növelve ezzel is a felhasználó áttekintőképességét.

20 Adatmodellezés (A logikai adatmodell kialakítása) 20 / 52 Meta-adat

21 Adatmodellezés (A logikai adatmodell kialakítása) 21 / 52 Funkcionális függés A modellezés alapja a funkcionális függés vizsgálata. A halmaz adott előfordulása meghatározza B egyik elemét, azaz B halmaz elemei funkcionálisan függnek A halmaz elemeitől. AB

22 Adatmodellezés (A logikai adatmodell kialakítása) 22 / 52 Funkcionális függés R.X ↔ R.Y X független változó egyértelműen meghatározza Y értékét Például: egy személyi azonosítószám meghatározza a nevet.

23 Adatmodellezés (A logikai adatmodell kialakítása) 23 / 52 Teljes funkcionális függőség Ha X kulcs összetett és az Y csak az összetett kulcstól függ teljesen, de NEM FÜGG annak egyetlen komponensétől sem. Ha az X kulcs nem összetett, akkor a funkcionális és a teljes funkcionális függőség ugyanaz.

24 Adatmodellezés (A logikai adatmodell kialakítása) 24 / 52 Független egyed - nincs fölérendelt Hierarchikusan alárendelt egzisztenciális függés kulcs függés (összetett hierarchikus kulcs) Képzett egyed - kapcsolati egyed N:M kapcsolat esetén jön létre saját attribútumai lehetnek további kapcsolatai is lehetnek Egyed jellemzők

25 Adatmodellezés (A logikai adatmodell kialakítása) 25 / 52 azonosítók - Elsődleges kulcs egyszerű összetett leíró tulajdonságok (attribútumok) idegen kulcsok Kapcsolatok megvalósítására az alárendelt örökli a fölérendelt azonosítóját Attribútumok (tulajdonságok)

26 Adatmodellezés (A logikai adatmodell kialakítása) 26 / 52 Különböző egyedek kapcsolatai 1:N hierarchikus N:M hálós 1:1 kölcsönös egymáshoz rendelés Kapcsolatok - relációk

27 Adatmodellezés (A logikai adatmodell kialakítása) 27 / 52 Az entitástípusok közötti kapcsolatok foka

28 Adatmodellezés (A logikai adatmodell kialakítása) 28 / 52 A dolgozókról a következő adatokra van szükségünk: - személyi azonosító (AZON) - vezetéknév (VNÉV) - keresztnév (KNÉV) - végzettsége (VÉGZ) - szervezeti egység kódja (SZERV) - szervezeti egység neve (SZNÉV) - projekt kódja (amelyen dolgozik) (PKÓD) - projekt neve (PNÉV) - munkaidejének hány %-ban dolgozik a projekten (M%) - a szervezeti egység vezetőjének azonosítója (FŐNÖK) Dolgozói nyilvántartás készítése

29 Adatmodellezés (A logikai adatmodell kialakítása) 29 / 52 A cég feltételeinek elemzése alapján megállapítható: - a személyi azonosítószám egyedi, - a szervezeti egység kódja, neve egyedi, a kettő között egyértelmű kapcsolat áll fenn, - ez érvényes a projekt kódjára és nevére is, - egy dolgozó csak egy szervezeti egységhez tartozhat, - egy szervezeti egységnek csak egy főnöke van, - egy dolgozó több projekten dolgozhat, - projektek és egységek között nem kell kapcsolatot teremteni, - az egyes dolgozók projektekre fordított munkaidejének összegét nem kell ellenőrizni, hogy az 100%-e. Dolgozói nyilvántartás készítése

30 Adatmodellezés (A logikai adatmodell kialakítása) 30 / 52 Az adatokat a szervezeti egységektől kapjuk. A szervezeti egységek a következő formában adják át az adatokat: Dolgozói nyilvántartás készítése

31 Adatmodellezés (A logikai adatmodell kialakítása) 31 / 52 Dolgozói nyilvántartás készítése Elsődleges kulcs ALKALMAZOTT-1NF

32 Adatmodellezés (A logikai adatmodell kialakítása) 32 / 52 Első normál forma (1NF) Az entitástípus (táblázat) első normál formájú, ha csak olyan attribútum (oszlop) jellemzi, mely funkcionálisan függ az entitástípus (táblázat) azonosító elsődleges kulcstól vagy annak elemeitől. minden attribútum (oszlop) egy attribútum-értéket tartalmaz, minden sor különböző, az attribútumok sorrendje minden sorban egyezik, minden sorhoz tartozik legalább egy egyedi azonosító, melytől az összes többi attribútum függ. Valamennyi adatbáziskezelő-rendszer megköveteli, hogy az adatok legalább 1NF-ben legyenek. Dolgozói nyilvántartás készítése

33 Adatmodellezés (A logikai adatmodell kialakítása) 33 / 52 1NF táblázat rengeteg redundanciát tartalmaz Változtatási anomáliák: beírási - új dolgozó felvétele - új szervezeti egység létrehozása módosítási (konzisztencia problémák) - Tóth Éva férjhez megy (név probléma) - E03 egység új fınököt kap törlési - Kovács István kilép? B1 projekt - Kiss László kilép? E02 egység Dolgozói nyilvántartás készítése

34 Adatmodellezés (A logikai adatmodell kialakítása) 34 / 52 Relációk szétbontása (dekompozíció) a funkcionális függés alapján Dolgozói nyilvántartás készítése

35 Adatmodellezés (A logikai adatmodell kialakítása) 35 / 52 Második normál forma (2NF) Az entitástípus (táblázat) második normál formájú, ha csak olyan attribútum jellemzi, amely függ az összetett azonosítótól, de nem függ annak egy részétől. Dolgozói nyilvántartás készítése

36 Adatmodellezés (A logikai adatmodell kialakítása) 36 / 52 2NF-ban lévő táblázataink (relációk) ALKALMAZOTT(Szerv,Sznév,Főnök,Azon,Vnév,Knév,Végz) elsődleges kulcs: (AZON) MUNKA(Azon,Pkód,M%) elsődleges kulcs: (AZON,PKÓD) idegen kulcs (AZON) ALKALMAZOTT idegen kulcs (PKÓD) PROJEKTEK PROJEKTEK(Pkód,Pnév) elsődleges kulcs: (PKÓD) Dolgozói nyilvántartás készítése

37 Adatmodellezés (A logikai adatmodell kialakítása) 37 / 52 Az előző szétbontás teljes mivel összes olyan információt tartalmazza, ami az eredeti relációban benne volt. Sőt Az anomáliák egy része is megszűnt. Dolgozói nyilvántartás készítése

38 Adatmodellezés (A logikai adatmodell kialakítása) 38 / 52 Harmadik normálforma (3NF) ALKALMAZOTT-2NF reláció még redundáns (FŐNÖK) törlési anomáliát tartalmaz (Kiss László kilépésével az Eladás részleg információi megszűnnek) új osztályt dolgozó nélkül nem tudunk felvenni Egyetlen nem elsődleges kulcstól való funkcionális függőség a szervezeti egység kódjából indul ki. Dolgozói nyilvántartás készítése

39 Adatmodellezés (A logikai adatmodell kialakítása) 39 / 52 Harmadik normálforma (3NF) Egy reláció akkor és csak akkor van 3NF-ben, ha 2NF-ban van és elsődleges kulcshoz nem tartozó attribútumai csak az elsődleges kulcstól függnek funkcionálisan. Az ALKALMAZOTT-2NF reláció nincs 3NF-ben szétbontás Dolgozói nyilvántartás készítése

40 Adatmodellezés (A logikai adatmodell kialakítása) 40 / 52 ALKALMAZOTT(Szerv,Sznév,Főnök,Azon,Vnév,Knév,Végz) elsődleges kulcs: (AZON) Szétbontás: ALKALMAZOTT(Szerv,Azon,Vnév,Knév,Végz) elsődleges kulcs: (AZON) Ú j rel á ci ó : SZERVEZET(Szerv,Sznév,Fınök) elsődleges kulcs: (SZERV) Dolgozói nyilvántartás készítése

41 Adatmodellezés (A logikai adatmodell kialakítása) 41 / 52 Most már minden reláció 3NF-ban van Dolgozói nyilvántartás készítése ALKALMAZOTT(Szerv,Azon,Vnév,Knév,Végz) elsődleges kulcs: (AZON) idegen kulcs: (SZERV) → SZERVEZET SZERVEZET(Szerv,Sznév,Főnök) elsődleges kulcs: (SZERV) idegen kulcs: (FŐNÖK) → ALKALMAZOTT MUNKA(Azon,Pkód,M%) elsődleges kulcs: (AZON,PKÓD) idegen kulcs (AZON) → ALKALMAZOTT idegen kulcs (PKÓD) → PROJEKTEK PROJEKTEK(Pkód,Pnév) elsődleges kulcs: (PKÓD)

42 Adatmodellezés (A logikai adatmodell kialakítása) 42 / 52 NNF:nem normál forma 1NF:az egyed nem tartalmaz ismétlődő értékű attribútumokat 2NF:valamennyi attribútum a kulcs egészétől függ (összetett kulcs esetén) 3NF:nincs olyan attribútum, amely az egyed másik, nem kulcs attribútumától függ Normalizáció menete

43 Adatmodellezés (A logikai adatmodell kialakítása) 43 / 52 adatbázis generálás forrása Entity Relationship diagram → Szerver modell leképzés táblák SQL Script (DDL) applikáció generálás forrásai: funkció definíció (riport vagy képernyő) funkció - egyed használat funkció - attribútum használat Logikai modellezés

44 Adatmodellezés (A logikai adatmodell kialakítása) 44 / 52 Egyed attribútumai

45 Adatmodellezés (A logikai adatmodell kialakítása) 45 / 52 ADATMODELL Különböző típusú adatokat, a közöttük fennálló kapcsolatokat, összefüggéseket, a velük kapcsolatos adatvédelmi eljárásokat tartalmazza. Az Entity-Relationship modell

46 Adatmodellezés (A logikai adatmodell kialakítása) 46 / 52 Az eddig megismert relációs adatmodell a valós világ mind teljesebb tükrözése szempontjából túlegyszerűsített, mind az attribútumok, mind a kapcsolatok leírása korlátozott. Új felhasználói igények jelentek meg: kifejezőbb, hierarchikus adatszerkezeteket követelnek az új alkalmazások (CAD, CASE, irodaautomatizálási rendszerek, stb.) a hagyományostól eltérő multimédia adatok - kép, hang, szöveg - tárolását kívánják meg a multimédia rendszerek. Stb. … Az Entity-Relationship modell

47 Adatmodellezés (A logikai adatmodell kialakítása) 47 / 52 A vázolt problémák és igények új adatmodellek kidolgozását igényelték. A megvalósítást lehetővé tette: a számítástechnikai környezet változása, a számítógépek teljesítmény-növekedése, az objektum-orientált felfogás megjelenése. Az Entity-Relationship modell

48 Adatmodellezés (A logikai adatmodell kialakítása) 48 / 52 Az objektum-orientált koncepció megjelenéséig a kidolgozott új modellek a relációs modellre épültek. Az adatok tárolását a relációs modellek megfelelően biztosítják, de valamilyen módon a relációs modellt kiterjesztették. Egy-egy modell több kiterjesztést is megvalósíthat. Az Entity-Relationship modell

49 Adatmodellezés (A logikai adatmodell kialakítása) 49 / 52 A modellek osztályozása Szemantikus – koncepcionális adatmodell Funkcionális - az egyedeket, az attribútumokat, a kapcsolatokat és az eljárásokat függvényekkel írja le. Adattárolás táblázatokban. Kiterjesztett relációs - attribútumai összetett adattípusúak, elsődleges kulcs helyett egy módosítástól független azonosítót használ. Objektum-orientált modellek - OOP környezetben az eljárás az objektum szerves része, adat és eljárás nem válik szét. Az Entity-Relationship modell

50 Adatmodellezés (A logikai adatmodell kialakítása) 50 / 52 E-R (Entity Relationship) modell: a legismertebb szemantikus modell Az E-R modell az adatmodellezés során kiváló segédeszköz a relációs modellezésnél (a normalizálási eljárást egészíti ki), az objektum orientált adatmodell kialakításánál. Az Entity-Relationship modell

51 Adatmodellezés (A logikai adatmodell kialakítása) 51 / 52 Logikai adatmodellezés néven az Entity-Relationship modell épült be a rendszerfejlesztés, adatmodellezés módszertanába. Az Entity-Relationship modell

52 Adatmodellezés (A logikai adatmodell kialakítása) 52 / 52 Köszönöm a figyelmet!


Letölteni ppt "Adatmodellezés (A logikai adatmodell kialakítása) 1 / 52."

Hasonló előadás


Google Hirdetések