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 / 46.

Hasonló előadás


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

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

2 Adatmodellezés (A logikai adatmodell kialakítása) 2 / 46 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 / 46 Adatbázis tervezés lépései 1. Követelmény analízis, feladat specifikáció 2. Adatbázis-kezelő rendszer (DBMS) kiválasztása 3. Adatmodellezés a. Szemantikai adatmodell elkészítése b. A szemantikai adatmodell konverziója a megfelelő adatbázis adatmodellre c. Normalizálás d. Az adatbázisban tárolt adatok típusának, integritási feltételeinek meghatározása 4. Kódolás, implementálás

4 Adatmodellezés (A logikai adatmodell kialakítása) 4 / 46 A valós világ modellezése VALÓS VILÁG ADATMODELL

5 Adatmodellezés (A logikai adatmodell kialakítása) 5 / 46 Valós világ (ez található a természetben) Elméleti modell (kiválasztjuk, hogy mi érdekel minket: entitások tulajdonságai) Logikai modell (meghatározzuk a minket érdeklő dolgok számítógépi leírását: táblák szerkezete) Fizikai modell (a valódi dolgok számítógépi megfelelőit feltöltjük a természetben található jellemzőikkel: táblák feltöltése adatokkal) A valós világ modellezése

6 Adatmodellezés (A logikai adatmodell kialakítása) 6 / 46 A valós világ modellezése

7 Adatmodellezés (A logikai adatmodell kialakítása) 7 / 46 A valós világ modellezése ANSI-SPARC adatbázis modell

8 Adatmodellezés (A logikai adatmodell kialakítása) 8 / 46 Azt az eljárást, mely során a valós világ (egy részének) tényeit és az összefüggéseit tükröző adatok lényeges dolgait kiemeljük, adatmodellezésnek hívjuk. A modellezés eredménye az adatmodell. Adatmodell: azon formalizmus, melynek segítségével megadhatók a vizsgált problémakör adatelemeinek szerkezete, viselkedése. Séma: az adatmodell felhasználásával létrehozott adatszerkezet Adatmodell

9 Adatmodellezés (A logikai adatmodell kialakítása) 9 / 46 Adatmodellek típusai szemantikai adatmodellek: emberközeli, lényeget emelik ki, pontatlan adatbázis adatmodellek: gépközeli, megadja a részleteket, teljes absztrakciós szint szerint az egyes szinteken több különböző eszközkészletű modell él

10 Adatmodellezés (A logikai adatmodell kialakítása) 10 / 46 Adatmodellek típusai szemantikai adatmodellek: emberközeli, lényeget emelik ki, pontatlan adatbázis adatmodellek: gépközeli, megadja a részleteket, teljes absztrakciós szint szerint az egyes szinteken több különböző eszközkészletű modell él

11 Adatmodellezés (A logikai adatmodell kialakítása) 11 / 46 Adatmodellek típusai -szemantikai:ER,EER, IFO, UML, … - adatbázis szintű: hierarchikus, hálós, relációs, OODB, … idő ER Entity-relationship model 1976 EEREnhanced Entity-Relationship Model 1980 IFO 1987 UML Unified Modeling Language 1996 Hierarchikus: Created by IBM in the 1960s Hálós:Charles Bachman (standard specification published in 1969) Relációs: Edgar F. Codd,1969 OODB:object-oriented database: first appeared around 1985

12 Adatmodellezés (A logikai adatmodell kialakítása) 12 / 46 Hierarchikus adatmodell Az 1970-es évek végéig számított elterjedtnek. Az adatok között fennálló kapcsolat szülő-gyermek (1:N) kapcsolatnak felel meg. Fa struktúrával szemléltethető Hátránya:- nem ábrázolhatók benne közvetlenül N:M típusú kapcsolatok - adatok elérése csak a hierarchiának megfelelő sorrendben történhet. Térbeli és sík alakzatok grafikus adatainak leírásához ma is használjuk!

