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

Dr. Krauszné Princz Mária Adatbázis rendszerek I..

Hasonló előadás


Az előadások a következő témára: "Dr. Krauszné Princz Mária Adatbázis rendszerek I.."— Előadás másolata:

1 Dr. Krauszné Princz Mária Adatbázis rendszerek I.

2 Adatbázisok  Adatbázis: adatok gyűjteménye, amelyeket az adatbázis-kezelő rendszer (DBMS –Database Management System) kezel.  Kezelt adatrendszer →adatbázis  Kezelő programrendszer →adatbázis kezelő

3 Az adatbázis-kezelő rendszerrel szembeni elvárások:  Új adatbázisok létrehozása – adatdefiníciós nyelv segítségével. (DDL)  Meglévő adatok lekérdezése, módosítása – lekérdező v. adatmanipulációs nyelv segítségével. (SQL)  Támogassa az adatok hosszú időn át történő biztonságos tárolását.  Felügyelje a több felhasználó egy időben történő adathozzáférését

4 Az adatbázisrendszerek felépítése

5 Az adatbázisrendszerek felépítése II. Adatbázis-kezelő segédprogramok feladatai:  az adatbázis indítása, leállítása  az adatbázis alapparamétereinek beállítása  az adatmentések elvégzése  DBMS hatékonyság és a felhasználói tevékenységek figyelése, stb. Az alkalmazás- és adatbázisfejlesztő, programozó felhasználók segédprogramjai  Interaktív kezelő felület A kiadott utasítások rögtön végrehajtásra kerülnek, s csak az eredmény kiírása után adható meg a következő utasítás.  Űrlapkészítő (Forms) űrlap megtervezésére szolgál,  Jelentéskészítő Mivel az adatoknak a képernyőn, űrlapokban történő megjelenítése mellett, gyakran szükség van a nyomtatott listákra is, ezért külön komponens szolgál a nyomtatási listák gyors elkészítésére.  Menükészítő A részfunkciókat az áttekinthetőség és gyors elérhetőség végett menühierarchiába szervezik.

6 Adatbáziskezelő rendszerek felépítése

7  3 fajta input:  Lekérdezések – az adatokra vonatkozó kérések  Módosítások – adatok módosítása  Sémamódosítások –az adatbázis szerkezetét lehet megváltoztatni  Tárkezelő – a kért információ beolvasása a tárolóhelyről  Lekérdezés-feldolgozó – a lekérdezéseket egyszerű utasítások sorozatává alakítja  Tranzakciókezelő – a taranzakciók hibátlan futásának a biztosítása

8 Tranzakciókkal szembeni elvárások  Atomosság  Következetesség  Elkülönítés  Tartósság

9 Az adatbiztonság  Integritási kényszerek Az integritási kényszerek azon szabályok, amelyeket az adatbázisnak rendszerint figyelembe kell vennie. (Pl.: az attribútum-értékek előírt határértékek között vannak; az objektumok közötti relációk nem lehetnek ellentétben egymással; hivatkozási integritás, stb.)  Tranzakciók Minden, a felhasználó által meghatározott változtatás és újradefiniálás mindaddig ideiglenes, míg nincs ellenőrizve. Az adatbázis csak a tranzakció végével változtatható meg. Zárolás Naplózás

10 Adatkezelés  Befogadó nyelvek segítségével. Pl. Cobol, C, Pascal, Clipper, Php  Az adatbázis-kezelők önálló nyelvek. Pl.dBase (dinamikus SQL)

11 Adatbázis architektúrák  Centralizált adatkezelés Egy számítógépen történik az adatok tárolása, feldolgozása  Kliens-szerver adatbázis architektúrák A szerveren hozzáférési jogokkal karbantartási műveletek valósíthatók meg.  Elosztott adatbázis rendszerek A logikailag egységes, fizikailag azonban különböző - egymással összekapcsolt - számítógép rendszereken megvalósított adatbázist osztott adatbázisnak nevezünk (a távolság nem számít). A feladatok megosztása a nagygép tehermentesítése céljából történik.

12 Adatmodellezés Adatmodellek az az adatbázisok szerkezetének leírására szolgálnak. Egyedek, tulajdonságok, kapcsolatok halmaza, amely absztrakt módon tükrözi a valós objektumoknak, azok tulajdonságainak és kapcsolatainak elvont kategóriáit.

13 Az adatmodellezés szintjei  I. Nézet vagy külső szint: Az egyes felhasználók "rálátása" az adatbázis bizonyos, hozzáférési jogoktól függő részeire  II. Fogalmi vagy logikai szint: Az egész adatbázisra vonatkozó adatmodell (séma - DDL), hozzáférési jogok  III. Fizikai vagy belső szint: Tárolás és elérés módjai: fájlok, indexek, egyéb tárolási szerkezetek.

