Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

Adatbázisrendszerek

1. el®adás: Alapfogalmak
Kialakulás, modellezés, a Bachman-féle fogalomrendszer,
adatmodell, adatbázis, tulajdonságok

Ispány Márton

2022. február 07.


A félév tematikája 2

1. el®adás:
Alapfogal-
Adatmodellezés, absztrakció: egyed, tulajdonság, kapcsolat
Adatbázis, adatbázisrendszer, adatbázis-kezel® rendszer
mak

(DBMS)
Ispány
Márton

Adatbázisok
A relációs modell
Adatbázis Absztrakt lekérdez® nyelvek: relációalgebra és
relációkalkulus
szemlélet

Modellezés

Egyed,
Funkcionális függés
Az adatbázistervezés alapjai: normálformák, normalizálás
tulajdonság,
kapcsolat

Bachman
Az egyed-kapcsolat (ER) modell
Adatmodell
és adatbázis A kiterjesztett ER (EER) modell
Tulajdonság- Objektumrelációs adatbázisok
típusok

NULL érték
Tranzakció-, jogosultság- és konkurenciakezelés
Kapcsolatok Adattárházak
osztályozása

NoSQL adatbázisok
Adatbázisok és adatbázis-alkalmazások típusai 3

1. el®adás:
Alapfogal-
mak
Hagyományos alkalmazások:
Ispány
Márton numerikus és szöveges adatbázisok
Adatbázisok
Néhány újabb alkalmazás:
Adatbázis Multimédia adatbázisok
szemlélet
Térinformatikai rendszerek (GIS)
Modellezés
Adattárházak, OLAP rendszerek
Egyed,
tulajdonság,
Valós idej¶ és aktív adatbázisok
kapcsolat WWW skálájú adatbázisok a web használatára
Bachman Sok más alkalmazás
Adatmodell
és adatbázis

Tulajdonság-
Adatbázis technológia: alapvet® hatással volt a számítógépek
típusok
növekv® felhasználására, a legtöbb alkalmazási területen kritikus
NULL érték
szerepet játszik.
Kapcsolatok
osztályozása
Néhány alapfogalom 4

1. el®adás:
Alapfogal-
Adatbázis (naív deníció)
mak

Ispány
1. Egymással logikailag összefügg®, egymáshoz kapcsolódó,
Márton
belsõ jelentéssel bíró adatok összessége (kollekciója, együttese).
Adatbázisok 2. Az adatbázis speciális célra tervezett, felépített és közzétett
Adatbázis adatok együttese.
szemlélet

Modellezés Véletlen adatösszesség nem adatbázis. Van egy célcsoport és


Egyed,
tulajdonság,
el®re elképzelt alkalmazások egy köre.
kapcsolat
Adat
Bachman

Adatmodell Olyan ismert tény, amely számszer¶síthetõ és implicit (magától


és adatbázis
értet®d®) jelentése van.
Tulajdonság-
típusok

NULL érték
Kisvilág
Kapcsolatok
osztályozása
A valós világ egy része, amelyr®l az adatbázis az adatokat
tárolja.
Néhány alapfogalom 5

1. el®adás:
Alapfogal-
Adatbázis-kezel® rendszer (DBMS)
mak

Ispány
Olyan szoftvercsomag/rendszer, amely számítógépes
Márton
adatbázisok létrehozását és karbantartását támogatja.
Adatbázisok

Adatbázis
Adatbázisrendszer
szemlélet
A DBMS szoftver magával az adatokkal együtt. Néha az
Modellezés

Egyed,
alkalmazásokat is beleértjük.
tulajdonság,
kapcsolat
Példák adatbázisokra:
Bachman
Egyetem. Szerepl®k: diákok, oktatók, kurzusok, tanszékek.
Adatmodell
és adatbázis
Funkciók: egy diák felvesz egy kurzust, egy oktató egy
Tulajdonság- tanszékre kerül.
típusok
Helyfoglalási rendszer. Szerepl®k: utasok, járatok,
járm¶vek (buszok, repül®k), sof®rök, utazási irodák.
NULL érték