13 Adatmodellezés (A logikai adatmodell kialakítása) 13 / 46 Hálós adatmodell Az 1970-es évek elején terjedt el. Az adatok közötti kapcsolatokat gráfok írják le. A gráf csomópontok és ezeket összekötő élek együttese. Két csomópont között akkor van kapcsolat, ha él köti őket össze. Egy csomópontból tetszőleges él indulhat ki. Könnyen ábrázolhatók az N:M típusú kapcsolatok

14 Adatmodellezés (A logikai adatmodell kialakítása) 14 / 46 Napjaink legelterjedtebb adatbázismodellje as években kezdte meg térhódítását. Halmazelméleti alapokra épülő modell. A „Reláció” egy táblázat, annak összes tartalmával együtt. Minden reláció egyedi nevet kap. Az oszlopokban a Reláció tulajdonságai találhatók. Az oszlopok egy táblán belül egyedi nevet kapnak. Sorai a logikailag összetartozó adatokat tartalmaznak. Reláció=tábla, Sor=rekord, Oszlop=attribútum A rekordok sorrendje tetszőleges lehet, de egy tábla nem tartalmazhat két azonos adatokkal feltöltött rekordot. Képes ábrázolni 1:1, 1:N és M:N kapcsolatot. Relációs adatmodell

15 Adatmodellezés (A logikai adatmodell kialakítása) 15 / 46 Relációs adatmodell

16 Adatmodellezés (A logikai adatmodell kialakítása) 16 / 46 OOObject-oriented SDMSemantic Data Model RDBMSRelational Database Management System OODBMSObject Oriented Database Management System Objektumorientált adatmodell

17 Adatmodellezés (A logikai adatmodell kialakítása) 17 / 46 Az objektumorientált adatmodell az objektumorientált programozás módszertanának egy része. Olyan adatbázis, amely intelligens elemekből épül fel. Az intelligencia itt azt jelenti, hogy az egyes adatbázis elemek (objektumok) „tudják”, hogy kik ők, mire használhatók, s miként kapcsolódnak a többi adatbázis-elemhez. Az objektumorientált adatbázisok az objektumorientált programozási nyelvek térhódításával terjedtek el. Hatékonyságukban jelenleg még alulmaradnak a relációs adatbázisokkal szemben. Objektumorientált adatmodell

18 Adatmodellezés (A logikai adatmodell kialakítása) 18 / 46 Fő jellemzői: becsomagolás (encapsulation): az objektum adatok és műveletek összessége öröklődés (inheritance): az alacsonyabb szinteken lévő objektumokból (szülő) levezetett magasabbszintű objektumok (gyerek) öröklik a szülők tulajdonságait és metódusait. többalakúság (polymorphism): ugyanazt az utasítást az egyes objektumok saját előírásaiknak megfelelően értelmezik. Objektumorientált adatmodell

19 Adatmodellezés (A logikai adatmodell kialakítása) 19 / 46 Objektumorientált adatmodell KERÉKPÁR tulajdonos típus mozog objektum neve attribútumok metódusok (KERÉKPÁR) Tóth Tamás kemping (KERÉKPÁR) Péter István mountain bike Előfordulás Becsomagolás (encapsulation) Osztály

20 Adatmodellezés (A logikai adatmodell kialakítása) 20 / 46 Objektumorientált adatmodell KERÉKPÁR tulajdonos típus mozog Öröklődés (inheritance): KISMOTOR tulajdonos típus hajtóanyag mozog pöfög ClassSubclass

21 Adatmodellezés (A logikai adatmodell kialakítása) 21 / 46 Többalakúság (polimorfizmus) Ugyanazt a műveletet a hierarchia különböző szintjein más-más konkrét tartalommal végezhető el. Például másként mozog egy kerékpár, mint egy kismotor. Ami közös: mindegyik mozog. A művelet külső formája (az alprogram neve és paraméterei) azonos, de a tartalom (algoritmus és kód) más. Objektumorientált adatmodell

22 Adatmodellezés (A logikai adatmodell kialakítása) 22 / 46 egyszerűsített szemantikai adatmodell 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 ER - Egyed-Kapcsolat modell