14 Adatbázisok tervezése - Fogalmi/Logikai szint Objektum fogalmon alapú modellek:  - Egyed-kapcsolat (E/K) modell (grafikus szabvány)  - Objektumorientált modell, ODL (C++ nyelvhez hasonló szabvány az adatstruktúrák leírására) Rekord fogalmon alapuló modellek:  - Relációs modell (normalizálás)  - Hálós modell  - Hierarchikus modell

15 Adatmodellek történeti áttekintése  Hierarchikus adatbázis-kezelő rendszerek  Hálós adatbázis-kezelő rendszerek  Relációs adatbázis-kezelő rendszerek Lekérdezés: SQL (Structured Query Language) Pl. Oracle, Informix, DB2, Dbase, Access. )  Objektumrelációs adatbázis-kezelő rendszerek A relációs adatbázis-kezelő rendszerek kiegészítése OO elemekkel. PL. Oracle 8i, UniSQL, Persistence  Objektumorientált adatbázis-kezelő rendszerek Pl. O2, ObjectStore, Ode, Orion Lekérdezés: OQL (Object Query Language)

16 Hierarchikus adatbázis-kezelő rendszerek Fa szerkezet, 60-as évek vége. Pl.

17 Hálós adatbázis-kezelő rendszerek 70-es évek. A hálós adatmodell szerkezetét gráffal adjuk meg, ebben a csomópontok az egyedek, az élek a kapcsolatok.

18 Relációs adatbáziskezelő rendszerek

19 Relációs adatbázis-kezelő rendszerek  A relációs adatbázis relációk összessége. Az egyes relációkat egyedi névvel látjuk el.  A reláció egymáshoz hasonló egyedek bizonyos tulajdonságait leíró táblázat a táblázat soraiban tárolt adatokkal együtt. A reláció helyett a tábla vagy táblázat, a sor helyett a rekord, az oszlop helyett pedig az attribútum elnevezés is használatos.

20 Strukturált és objektum-orientált megközelítés közötti eltérés: StrukturáltObjektum-orientált Adatszerkezet Vezérlési szerkezet Objektumstruktúra Hagyományosan megírva az adatcsoport kezelése a programban szétszórva történik Adat + művelet együtt.