Kapcsolatok
osztályozása Funkciók: egy utas helyet foglal egy járatra, egy sof®r egy
buszt vezet.
A hagyományos adatkezelés problémái 6

1. el®adás:
Alapfogal-
mak

Ispány
Márton 1 állománykezelés  egyéni megoldások
Adatbázisok 2 gépi hatékonyság
Adatbázis
szemlélet
3 redundancia → inkonzisztencia
Modellezés 4 rugalmas változtatás lehet®ségének hiánya
Egyed,
tulajdonság,
5 adatvédelem hiánya
kapcsolat
sérülés
Bachman jogtalan hozzáférés
Adatmodell
és adatbázis 6 konkurens hozzáférés hiánya
Tulajdonság-
típusok
7 egysíkú hozzáférés
NULL érték

Kapcsolatok
osztályozása
Megjegyzések 7

1. el®adás:
Alapfogal-
1 Minden felhasználó saját deníciókkal és implemen-
mak
tációkkal dolgozik. Ez az alkalmazás részét képezi.
Az egyedi megoldások miatt, a fejleszt®k korlátos tudása
Ispány
Márton 2
miatt, nem a leghatékonyabb algoritmusok épülnek be.
Adatbázisok

Adatbázis
3 Ugyanazon dolgot leíró adat többszöri el®fordulása miatt
szemlélet
lehetséges, hogy az egyik el®fordulás módosul míg a másik
Modellezés
nem. Problémát jelent a módosítások átvezetése, amelyr®l
Egyed,
tulajdonság,
gondoskodni kell.
A változtatások nem gördülnek végig automatikusan. Pl.
kapcsolat
4
Bachman

Adatmodell
névváltoztatás esetén több helyen kell módosítani.
és adatbázis
5 Nem biztosított az automatikus mentés, jogosultság
Tulajdonság-
típusok
kezelés. Problémát jelent a bizalmas információk kezelése
NULL érték
üzleti alkalmazásoknál.
Kapcsolatok 6 A hagyományos adatkezelés egy felhasználót feltételez.
osztályozása

7 A különböz® felhasználók igénye más és más lehet.


A CODASYL-ajánlás 8

1. el®adás:

1969: Conference on Data Systems Languages


Alapfogal-
mak

Ispány
Márton
1 összetett logikai adatszerkezetek
2 irányított redundancia
Adatbázisok

Adatbázis
3 jogosultságkezelés
szemlélet
4 konkurens hozzáférés
Modellezés

Egyed, 5 többféle hozzáférés


tulajdonság,
kapcsolat 6 magas szint¶ nyelvek támogatása
Bachman
7 almodell szemlélet (nézetek)
Adatmodell
és adatbázis 8 emberi hatékonyság
Tulajdonság-
típusok
9 program-adat függetlenség
NULL érték logikai
Kapcsolatok
zikai (átlátszóság, transzparencia)
osztályozása
Megjegyzések 9

1. el®adás:
Alapfogal-
1 Az adatbázis (komplex) több fájlban való tárolásának
mak
támogatása.
Ispány
Márton 2 Ha egy adat csak egy helyen van tárolva, akkor nem léphet
Adatbázisok
fel inkonzisztencia. Ha egy adat több helyen is szerepel,
Adatbázis
akkor annak kikényszerítése, hogy konzisztens legyen.
szemlélet
3 DBA - adatbázis adminisztrátor. Feladata a felhasználók és
jogosultságaik deniálása. Minden adatbázis m¶velet
Modellezés

Egyed,
tulajdonság, ellen®rzés alatt hajtódik végre különböz® jogosultságok
mellett.
kapcsolat

Bachman

Adatmodell
4 Alapvet® igény, hogy konkurens (egyidej¶) hozzáférés
és adatbázis
esetén is konzisztens maradjon az adatbázis. (OLTP
Tulajdonság-
típusok
rendszerek)
NULL érték 5 Többféle felhasználó: csak olvas, illetve írhat és
Kapcsolatok
osztályozása
módosíthat is. Lekérdezés lekérdez® nyelvvel (SQL), menü
vezérelt illetve természetes nyelvi interfésszel, GUI-k.
Megjegyzések 10