23 Adatmodellezés (A logikai adatmodell kialakítása) 23 / 46 Egyedtípusokból, a köztük levő kapcsolatokból és az egyes egyedtípusokhoz tartozó attribútumokból épül fel. A feladat az igényeket figyelembe véve, az egyedtípusok kialakítása és megfelelő attribútumokkal való ellátása, valamint a köztük levő kapcsolatok pontos feltérképezése. Ez alapján már fel lehet rajzolni az ER-sémát ( Egyed- Kapcsolat séma) ER - Egyed-Kapcsolat modell

24 Adatmodellezés (A logikai adatmodell kialakítása) 24 / 46 Modellezés menete ER-ben ER - Egyed-Kapcsolat modell

25 Adatmodellezés (A logikai adatmodell kialakítása) 25 / 46 Többfajta jelölésrendszer van használatban! Egyed (téglalap) Egyed típusok: 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 ER - Egyed-Kapcsolat modell

26 Adatmodellezés (A logikai adatmodell kialakítása) 26 / 46 Tulajdonság (ellipszis) Tulajdonság típusok: normál: egyértékű ember.szülidő kulcs: azonosító szerepű ember.TAJszám összetett: több tagból áll ember.lakcim(irsz,varos) többértékű: több értéke is lehet ember.hobbi származtatott: értéke kiszámítható ember.életkor ER - Egyed-Kapcsolat modell

27 Adatmodellezés (A logikai adatmodell kialakítása) 27 / 46 Kapcsolatok (rombusz) ember dolgozójamunkahely Meghatározó kapcsolat (duplavonalas rombusz) Gyenge entitást határoz meg macska kiétulajdonos ER - Egyed-Kapcsolat modell k k

28 Adatmodellezés (A logikai adatmodell kialakítása) 28 / 46 ER - Egyed-Kapcsolat modell Példa meghatározó kapcsolatra

29 Adatmodellezés (A logikai adatmodell kialakítása) 29 / 46 ER - Egyed-Kapcsolat modell Kapcsolatok típusai (számosság szerint) a). Két egyed közötti (bináris) 1:1 kapcsolat, amikor minden A-egyedhez csak legfeljebb egy B-egyed tartozhat, és fordítva. 1:N kapcsolat, amikor egy A-egyedhez több B-egyed tartozhat, de ez fordítva nem igaz, vagyis egy B-egyedhez csak legfeljebb egy A-egyed tartozhat. N:M kapcsolat, amikor mindkét egyedhez tetszőleges számú másik egyed tartozhat. b). Kettőnél több egyed közötti (sokágú) kapcsolat. Ez a típus ritkábban lép fel, szükség esetén visszavezethető bináris kapcsolatokra.

30 Adatmodellezés (A logikai adatmodell kialakítása) 30 / 46 ER - Egyed-Kapcsolat modell Jelölés nyíllal (A nyíl az 1-et jelöli) és felirattal 1:11:NN:M kapcsolat

31 Adatmodellezés (A logikai adatmodell kialakítása) 31 / 46 ER - Egyed-Kapcsolat modell Jelölés varjúlábbal (1:N) 1:NN:M kapcsolat Hol van? TelepülésMegye Kapcsolat jelölése csak szöveggel

32 Adatmodellezés (A logikai adatmodell kialakítása) 32 / 46 ER - Egyed-Kapcsolat modell Könyvtár példa

33 Adatmodellezés (A logikai adatmodell kialakítása) 33 / 46 ER - Egyed-Kapcsolat modell Ha a 0 előfordulást is jelölni kell! kör jelenti a 0-t (néha 1 függőleges vonal) varjúláb jelenti a sokat 1 függőleges vonal jelenti az 1-et (néha 2 függőleges vonal) Ezek kombinációi adják meg az összes esetet. Pl.: Zéró, vagy több az egyhez (egy olvasó nem minden könyvet kölcsönöz ki) Könyv Olvasó

34 Adatmodellezés (A logikai adatmodell kialakítása) 34 / 46 ER - Egyed-Kapcsolat modell A színész, film, stúdió példa

35 Adatmodellezés (A logikai adatmodell kialakítása) 35 / 46 ER - Egyed-Kapcsolat modell Példa sokágú kapcsolatra Sokágú kapcsolat helyettesítése gyenge egyeddel és bináris kapcsolatokkal