21 Az E/K adatmodell 1. Egyed Egyednek nevezünk minden olyan dolgot (objektumot), amely minden más egyedtől (objektumtól) jól megkülönböztethető, tulajdonságokkal leírható, és amiről adatokat tárolunk. (Ez a legkisebb egysége az adatbázisnak, amire hivatkozni lehet.) Egyes adatbázis-kezelő rendszerekben az egyedet REKORDnak nevezik. 2. Tulajdonság Az egyedeket tulajdonságokkal, attribútumokkal írjuk le. A tulajdonságok kétfélék: - leíró - kulcs 3. Kapcsolatnak nevezzük az egyedek közötti viszonyt. Kapcsolatok fajtái: 1:1 (egy – egy) 1:N (egy – sok ) N:M (sok – sok

22 Egyed / kapcsolat diagram - az adatmodellezés grafikus megközelítése

23 Egyed / kapcsolat diagram II.

24 Filmek - tábla CímÉvHosszSzalagfajta Meseautó percFekete-fehér Meseautó percSzínes Egri csillagok percSzínes

25 Fogalmak  Sor: logikailag összetartozó adatok – rekord  Oszlop: azonos típusú adatok – attribútum  Mező: sor – oszlop metszete (atomi adatot v. null értéket tartalmazhat – a mező üres)

26 Egyed / kapcsolat diagram III.

27 Azonosítás - kulcsokkal  Kulcs: egyértelműen azonosítja az egyedet az egyedhalmazon belül. Pl. Cím+Év a Film egyedhalmaznál  Ha a kulcs egyetlen attribútumból áll, akkor egyszerű kulcs, egyébként összetett kulcs. Egy reláció esetén megadható több kulcs is, ezek közül azt, amire egy adatfeldolgozási feladat végrehajtásakor szükségünk van és felhasználjuk, elsődleges kulcsnak mondjuk. Az elsődleges kulcson kívül minden egyéb kulcsot másodlagos kulcsnak nevezünk  Idegen kulcs: egy reláció attributuma(i), amely(ek) egy másik relációban elsődleges kulcs(ok).

28 Példa az oszlopok helytelen és helyes elnevezésére

29 A relációs modell saját adatbázis elmélete: Relációk normalizálása.  Adatbázis ideális tulajdonságait ún. normálformákban rögzítjük. Az E/K modell relációkba való átírásakor ezek nem feltétlenül teljesülnek. Azt a folyamatot, amelynek során átalakítjuk az adatbázist a kívánt normálformára, normalizálásnak nevezzük.  Normalizálás lényege: Az adatbázis optimalizáltsága, azaz a változtatási anomáliák (pl. redundanciák) megszüntetése az adatbázisban. (A logikai adatbázis tervezés egyik fő célja.)  A normalizációnak több szintje, típusa létezik.

30 A normalizálás célja A normalizálás célja a hibaforrást jelentő ún. anomáliák minimálisra csökkentése.  Változtatási anomáliának nevezzük a - módosítási, - beírási, - törlési anomáliákat.  Módosítási anomália: Egy attribútum értékének megváltozását több helyen kell kijavítani. Ekkor az adatbázis redundáns, azaz valamely tényt vagy a többi adatból levezethető mennyiséget ismételten (többszörösen) tárolunk az adatbázisban. Ez az adatbázis inkonzisztens állapotához vezethet.  Beírási anomália: Új egyedelőfordulásra vonatkozó információ bevitele nem lehetséges hiányos adatok miatt. Ez információvesztést eredményez.  Törlési anomália: Bizonyos adatok törlésével elvesznek olyan adatok (mivel csak egesz sorokat tudunk törölni), amelyekre továbbra is szükség lenne. Ez is információvesztést eredményez.

31 Redundanciát tartalmazó reláció:

32 Normálformák  A relációs modellben alapvető szerepet játszanak az elsődleges kulcsra épülő függések.  A gyakorlatban az adatbázis kezelő rendszerek felépítése a normálformákon alapszik. A normálformákat sorszámozni szokásos: 1NF (normálforma), 2NF, 3NF, 4NF, 5NF.  Nem normalizált relációsémák nem léteznek. (Nem normálformájú táblázatokat a relációs adatbázis-kezelő rendszerek nem tudnak kezelni.)  Minden relációséma megköveteli a legalább 1NF-t.  A relációs modell legkarakterisztikusabb jellemzője a harmadik normálforma.

33 Rosszul tervezett relációk: Például nincs 1NF-ban a következő tábla, mert egy egyednek több telefonszáma lehet, sőt címe is:

34 Rosszul tervezett relációk: a következők: a következők: Nyíregyházi FőiskolaSóstói u. 31/b Nyíregyházi FőiskolaSóstói u. 31/b Nyíregyházi FőiskolaSóstói u. 31/b Nyíregyházi FőiskolaRákóczi u Nyíregyházi FőiskolaRákóczi u A táblázat redundáns, a tábla több sorában is meg kell ismételni a tulajdonságértékeket. A részleges függés miatti karbantartási anomáliák lépnek fel.

35 1. normál forma  1. normál formában van a séma, ha a mezők függéseinek rendszerében létezik egy kulcs, amelytől minden más mező függ, azaz minden mezője funkcionálisan függ a kulcsmező csoporttól.

36 2. normál forma 2. normál formában van a séma, ha  teljesíti az első normál forma kritériumait és  nincs benne részleges függés, azaz bármely nem kulcs mező a teljes kulcstól függ, de nem függ a kulcs bármely részhalmazától.

37 Példa a második normál forma feltételeit megsértő relációra:

38 Első normál formájú reláció és második normál alakú dekompozíciója:

39 3. normál forma 3. normál formában van a séma, ha teljesíti a második normál forma kritériumait és nem áll fenn tranzitív függőség, azaz a nem kulcs mezők nem függnek egymástól.  A reláció második normál formában van.  A reláció nem tartalmaz funkcionális függőséget a nem elsődleges attribútumok között.

40 Második normál formájú reláció és harmadik normál formájú dekompoziciója:

41 Boyce/Codd normál forma:  Minden elsődleges attribútum teljes funkcionális függőségben van azokkal a kulcsokkal, melyeknek nem része.  Ez a harmadik normál forma egy szigorúbb definiciója.

42  A harmadik normál formáig mindenféleképpen érdemes normalizálni a relációkat. Ez a redundanciák nagy részét kiszűri.  Azok az esetek, melyekben a negyedik illetve az ötödik normál formák alkalmazására van szükség, ritkábban fordulnak elő.

43 Kulcsok és indexelés  Az indexeléssel meggyorsítjuk a táblákban a keresést és a rendezést, a lekérdezéseket és a csoportosításokat, a frissítés ugyanakkor az indexelés időigényével megnő.  Az indexeléssel egy kiválasztott mező szerint logikailag rendezzük az adatbázist, de valójában minden rekord a helyén marad.  A táblák elsődleges kulcsa automatikusan indexelt.

44 Az adatbázisrendszerek tervezési lépései


Letölteni ppt "Dr. Krauszné Princz Mária Adatbázis rendszerek I.."

Hasonló előadás


Google Hirdetések