1. el®adás:
Alapfogal-
mak

Ispány 6 Tisztán objektum-orientált illetve objektum-relációs


Márton
adatbázisrendszerek kompatibilisek a C++-szal és a
Adatbázisok
Java-val. Adatstruktúra kompatibilitás.
Nincs szükség többszöri tárolásra. Egy felhasználó több
Adatbázis
szemlélet 7
Modellezés célra több nézetet hozhat létre.
Egyed,
tulajdonság,
8 A szabványok kikényszerítése gyorsítja a kommunikációt.
kapcsolat
Csökken az alkalmazás fejlesztés ideje (1:6-tól 1:4-ig).
Bachman
Flexibilitás: az igények változásával szükséges az adatbázis
szerkezetének megváltoztatása. A legfrissebb információk
Adatmodell
és adatbázis

Tulajdonság- rendelkezésre állása hatékonyságnövel®. Gazdaságos


skálázhatóság az emberi er®forrásokban.
típusok

NULL érték

Kapcsolatok
osztályozása
Megjegyzések 11

1. el®adás:
Alapfogal-
mak

Ispány
Márton

9 A tradicionális fájl-kezelésnél a fájl szerkezetének


Adatbázisok
megváltozása az összes program megváltozását
Adatbázis
szemlélet eredményezi. A fájlszerkezet a DBMS katalógusban van
Modellezés
elkülönítve az elérést biztosító programoktól. Egy adott
Egyed,
tulajdonság,
fájlba minden további nélkül szúrhatunk be új
kapcsolat
attribútumot. A felhasználói program képes m¶ködni az
Bachman
adatokon függetlenül a m¶velet konkrét implementációjától
Adatmodell
és adatbázis
(pl. az adó mértékének változása).
Tulajdonság-
típusok

NULL érték

Kapcsolatok
osztályozása
Az adat mint er®forrás 12

1. el®adás:
Alapfogal-
mak

Ispány
el®teremtéséhez id® és pénz szükséges
a természeti er®források elfogynak, sz¶kösek ↔ az adatok
Márton

Adatbázisok nem
megtartásuk és frissítésük költséges
Adatbázis
szemlélet

Modellezés
a szervezet fejl®désre használja fel (pl. prottermelés)
adat mint számítógép: nagy tömeg¶ adat sokszor
Egyed,
tulajdonság,

hasznosabb mint egy összetett modell vagy algoritmus (pl.


kapcsolat

Bachman
a Google számos nehéznek hitt feladatot oldott meg így,
Adatmodell
és adatbázis NLP, gépi tanulás stb.)
Tulajdonság-
típusok
adat mint érték (t®ke): a webes nagyvállalatok legnagyobb
NULL érték értékét az általuk birtokolt adatok adják
Kapcsolatok
osztályozása
A modellezés folyamata 13

1. el®adás:
Alapfogal- Valós világ
mak

Ispány
Márton
A követelményrendszer
felállítása, analízis
Adatbázisok

Adatbázis
Funkcionális követelmények Adatkövetelmények
szemlélet

Funkcionális analízis Koncepcionális tervezés


Modellezés

Egyed,
tulajdonság, Magas szint¶
Koncepcionális séma
kapcsolat tranzakcióspecikáció
DBMS-független
Bachman
Logikai tervezés
Adatmodell
DBMS-függ®
és adatbázis Logikai séma
Alkalmazói program
Tulajdonság-
tervezése
típusok Fizikai tervezés
NULL érték
Tranzakcióimplementáció Bels® séma
Kapcsolatok
osztályozása
Alkalmazói programok
A modellezés lépései 14

1. el®adás:
Alapfogal-
Mi a feladat és mely területen? Mi a kisvilág?
mak
Milyen igényeink, követelményeink, elvárásaink vannak?
Ispány
Márton
Mit tudjon a rendszer?
A szükséges és lehetséges adatok számbavétele. A kívánt
Adatbázisok

