1.26k likes | 1.52k Views
Adatbázis-kezelés. Haladó (?). Adatfeldolgozás (?). Az adatfeldolgozás egyik módszere, hogy az adott nyilvántartási feladatot egy erre alkalmas programozási nyelv alatti adatstruktúrában tároljuk. Funkció- vagy programorientált adatfeldolgozás. Jellemzői. Több file-al dolgozik a program
E N D
Adatbázis-kezelés Haladó (?)
Adatfeldolgozás (?) • Az adatfeldolgozás egyik módszere, hogy az adott nyilvántartási feladatot egy erre alkalmas programozási nyelv alatti adatstruktúrában tároljuk. • Funkció- vagy programorientált adatfeldolgozás
Jellemzői • Több file-al dolgozik a program • Egy file-t több prg. is kezelhet • Ezek a progik függetlenek egymástól • A funkciók megvalósítását programokhoz rendelik • …
Miért van szükség AB-kezelőkre • Hagyományos adatkezelés hátrányai: • Redundancia • Inkonzisztencia (ellentmondás) • Nem rugalmas, nem párbeszédes • Sok a karbantartás • Feldolgozási vagy programozási többlet • Alacsony adatvédelem • Konkrét (kötött) file-rendszer • Adatbázis szemlélet, ABKR
Adatbázis szemlélet • Az adatokat erőforrásoknak tekintjük • EF-ok jellemzői: • Pénz, idő • Általában kevés • Fontos a hatékony kihasználás
Az adatbázis-kezelés nem más, mint az adatokkal, mint erőforrásokkal történő gazdálkodás. • Az ABKR mint szoftver, ennek az erőforrásgazdálkodásnak egyfajta automatizált eszköze.
Adatbázis rendszer (ABR/DBS) • DBS – Data Base System: • Adatbázis (DB – Database) • AB-kezelő rendszer (DBMS – Data Base Management System) • AB-adminisztrátor(DBA – Data Base Administrator) • Felhasználói környezet
Adatbázis meghatározások • Nagy mennyiségű, összetartozó adat halmaza • Adatoknak és a köztük lévő kapcsolatoknak a rendszere • Különböző típusú, de tartalmilag összefüggő, egymás rekordjaira hivatkozó bonyolult adatstruktúra, struktúrált file-rendszer
Adatbázis • Integrált: több felhasználó és/vagy több felhasználás adatait tárolja együtt • Osztott: az AB-hoz több felhasználó férhet hozzá • AB fizikai felépítése: AB-file-ok + adatszótár(CDD – Common Data Dictionary)
DBMS • Professzionális szintű szoftver • Adatorientált adatszervezés • Adatkezelési feladatok: • AB létrehozása • Adatok visszakeresése • Adatfelvitel • Adatok törlése, módosítása • Rendezés • Űrlapgenerálás • jelentéskészítés
Adatok közötti komplex kapcsolatok létrehozása • Többféle hozzáférési mód • Szinkronizáció • Adatok védelme • Adatok integritása • Helyreállíthatóság • Adatfüggetlenség • Eszközfüggetlenség
Követelmények • Tároló eszköztől való függetlenség • Felhasználói programtól való függetlenség • Többféle hozzáférési mód • Többen is használhassák egyszerre • Gépi hatékonyság • Gyors válaszidők • EF optimális kihasználása
Folytatás…. • Könnyű legyen használni • Adatvédelem, titkosság • Megbízható, naprakész adatok • Rugalmas • Kevés redundancia • Konzisztencia biztosítása
DBMS komponensei • DDL (Data Definition Language – adatdefiníciós nyelv) • DML (Data Manipulation Language – adatmanipulációs nyelv) • DCL (Data Control Language – adatvezérlő, felügyelő nyelv) • QL (Query Language – lekérdező nyelv) • Forms • Report
DBA feladatai • AB megszervezése • Adatmodell kialakítása • Objektumok definiálása • Keresési stratégiák megválasztása (index) • Jogosultságok adása, szabályozása • Szoftverkomponensek kezelése • Karbantartás, konzisztencia biztosítása
DBS (ABR) architektúra • Külső szint: ahogy az egyes felhasználók látják az AB-t • Koncepcionális szint: objektumok szerkezete, kapcsolatok rendszere, hozzáférések • Belső szint: fizikai tárolás és elérés módja • Fontos az adatfüggetlenség
Az adatfüggetlenségről • Logikai adatfüggetlenség • Fizikai adatfüggetlenség • Teljes adatfüggetlenség
Adatmodellezés • 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.
VALÓS VILÁG ADATMODELL
Adatfeldolgozási probléma megoldása • Mi a modellezés célja? (specifikáció) • Megtervezzük a rendszer alapját képező adatmodellt (logikai AM) • A modell megvalósítása egy konkrét ABKR-ben (fizikai AM) • Modell tesztelése • Dokumentálás • Használat, karbantartás, követés
Adatmodellek • Leképezés eredménye • Adatok típusai, előfordulása • Egyedek, tulajdonságok, kapcsolatok halmaza • Szintjei: • Külső • Koncepcionális • Belső – fizikai
Adatmodellezési módszerek • Hierarchikus • Hálós • Relációs • Objektumorientált
Alapelemek és elnevezések EGYED(RELÁCIÓ)NÉV OSZLOPOK Mezőnevek EGYEDTULAJDONSÁGOK (attributum) SZEMÉLY KULCS Rekord Értékek (Mezők) A sárga sor Egyedhalmaz
Egyedtípus (entitás): minden olyan objektum, ami minden más objektumtól megkülönböztethető, amiről adatokat tárolunk, és amit tulajdonságaival kívánunk leírni.Pl. könyv, olvasó, személy
Tulajdonságtípus (attribútum):az egyedek jellemző jegyeiKULCS: egyértelműen azonosítja az egyedtípus előfordulásátPl. ISBN, Tagsági szám, Személyi számGyenge egyedtípus:pl. szülő-gyerek
Kapcsolattípus: az egyedek logikai viszonya, összefüggéseLehet teljes és parciális.Típusai: • Nincs kapcsolat • 1:1 • 1:N • N-M • N-ágú
ER (Entity Relationship) • Egyed kapcsolat modell • Magas szintű, logikai modell • Egyedtípusokból, a köztük lévő kapcsolatokból, és az attribútumokból épül fel. • Modellezéskor a tervező dönti el, hogy mit akar tulajdonságokkal és mit új egyedekkel leírni.
Komponensei • Egyedtípus és a gyenge egyedtípus ábrázolása: • Attribútumok ábrázolása:
Hierarchikus modell • Az adatokat fa szerkezetben kell elrendezni • A fa csomópontjaiban és leveleiben helyezkednek el az adatok. • A közöttük levő kapcsolat szülő - gyermek kapcsolatnak felel meg. • Így csak 1:1 és 1:N típusú kapcsolatok képezhetők le segítségével. • Ilyen például az iskola és osztály, vagy akár az osztály és tanuló kapcsolat.
Hálós adatmodell • A kapcsolat egy gráffal írható le. • A gráf csomópontok és ezeket összekötő élek rendszere, melyben tetszőleges két csomópont között akkor van adatkapcsolat, ha őket él köti össze egymással. • Egy csomópontból tetszőleges számú él indulhat ki, de egy él csak két csomópontot köthet össze. • Ebben a modellben N:M kapcsolat is megoldható. Pl. tanárok – diákok, vevő – rendeléstulajdonos - autó
Relációs adatmodell 1. • Emberi oldalról közelít a problémához • Az AB-ok logikai szerkezetének a leírására alkalmas eszköz • A relációs modell előnyei a következők: • Ezt az adatszerkezetet egyszerűen értelmezheti a felhasználó is. • A logikai adatmodell relációi egy relációs adat-báziskezelő rendszerbe módosítások nélkül átvihetők. • A relációs modellben az adatbázis tervezés a normál formák bevezetésével egzakt módon elvégezhető.
A reláció matematikai fogalma • Definíció:Legyenek D1, D2, … , Dn halmazok. Az RD1D2…Dn halmazt, ami megfelel egy táblának, relációnak nevezzük. (Mezőhalmazok Descartes szorzatának részhalmaza). • Az így értelmezett reláció egy táblázat. Ha pl. a relációnak m eleme van (d1j,…,dnj), ahol j=1,2,…,m, akkor a táblázat az alábbi lehet. • Ki kell elégítenie az ALÁBBI ELŐÍRÁSOKAT: • Az egyes relációk egyedi névvel rendelkeznek. • A relációk oszlopaiban azonos mennyiségre vonatkozó adatok jelennek meg. • Az oszlopok névvel rendelkeznek (mezőnév), melyeknek a reláción belül egyediek. • A reláció soraiban a logikailag összetartozó adatok kerülnek tárolásra. • A reláció sorainak sorrendje közömbös, de nem tartalmazhat két azonos adatokkal kitöltött sort. • Egy sor és oszlop metszésében található táblázat elemet mezőnek nevezzük. A mezők tartalmazzák az adatokat. • A mezőkben oszloponként különböző típusú (numerikus, szöveges stb..) mennyiségek tárolhatók.
A relációktól általában megköveteljük, hogy ne tartalmazzanak más adatokból levezethető vagy kiszámítható információkat. • Például a fenti táblán az érték kiszámítható a rendelkezésre álló adatokból. • Hasonlóképpen a személyi szám mellett nincs értelme külön a születési dátumot nyilvántartani..
Relációs adatmodell 2. • Az adatokat táblázatok soraiban képezzük le. • Összefoglalva a reláció nem más mint egy táblázat, a táblázat soraiban tárolt adatokkal együtt. • A relációs adatbázis pedig relációk összessége. • A reláció helyett sokszor a tábla vagy táblázat, a sor helyett a rekord, az oszlop helyett pedig az attribútum elnevezés is használatos. • Relációk elemei: Sor, Oszlop, Mező
A relációs adatmodellezés alapfogalmai • E.F.Codd, 1970 • Egyed, tulajdonság, kapcsolat • Reláció, rekord • Kulcs • Anomáliák • Redundancia • Funkcionális függőség • Normál formák
Anomáliák: • Bővítési • Módosítási • Törlési
Normalizálás • Cél: • Redundáns adattárolás minimalizálása • Anomáliák megszüntetése • Hogyan? • Egymást követő, ún. normál formák kialakításával • Minden relációval el kell végezni
Normalizálatlan forma Tetszőleges adatstruktúra -> mátrix 1NF Kulcstól való függőségek eltávolítása 2NF Tranzitív függőségek eltávolítása 3NF
normalizálatlan 1NF 2NF 3NF
Talán egy érthető (?) példa • Üzlet napi forgalmát tartjuk nyilván
NAPI_HELYZET(Dátum, Árukód, Árúnév,Ár, Darab,Befizetés) BEFIZETÉS DÁTUM ÖSSZES DARAB ÁRUKÓD ÁRUNÉV ÁR