36 Adatmodellezés (A logikai adatmodell kialakítása) 36 / 46 ER - Egyed-Kapcsolat modell Hierarchikus felépítésű intézmény szervezeti egységeinek Modellezése (valójában 1:N kapcsolat)

37 Adatmodellezés (A logikai adatmodell kialakítása) 37 / 46 ER - Egyed-Kapcsolat modell Kapcsolatok típusai (kötelező jelleg szerint) opcionális: létezhet olyan egyedelőfordulás, melyhez nem kapcsolódik egyedelőfordulás a kapcsolatban (jelölése: egyvonalas nyíl; pl. nem minden könyvet kölcsönöznek ki a könyvtárból) kötelező: minden egyedelőforduláshoz kell kapcsolódnia egyedelőfordulásnak a kapcsolatban (jelölése: kétvonalas nyíl, pl.: minden könyvnek van kiadója)

38 Adatmodellezés (A logikai adatmodell kialakítása) 38 / 46 ER - Egyed-Kapcsolat modell Beirat- kozott Könyvtár KönyvKiadó Olvasó Szerző Írta PéldányKiadta

39 Adatmodellezés (A logikai adatmodell kialakítása) 39 / 46 ER - Egyed-Kapcsolat modell Specializáló kapcsolat (háromszög): Hierarchiát, öröklődést valósítanak meg egyedek között

40 Adatmodellezés (A logikai adatmodell kialakítása) 40 / 46 ER - Egyed-Kapcsolat modell Példa Specializáló kapcsolatra Memória Számítógép Processzor PC Laptop Monitor méret Gépház méret

41 Adatmodellezés (A logikai adatmodell kialakítása) 41 / 46 A rugalmasság ellenére, számos esetben nem lehet egzaktul megoldani az adatrendszer leírását. Problémát jelent a specializációk, általánosítások, tartalmazási relációk ábrázolása, hiszen az ER csak az asszociációt ismeri. Az Entity-Relationship modell ember autó jármű motor Asszociáció i deiglenes s zimmetrikus laza Tartalmazás szoros kapcsolat nem szimmetrikus állandósult Specializáció állandósult nem szimmetrikus fogalmi szinten él csak Az egyfajta jelölési mód elmossa a különbségeket !

42 Adatmodellezés (A logikai adatmodell kialakítása) 42 / 46 Az ER modell kibővítése a specializáció és a tartalmazás kapcsolat elemekkel. (Enhanced Entity-Relationship Model – EER) A kiterjesztett ER modell ember autó jármű motor Asszociáció i deiglenes s zimmetrikus laza Tartalmazás szoros kapcsolat nem szimmetrikus állandósult Specializáció állandósult nem szimmetrikus fogalmi szinten él csak A tartalmi különbség megmutatkozik a formában is. HAS_A IS_A the car is a vehicle the car has an engine

43 Adatmodellezés (A logikai adatmodell kialakítása) 43 / 46 Könyvtár példa KönyvleírásPéldányadatok Könyvkód ISB N Szerz ő Kiadó Cí m KiadásiÉv Állap ot Példány a M Törzsszá m Vonalkód Lelőhely Kölcsönözhet ő Nyelv Szak Kölcsönzők Kölcsönzé s 0..M 0..1 Leltárszá m Név fényké p Cutter BeiratkÉ v Kölcsönözhet Letiltva Datumig DátumHatáridő Visszahozv a

44 Adatmodellezés (A logikai adatmodell kialakítása) 44 / 46 Könyvtár példa Megvalósítás ACCESS-ben

45 Adatmodellezés (A logikai adatmodell kialakítása) 45 / 46 Könyvtár példa Megvalósítás OpenOffice Base-ben

46 Adatmodellezés (A logikai adatmodell kialakítása) 46 / 46 Könyvtár példa Megvalósítás MySQL Workbenchben

47 Adatmodellezés (A logikai adatmodell kialakítása) 47 / 46 Példák: EK modell → táblák Az alábbi link az EK modell → adatbázis átalakítására ad példát:

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


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

Hasonló előadás


Google Hirdetések