Adatbázis
funkciók végiggondolása.
szemlélet
Az elemzés és tervezés folyamán csoportmunka más
Modellezés
területek szakért®ivel, iteráció.
Koncepcionális adatmodell elkészítése: az egyed-,
Egyed,
tulajdonság,

tulajdonság- és kapcsolattípusok meghatározása.


kapcsolat

Bachman

Adatmodell
Ezen az adatmodellen (absztrakt) m¶veletek/tranzakciók
és adatbázis
deniálása.
Tulajdonság-
típusok
Logikai tervezés a DBMS leíró nyelvé(ei)n.
NULL érték Logikai séma (konkrét) kialakítása.
Kapcsolatok
osztályozása
A logikai séma lefordítása (ez sokszor automatikus) bels®
(zikai) sémává.
Példa modellezésre 15

1. el®adás:
Alapfogal-
mak

Ispány
Repül®gép helyfoglalási rendszer
Cél: tudjuk minden járatnál a gépet, a személyzetet és az
Márton

Adatbázisok utasokat.
Adatbázis
szemlélet
Adatkövetelmények:
Modellezés
menetrend - járatok
Egyed,
er®források - repül®gépek
tulajdonság,
kapcsolat
utasok
személyzet
Bachman

Adatmodell
Funkcionális követelmények:
és adatbázis
hely foglalása ill. szabad hely keresése adott járaton
Tulajdonság-
típusok
egy járat utasainak kilistázása
NULL érték
egy pilóta menetrendjének megállapítása
Kapcsolatok
osztályozása
Az egyed fogalma 16

1. el®adás:
Alapfogal-
mak Egyed
A valós világnak az az eleme (tárgy, jelenség, elképzelés,
Ispány
Márton

személy, fogalom stb.), amely a modellezés tárgyát képezi.


Adatbázisok

Adatbázis
szemlélet
Példa
Modellezés
Egyednek tekinthetjük például:
Egyed,
tulajdonság,
kapcsolat
Kovács Péter, másodéves PTI-s hallgatót
Bachman az IHJ-818 rendszámú piros Suzukit
Adatmodell
és adatbázis
az INBPM0208 kódú, Adatbázisrendszerek nev¶, 3 kredites
Tulajdonság- tantárgyat
a 422000 km2 területû, 2210 m legnagyobb mélység¶
típusok

NULL érték

Kapcsolatok
Fekete-tengert
osztályozása
A tulajdonság fogalma 17

1. el®adás:
Alapfogal-

Tulajdonság
mak

Ispány
Márton
Az egyednek a modellezés szempontjából lényeges jellemz®je.
Adatbázisok

Adatbázis Példa
szemlélet

Modellezés Tulajdonságnak tekinthetjük például:


Egyed,
tulajdonság,
a Kovács Péter nevet, a második évfolyamot, a PTI szakot
kapcsolat
az IHJ-818 rendszámot, a piros színt, a Suzuki márkát
Bachman

Adatmodell
az INBPM0208 kódot, az Adatbázisrendszerek nevet, a 3
és adatbázis
kreditet
a Fekete-tenger nevet, a 422000 km2 területet, a 2210 m
Tulajdonság-
típusok

NULL érték legnagyobb mélységet


Kapcsolatok
osztályozása
A tulajdonságtípus fogalma 18

1. el®adás:
Alapfogal-
mak

Ispány
Tulajdonságtípus
Márton

Az azonos szerep¶ tulajdonságok absztrakciója.


Adatbázisok

Adatbázis A tulajdonságtípus egy másik elnevezése az attribútum.


szemlélet

Modellezés
Példa
Tulajdonságtípusnak tekinthetjük például:
Egyed,
tulajdonság,
kapcsolat

Bachman
a hallgató nevét, évfolyamát, szakját
Adatmodell az autó rendszámát, színét, márkáját
és adatbázis

Tulajdonság-
a tantárgy kódját, nevét, kreditszámát
a tenger nevét, területét, legnagyobb mélységét
típusok

NULL érték

Kapcsolatok
osztályozása
Az egyedtípus fogalma 19

1. el®adás:
Alapfogal-
mak

