Adattól az adatbázisig

További jegyzetek itt!
Tartalom:
1. Adatbázis
2. A kezdetek...
3. Egyedi adattól adatbázisig
4. Adatbázisarchitektúra 3 szintje
5. Elemi adatszerkezetek

Tannenbaum: „vannak olyan folyamatok, ahol a legnagyob sávszélessége a biciklisfutárnak van”
pl.: biciklisfutár a RTGtomográffelvételekkel dvd-n



Adatbázis


programfüggetlen(),
rendezett (gyorsabb keresés)

adat, ábrátolási mód, összefüggéseik, hozzáférés ellenőrzési mód
=> Data Base Management Systen (DMBS)



A kezdetek...



keret
adatdefiníciók
- anno a programokba írták → adatmódosítás = programmódosítás; ez nehézkes
=> adatot külön tárolóra rakták (mágnesdob => adattároló mai jelölése) =⇒ külön adatkiszolgáló jobb (Data Base)

programban benne feltételek (if A then B else ...), de így a program továbbra is merev ⇒ tegyük ezt is egy másikra (Knowledge Base)


Biz. be: Szokratész meghalt:

if A then B
if D then H
if B then C
if C then D
⇒ if A then H
szabálybázis

sok szabálynál jön az if H then B típusú... ez egy végtelenciklus, ami nekünk nem jó
=⇒ ez a rossz a szabályalapú programokban

"azonnal látszik a programon, hogy magyarországon csinálták...
- Miért?
- mert a húgyúti fertőzések diagnosztizálására használják, és az első kérdés úgy szól, hogy a fertőzést a kórházban kapta-e...."
⇒ liftkezelőprogram hibájának ellenőrzésére még jó lehet egy ilyen.......




Egyedi adattól adatbázisig


több program használ egy adatforrást

Program A és B használja C adattáblát
B használja D adattáblát is.... stb...

nem a programohoz állítjuk össze az adatokat, hanem a programokat a már meglévő adatokhoz

adatfeldolgozás alapja: bejegyzés (=rekord): ehhez férünk hozzá adatfeldolgozás közben, fe kell majd törni valahogy
a sor elemei pedig mezők, (mert: régen a lyukkártyán egy adathoz tartozó lyukmezők)
rendezett valamilyen mező szerint... akkor az a kulcs...
másik program rendezheti más szerint

1. csinálhatunk egyik vagy másik szerint rendezettet is...
de így ha új rekordot teszek bele, mindkettőt rendezni kell..
„az ördög soha nem alszik, másutt a részletekben van, de itt még nem is alszik!”
tehát áramszünet → egyik rendezve, másik nincs rendezve... elkezdenek különbözni

⇒ igény: legyen meg csak egyszer az adat, mert könnyebb kezelni
DBMS


Hardvert kezeli az operációs rendszer,
[felhasználó] ←úgy szervíroz, hogy a felhazsnáló mosolyogjon!-↓ [DBMS][oprendszer[hardver]]

DBMS-követelmények







Elemi adatszerkezetek


Tömb
láncolt lista
verem

tömb:

normál táblázat gyk.

láncolt lista:


- bevezetjük a rendezési kulcsot...
rendszám...
VAGY
- létrehozunk mögötte néhány mezőt, amibe a pointereket rakják:
„komámasszony hol az olló?”
megmutatja, melyik a következő elem
többféle pointert is bele lehet rakni, annak megfelelően, hogy többflée rendezési szempontot definiálhassak
áramszünet: megszakad a pointerlánc, azt akarja visszaállítani

ha egy adatot ki akarok haygni a láncolt listából, akkor átcímzi az arra címző poibtert a következőre... az előző pointert meg átdobja egy poolba
ha új adatot akarok beleilleszteni... akkor először a megfelelő elem pointerét átláncolom oda, neki meg adok egy pointert, ami a megfelelő helyre mutat

előny: könnyű beillesztés, törlés
hátrány: végig kell szaladni rajta (vagy kikap egy adatot, s megnézi, előtte van-e vagy utána... így keres gyökhelyet is a gép, ha tudja, hogy cska egy gyökjel van ott)


verem (stack ≠= steak; LIFO = Last In First Out):


beledobáljuk az adatokat, és beledoblálssal ellentétes sorrendben lehet kiszedni
zárójelezett kifejezések átrendezése... meg kell keresni a legbelső zárójelet... ha nyitózárójel, akkor azt a verem tetejére teszi... amikor záró zárójelet talál, akkor elkezdi végrehajtani, majd továbbmegy

kétféle sor van: normáls ember, FIFO: first in, first out; és LIFO, az életművészeké