Ispány Egyedtípus
Márton

Az azonos tulajdonságtípusokkal rendelkez® egyedek


absztrakciója.
Adatbázisok

Adatbázis
szemlélet

Modellezés Példa
Egyed,
tulajdonság,
Egyedtípusnak tekinthetjük például:
kapcsolat

Bachman
a hallgatót
Adatmodell az autót
és adatbázis

Tulajdonság-
a tantárgyat
típusok
a tengert
NULL érték

Kapcsolatok
osztályozása
A kapcsolattípus fogalma 20

1. el®adás:
Alapfogal-
mak

Ispány
Kapcsolattípus
Márton

Két vagy több egyedtípus közötti jól meghatározott viszony.


Adatbázisok

Példa
Adatbázis
szemlélet

Modellezés
Kapcsolattípusnak tekinthetjük például:
Egyed,
tulajdonság, a hallgató és a tantárgy között fennálló felvételi viszonyt
kapcsolat

Bachman
a hallgató és a tantárgy között fennálló teljesítési viszonyt
Adatmodell a személy és az autó között fennálló birtoklási viszonyt
és adatbázis

Tulajdonság-
két hallgató között fennálló csoporttársi viszonyt
típusok
a hallgató és a tenger között fennálló nyaralási viszonyt
NULL érték

Kapcsolatok
osztályozása
A kapcsolat fogalma 21

1. el®adás:
Alapfogal-
mak

Ispány Kapcsolat
Márton

A két vagy több egyedtípus egyedei között fennálló viszony.


Adatbázisok

Adatbázis
szemlélet Példa
Modellezés
Kapcsolatnak tekinthetjük például:
Egyed,
tulajdonság, Kovács Péter felvette az Adatbázisrendszerek tárgyat
kapcsolat

Bachman
Szabó Ferenc teljesítette a Magas szint¶ programozási
Adatmodell nyelvek 1 tárgyat
és adatbázis

Tulajdonság-
Kiss Péter megvette az IHJ-818 rendszámú gépkocsit
típusok
Nagy Géza a Fekete-tengeren nyaralt
NULL érték

Kapcsolatok
osztályozása
A Bachman-féle fogalomrendszer 22

1. el®adás:
Alapfogal-
mak

Ispány
Márton

Adatbázisok absztrakt konkrét


Adatbázis
szemlélet

Modellezés
egyed egyedtípus egyed-el®fordulás
Egyed,
tulajdonság,
kapcsolat
tulajdonság tulajdonságtípus tulajdonság-el®fordulás
Bachman

Adatmodell kapcsolat kapcsolattípus kapcsolat-el®fordulás


és adatbázis

Tulajdonság-
típusok

NULL érték

Kapcsolatok
osztályozása
Az adatmodell és az adatbázis fogalma 23

1. el®adás:
Alapfogal-
mak

Ispány
Márton

Koncepcionális adatmodell (séma)


Adatbázisok

Adatbázis
Véges számú tulajdonságtípussal megadott véges számú
szemlélet
egyedtípus és a közöttük fennálló véges számú kapcsolattípus
Modellezés
összessége.
Egyed,
tulajdonság,
kapcsolat
Adatbázis
Bachman

Adatmodell
Az adatmodell, valamint az egyed-el®fordulások,
és adatbázis
tulajdonság-el®fordulások és kapcsolat-el®fordulások együttese.
Tulajdonság-
típusok

NULL érték

Kapcsolatok
osztályozása
A tulajdonságtípusok osztályozása 24

1. el®adás:
Alapfogal-
mak

Ispány
Márton
1 a tulajdonság-el®fordulás szerkezete (összetettsége) szerint
egyszer¶ vagy atomi (pl. születési hely vagy évszám)
Adatbázisok
összetett (pl. lakcím: irányítószám, település, utca,
Adatbázis
szemlélet
házszám)
Modellezés 2 a tulajdonság-el®fordulás hány értéket vehet föl egyszerre
Egyed, egyérték¶ (pl. születési dátum)
halmazérték¶ vagy többérték¶ (pl. felvett kurzusok)
tulajdonság,
kapcsolat

Bachman 3 a tulajdonság-el®fordulás minden esetben megjelenik-e a


Adatmodell háttértárolón (a zikai adatbázisban)
és adatbázis

Tulajdonság-
tárolt
típusok származtatott
NULL érték

Kapcsolatok
osztályozása
A NULL érték mint tulajdonság-el®fordulás 25

1. el®adás:
Alapfogal-
nem alkalmazható, nem értelmezett
mak ismeretlen
Ispány létezik, de hiányzik
Márton
nem tudjuk, hogy létezik-e
Adatbázisok
Példa
Adatbázis
szemlélet
diplomával nem rendelkez®k esetén a Diploma attribútum értéke nem

Modellezés értelmezett

Egyed, egyedülálló személyek esetén a Házastárs attribútum értéke nem


tulajdonság,
kapcsolat értelmezett

Bachman személyek esetén a Magasság attribútum értéke létezik, de hiányozhat

Adatmodell tantárgyak esetén a Kreditszám attribútum értéke létezik, de


és adatbázis
hiányozhat
Tulajdonság-
típusok személyek esetén a Telefonszám attribútum értékér®l nem tudjuk,

NULL érték
hogy létezik-e

Kapcsolatok járm¶vek esetén a Henger¶rtartalom attribútum értékér®l nem


osztályozása
tudjuk, hogy létezik-e
Kapcsolattípusok osztályozása: kapcsolat foka 26

1. el®adás:
Alapfogal-
mak

Ispány
1 A kapcsolat foka: meghatározza, hogy hány egyedtípus
Márton vesz részt a kapcsolatban.
Adatbázisok
bináris (másodfokú)
Adatbázis
ternáris (harmadfokú)
szemlélet ...
Modellezés

Egyed,
Példa
tulajdonság,
kapcsolat a korábbi példák mindegyike másodfokú kapcsolat (a
Bachman
hallgató által felvett tantárgyak, két hallgató csoporttársi
Adatmodell
és adatbázis
viszonya)
Tulajdonság- harmadfokú kapcsolat állhat fenn a bank, az ügyfél és a
típusok

NULL érték
számla között
Kapcsolatok
osztályozása
Kapcsolattípusok osztályozása: kapcsolat
számossága 27

1. el®adás:
Alapfogal-
mak 2 A (bináris) kapcsolat számossága: meghatározza, hogy
Ispány legfeljebb hány kapcsolat-el®fordulásban vehet részt egy
Márton
egyedel®fordulás.
Adatbázisok 1:1
Adatbázis 1:N
szemlélet
M:N
Modellezés

Egyed, Példa
tulajdonság,
kapcsolat
a házassági kapcsolat Magyarországon 1:1 számosságú
Bachman

Adatmodell a tulajdonlási kapcsolat az autó és a személy között 1:N


és adatbázis
számosságú
Tulajdonság-
típusok a hallgató és tantárgy közötti tantárgyfelvétel kapcsolat
NULL érték
M:N számosságú
Kapcsolatok
osztályozása
Kapcsolattípusok osztályozása: kapcsolat szorossága
28

1. el®adás:
Alapfogal-
3 A (bináris) kapcsolat szorossága: meghatározza, hogy a
mak kapcsolatban részt vev® egyedtípusok minden egyedének
Ispány részt kell-e vennie legalább egy kapcsolat-el®fordulásban.
Márton
kötelez®
Adatbázisok félig kötelez®
Adatbázis opcionális
szemlélet

Modellezés
Példa
Egyed,
tulajdonság,
kapcsolat
a tulajdonlási kapcsolat az autó és a személy között félig
Bachman kötelez® szorosságú (minden autó egyednek részt kell
Adatmodell vennie egy kapcsolat-el®fordulásban)
és adatbázis

Tulajdonság-
a tulajdonlási kapcsolat az autó és az autótulajdonos
típusok
között kötelez® szorosságú
NULL érték
a könyv és a könyvtártag közötti kölcsönzési viszony
Kapcsolatok
osztályozása opcionális szorosságú

You might also like