adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 az...

114
1. dia 1 Adatbázisok Segédanyag az előadáshoz Dr. Kotsis Domokos ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ 2. dia 2 Irodalom Elmashri, R., Navathe, Sh.: Fundamentals of Database Systems, Benjamin/Cummings Publ. Comp., Redwood City, 1994. Kende M., Kotsis D., Nagy I.: Adatbázis kezelés az ORACLE rendszerben PANEM, Budapest, 2002. Knuth, Donald E.: A számítógép programozás művészete, 3. kötet: Keresés és rendezés, Műszaki Könyvkiadó, Budapest 1988. Quittner Pál, Kotsis Domokos: Számítástechnika Rendszerszervezőknek, Akadémiai Kiadó, Budapest 1985. Jiawei, H.,Kamber, M.: Adatbányászat, PANEM, Budapest, 2004. users.nik.uni-obuda.hu/kotsis/ab/ab.pdf ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ 3. dia 3 Cél Cél: információ tárolás, feldolgozás, továbbítás. ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________

Upload: others

Post on 21-Oct-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

1. dia

1

Adatbázisok

Segédanyag az előadáshoz

Dr. Kotsis Domokos

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

2. dia

2

IrodalomElmashri, R., Navathe, Sh.: Fundamentals of Database Systems,Benjamin/Cummings Publ. Comp., Redwood City, 1994.

Kende M., Kotsis D., Nagy I.: Adatbázis kezelés az ORACLE rendszerbenPANEM, Budapest, 2002.

Knuth, Donald E.: A számítógép programozás művészete, 3. kötet: Keresés és rendezés, Műszaki Könyvkiadó, Budapest 1988.

Quittner Pál, Kotsis Domokos: Számítástechnika Rendszerszervezőknek, Akadémiai Kiadó, Budapest 1985.

Jiawei, H.,Kamber, M.: Adatbányászat,PANEM, Budapest, 2004.

users.nik.uni-obuda.hu/kotsis/ab/ab.pdf

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

3. dia

3

Cél

Cél: információ tárolás, feldolgozás, továbbítás.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 2: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

4. dia

4

Az információ feldolgozás alapvető módszerei

•Szóbeli

•ÍrásbeliNyomtatott

•Elektronikus

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

5. dia

5

A szóbeli információ feldolgozás

Az információ tárgya akkor, ott nem kell, hogyjelen legyen.

Szóbeli leírás: magas absztrakciós szint.Interaktív.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

6. dia

6

Mit kell tudni?

Forrás: értelmes beszéd.Nyelő: a beszéd értése.

Kicsi különbség.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 3: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

7. dia

7

Az írásbeli információ feldolgozás

Az információ szolgáltatás tárgyán kívül annakforrása (az információ „adója”) sem kell, hogy akkor, ott jelen legyen.

Nincs metakommunkáció, nincs interakció : még magasabb absztrakciós szint.Hang nincs, de képek, utalások lehetnek.Nyomtatás: sokakhoz eljut.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

8. dia

8

Mit kell tudni?

Forrás: írás tudás, eszközök használata(stilus, lúdtoll, töltőtoll, írógép).

Nyelő: olvasás tudás.

Nagyobb különbség.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

9. dia

9

Az elektronikus információ feldolgozás

Az eddigieken kívül:A korábbi módszerek határai kitágulnak (telefon, Email).Az információ szolgáltatásnak nem egy forrása van(rádió televízió, internet).

Változatos hangok, képek (mozgók is), interaktív.Alacsonyabb absztrakciós szint.Mindenkihez eljuthat.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 4: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

10. dia

10

Mit kell tudni?

Forrás: tv, rádió műsorok készítése; távközlési hálózat tervezése, üzemeltetése; számítógépek hálózatok programozása.

Nyelő: tv, rádió, telefon kezelése; számítógépek, programok használata (ECDL).

Óriási különbség

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

11. dia

11

Összefoglalás

Szóbeli Írásbeli Elektronikus

Absztrakció Hatótávolság Forrás-Nyelő

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

12. dia

12

Szakmai bevezetés

Az információfeldolgozás kezdetei: a Holle-rith gépekA számítógépek kezdeti felhasználási terü-letei. Számítástechnika-Informatika.A mai helyzet: információ = energia?

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 5: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

13. dia

13

Az információ feldolgozás alapvető módszerei

•Folyamat szemléletű információ feld.•Adatbázis szemléletű információ feld.•Döntés-támogató rendszerek.•Tudásbázisok (szakértői rendszerek).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

14. dia

14

A folyamatszemléletű információ feldolgozás

cél folyamat állományok

Előnyök:csak a szükséges adatokkal dolgozikoptimális adatstruktúra használható

Hátrányok:többszörös tárolás (inkonzisztencia)csak egy cél

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

15. dia

15

Optimális struktúra

tárolóhely létrehozás

Opt. szemp. feldolgozási idő keresés változtatás felhasználás egyszerűsége

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 6: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

16. dia

16

Keresés 1.Egy N elemű file-ban egy rekord keresésének lépései:

SN (A+B+C)

A keresési idő:N Si

TN = Σ pi Σ (Ai,j+Bi,j+Ci,j)i=1 j=1

N

ahol pi az i-edik elem keresésének valószínűsége (Σ pi = 1), i=1

és Si az i-edik elem megtalálásához szükséges lépésszám.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

17. dia

17

Keresés 2.

Fontos a hardware, a tároló szerkezete!

RAM: a címek sorrendje közömbös.

Mozgófejes lemez: pozícionálás, forgás, beolvasás.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

18. dia

18

Keresés 3.

átlagos t időt véve:N

TN = Σ pi ti=1

egyenlő gyakorisággal számolva:

TN = SNt

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 7: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

19. dia

19

A keresést meghatározó tényezők

Struktúra

Algoritmus

Pl. rendezetlen esetben lineáris keresés:

SN N/2 S’N N;

ugyanez rendezett esetben:

SN N/2 S’N N/2;

de itt nyilván van jobb módszer is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

20. dia

20

A legfontosabb állomány struktúrák

• Szekvenciális állomány struktúrák

• Hierarchikus állomány struktúrák;

• Hálós állomány struktúrák;

• Nem konzekutív állomány struktúrák

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

21. dia

21

Fizikai szekvenciális állomány struktúrák

A rekordok logikai és fizikai sorrendje megegyezik.

Keresési módok:

Lineáris keresés

Bináris, logaritmikus keresés

Peterson-féle keresés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 8: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

22. dia

22

Bináris, logaritmikus keresésMinden lépésben hosszra nézve felezzük a vizsgálandó állományt.

SN S’N log2(N)

Heurisztikus bizonyítás:

legyen K olyan, hogy N=2K.

Minden felezésnél Kúj = Krégi –1.

Kúj=0 éppen innen K lépés után lesz, és

K=log2(N)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

23. dia

23

Peterson-féle keresés

Minden lépésben az előfordulás valószí-nűségére nézve felezzük a vizsgálandó állományt.

Egyenletes eloszlás mellett:

AU - AE

A = AE + ------------ * K

KU - KE

ekkor:

SN S’N ½ log2(N)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

24. dia

24

Bináris vs. Peterson keresés

SN a Petersonnál kisebb, de

1. az eloszlás nem feltétlenül egyenletes,

2. Petersonnál valódi osztás kell, a binárisnál a léptetés alkalmazható.

A leggyorsabb, ha N = 2k – 1 alakú.

Ha nem ilyen:

1. két részre osztás

2. kiegészítés álrekordokkal

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 9: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

25. dia

25

A fizikai szekvencialitás előnye, hátránya

A keresés lépésszáma kicsi, de a rendezettség biztosítása is időigényes!

1. bonyolult beszúrási algoritmus

2. rendszeres fizikai rendezés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

26. dia

26

Logikai szekvenciális állomány struktúrák

A rekordok logikai és fizikai sorrendje nem egyezik meg.

Mutatórendszerek (egy- kétirányú, gyűrűs).

Indító tábla.

Dinamikus file-oknál jó: csak mutatókkal kell dolgozni.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

27. dia

27

Példa

Lista 4

Üreshely

2

10 3

6 1 6 *

20 *5

1 2 3

4 5 6

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 10: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

28. dia

28

Beszúrás

Lista 4

Üreshely

5

10 2

6 1 6 *

20 *16 3

1 2 3

4 5 6

Új elem: 16

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

29. dia

29

Törlés

Lista 4

Üreshely

20

10 2

6 1 6 *

20 516 *

1 2 3

4 5 6

Törlendő: 20

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

30. dia

30

Hátrányok

A fizikainál ismert keresési algoritmusok nem használhatók.

Mozgófejes lemeznél:

Pozícionálás, forgási idő kell az eléréshez.

Véletlenszerű elhelyezkedésnél C cilinder-nyi anyagnál átlagosan C/3 cilindernyi pozícionálás kell.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 11: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

31. dia

31

Csaknem fizikai szekvenciális file

Létrehozáskor fizikai szekvenciálisan elhelyezett logikai szekvenciális file.

Feldolgozáskor logikai szekvenciális.

Túlcsordulási terület a cilinderen.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

32. dia

32

Kupacos keresés 1.

N rekord, G rekord/ csoport, N/G csoport.

2

11

1

GN

G

N

k G

Nk

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

33. dia

33

Kupacos keresés 2.

22

1

2

1

2

1 G

G

NGS G

N

N

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 12: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

34. dia

34

Kupacos keresés 3.

A minimum kereséshez G szerint deriválva:

2

12

G

N

Ennek minimum helye: NG

Ebből következően: NS N

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

35. dia

35

Gyakoriság szerint rendezett file

Statikus, dinamikus megoldás.

Önrendező algoritmusok.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

36. dia

36

Hierarchikus struktúrák 1.

Egy megelőző, több rákövetkező (fa).

Nyelvi leírás: COBOL, LISP

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 13: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

37. dia

37

Hierarchikus struktúrák 2.

Ábrázolás:

A.) Belső mutatós módszerek

1. Left-list

2. Több pointer

3. Segédrekordok

4. Gyűrűk

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

38. dia

38

Hierarchikus struktúrák 3.

B.) Külső mutatós módszerek

1. Táblázatok

2. Bináris mátrixok

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

39. dia

39

Hálós struktúrák 1.

1. Visszavezetés hierarchikusra.

2. Az ott leírt módszerek?

A.) Belső mutatós módszerek

1. Left-list nem

2. Több pointer igen

3. Segédrekordok nem

4. Gyűrűk nem

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 14: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

40. dia

40

Hálós struktúrák 2.

B.) Külső mutatós módszerek

1. Táblázatok igen

2. Bináris mátrixok igen

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

41. dia

41

Nem konzekutív struktúrák

Indexelt szervezés

Direkt szervezés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

42. dia

42

Indexelt szervezés

1. Sűrű indexelés

2. Ritka indexelés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 15: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

43. dia

43

Sűrű indexelés

Minden rekordhoz tartozik index bejegyzés

Előnyök: több index szervezhető

Hátrányok: nagyok az index file-ok

Mikor lehet gyors a keresés?

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

44. dia

44

Bináris fa I.

12 38 66 93

79

52

27

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

45. dia

45

Bináris fa II.

12

27

38

52

66

79

93

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 16: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

46. dia

46

B fákR. Bayer 1970

n a B fa rendje

1. Minden lap legfeljebb 2n tételt tartalmaz.

2. Minden lapon – a gyökér kivételével -legalább n tétel van .

3. Ha egy lapon m tétel van, vagy levéllap, vagy m+1 utódja van.

4. Minden levéllap ugyanazon a szinten van.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

47. dia

47

B fák elérése

A kereséshez szükséges átlagos lépésszám a laphivatkozásoktól függ, ezek száma N elemnél n rendű fában:

lognN

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

48. dia

48

B fa egy lapja

p0 k1 p1 k2 p2. . . . . . . . pm-1 km pm

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 17: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

49. dia

49

Másodrendű B fa

25

30,4010,20

2,5,7,8 13,14,15,18 22,24 26,27,28 32,35,38 41,42,45,46

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

50. dia

50

Egy új (22) kulcs beszúrása

20

7,10,15,18 26,30,35,40

20,30

7,10,15,18 22,26 35,40

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

51. dia

51

Egy kulcs (67) törlése

10,22,30,40

13,15,18,20 26,27

10,22,35

5,7,8 13,15,18,20 26,27,30,32

5,7,8 32,35,38 42,67

38,40,42

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 18: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

52. dia

52

B+ fák

A gyakorlatban index állományok készítésére az u.n. B+ fákat használják. (Ilyen struktúrát alkalmaz – sok más rendszerrel együtt – az Oracle is.)

A B+ fa egy olyan B fa, melyben azok a pointerek, melyek adatokra (adatok címére) mutatnak, s amelyeket keresünk, valamennyien a levéllapokon helyezked-nek el, így a levéllapok és a többi lap struktúrája különbözik.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

53. dia

53

Ritka indexelés

„Jelző cölöpök” mutatják a rekord helyét.

Rendezettség kell!

Több szintű index rendszer is készíthető.

Gyors elérés, de csak egy szempont szerint.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

54. dia

54

Index-szekvenciális szervezés 1.

A ritka indexelés egy megvalósítása.

A fizikai architektúrának megfelelően:

Sáv; cilinder; fő index.

Index; elsődleges; túlcsordulási terület.

Szervezés: az elsődleges területen fizikai, a túlcsordulási területen logikai szekvenciális szervezés.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 19: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

55. dia

55

A tároló felosztása

3170 3240 3500 …

3123 3138 3170

3208 3229 3240

3273 3387 3400 3500

. . .

3412

Sávindex

Elsődlegesterület

Túlcsordulásiterület

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

56. dia

56

Egy rekord (3229) megkeresése

1510 3117 4217 5890 . . .

Főindex

140 710 998 1510

2001 2470 2980 3117

3500 3717 3920 4214

4710 4900 5360 5890

Cilinder index

. . . . . . . . . . . .

Sáv index

3170 3240 3500 . . .

Sávok

3208 3229 3240 . . .

3273 3387 3500 . . .

3123 3138 3170 . . .

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

57. dia

57

Rekordok beszúrása

1 3 15 28

1 3 5 2815

1 3 5 1615

1 2 3 155

1 2 3 155

5

16

2

20

28

28 16

28 16 20

Elsődleges adatterület Túlcsordulásiterület

Újrekordok

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 20: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

58. dia

58

Direkt szervezés 1.

Egy leképezést adunk meg a rekord kulcsa (K) és a címe (A) között.

Kívánatos lenne az egy-egy értelműség:

KfA

2121 KfKfKK

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

59. dia

59

Direkt szervezés 2.

Közvetlen leképezés: igen rossz a tárkihasználás.

Hashing algoritmusok: megengedjük, hogy

esetén is – lehetőleg ritkán - előfordulhasson

21 KK

21 KfKf

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

60. dia

60

Két hashing algoritmus

Maradék módszer: M modulus mellett

Csonkítás: a kevés információt hordozó jegyek elhagyása.

MKRA

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 21: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

61. dia

61

Szinonímok

A hashing algoritmusok nem egy-egy értel-műek, így szinonimok keletkezhetnek.

Szinonim kezelő módszerek:

Külső láncolás

Belső láncolás

Nyílt (Peterson) módszer

Többszörös hashing

Bucket-ek használata

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

62. dia

62

A külső láncolás

A szinonimokat mutatók kötik össze.

Külön túlcsordulási terület.

Problémák:

Tárkihasználás

Törlés: az elsőt nem lehet törölni.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

63. dia

63

A belső láncolás

A szinonimokat itt is mutatók kötik össze, de azok az (egyetlen) elsődleges terület még nem használt helyeire kerülnek, az eredeti címhez a lehető legközelebb.

A tárkihasználás jó, de másodlagos szinoni-mok keletkezhetnek.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 22: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

64. dia

64

A nyílt módszer

A rekordok ugyanúgy helyezkednek el, mint a belső láncolásnál, de nincsenek mutatók.

A keresésnél szükséges lépésszám nagyobb, mint a belső láncolásnál.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

65. dia

65

A többszörös hashing

Ha a leképezés szinonimra vezet, egy má-sikkal próbálkozunk.

(A gyakorlatban két hashing algoritmust, majd a korábban ismertetett módszerek valamelyikét használják.)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

66. dia

66

Bucket-ek használata

E módszernél nem egy-egy rekordnak, hanem egy-egy rekord csoportnak van külön címe.

Kevesebb szinonimkezelésre van szükség, de a csoportokon belül is kell keresnünk.

Hasznos akkor lehet, ha hardware szempontok (szektor) indokolják.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 23: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

67. dia

67

Példa szinonímkezelésre

35, 46, 18, 14, 63, 06,75, 85,91, 52.

Leképezés: a 11-el osztás maradéka.

Második: a 7-el osztás maradéka.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

68. dia

68

Példa bucket használatra

21, 32, 71, 14, 83, 72, 43, 51, 02, 11, 93, 44.

Leképezés: 4 bucket-be a második jegy szerint.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

69. dia

69

Összehasonlítás 1.

Az egyes módszerekhez átlagosan szüksé-ges lépésszámot a tényleges (N), és az egyáltalán elhelyezhető (M) rekordszámmal meghatározott A=N/M u.n. kitöltési tényező függvényében vizsgáljuk.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 24: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

70. dia

70

Összehasonlítás 2.

Belső láncolásnál sikeres esetben:

AAeA

S AN

4

121

8

11 2

Sikertelen esetben:

AeS AN 21

4

11 2'

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

71. dia

71

Összehasonlítás 3.

Nyílt módszernél sikeres esetben:

Sikertelen esetben:

ASN

1

11

2

1

2

'

1

11

2

1

ASN

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

72. dia

72

Összehasonlítás 4.

Többszörös hashing-nél sikeres esetben:

Sikertelen esetben:

AASN 1ln1

1' 1

ASN

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 25: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

73. dia

73

Összehasonlítás 5.

Példaképpen sikeres esetben:

2

22

!1

2

2

11

4

121

8

11

i

iiA

i

AAAAe

A

1

2

2

11...

2

1

2

11

1

11

2

1

i

iAAAA

0

21

1...

3211ln

i

i

i

AAAAA

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

74. dia

74

Összehasonlítás 6.

Sikertelen esetben:

2

2

!

2

4

1121

4

11

i

iA

i

AAe

1

2

2

2

11...

2

31

1

11

2

1

i

iAi

AAA

0

21...11

i

iAAAA

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

75. dia

75

Összehasonlítás 7.

Nem elég a lépésszámot vizsgálni, hisz az egyes lépések időigénye módszerenként más.

Figyelembe kell venni a hardware adottságokat is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 26: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

76. dia

76

Összehasonlítás 8.

Gyors véletlen elérésű (pl. RAM) tárolónál:

TH: nagy algoritmusidő.

NyM: több lépés mint BL-nél.

BL: másodlagos szinonimok miatt több lépés, mint KL-nél.

KL: leggyorsabb, de rossz tárkihasználás.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

77. dia

77

Összehasonlítás 9.

Mozgófejes tárolónál:

TH, KL: sok fejmozgás.

NyM: több lépés mint BL-nél.

De NyM-hez nem kell CPU, így a leggyorsabb lehet.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

78. dia

78

Alapelv

A rendelkezésre álló adatokból indulunk ki, az „összes” adatot (entity) és a közöttük fennálló „összes” kapcsolatot (relationship) egy integrált adatbázisba gyűjtjük, és vala-mennyi felhasználó valamennyi kérdéséhez ezt az adatbázist (vagy ennek egy részét) használhatja.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 27: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

79. dia

79

Adatreprezentáció

Az „összes adat” egy „mini világra” vonat-kozik.Ennek leírása több szintű:

konceptuális (magas szintű),implementációs (reprezentációs), fizikai modell.

Az egyes felhasználói nézetek (view-k) az adatbázisnak csak egy részét látják.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

80. dia

80

A leképezések (mapping-ek)

1.nézet 2.nézet 3.nézet

Konceptuális modell

Implementációs modell

Fizikai modell

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

81. dia

81

Egyed-kapcsolat leírások

Az alapvetően használt modell az egyed-kap-csolat (entity-relationship), azaz ER modell.Az egyedeknek tulajdonságaik (attribute) vannak, ezek egyike, vagy ezekből egy készlet az egyedet egyértelműen azonosító kulcs.A kapcsolatok lehetnek 1:1, 1:n, m:n jellegűek.A kapcsolatokat sokszor egyedhalmazzá alakítjuk (kapcsoló rekord: a kapcsolat mint egyed).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 28: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

82. dia

82

Adatbázis felügyelő

Több felhasználó: védeni kell tőlük a rend-szert, és őket egymástól.Ez az adatbázis felügyelő (data base administrator) egyik feladata.

Tervezés: séma, alséma készítés.Eszköz: DDL.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

83. dia

83

Adatfüggetlenség

Logikai: az adatok logikai struktúrájában (konceptuális, implementációs modell) történő változtatás ne érintse az ezen változtatást nem igénylő felhasználók munkáját.

Fizikai: a fizikai modell változtatása ne kény-szerítse ki az implementációs modell változtatását.

A kettő együtt az adatfüggetlenség.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

84. dia

84

Tervezési szempontok

Kapcsolat múlttal, jövővel.Biztonság, titkosság, pontosság.Konkurrens folyamatok kezelése.Válaszidő.Kényelmes használat.Költségek.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 29: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

85. dia

85

Várakozási gráf

T1 T2 T3

E1 E2

E3

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

86. dia

86

Az ABF üzemeltetési feladatai

Mentések, karbantartás.

Kapcsolattartás a felhasználóval.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

87. dia

87

A DML

A felhasználó eszköze.

Többféle felosztás:

1. Alkalmazott nyelv szerint:

Host language

Self Contained Language

2. A felhasználás jellege szerint:

Procedurális

Deklaratív

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 30: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

88. dia

88

Host Language (Beépített, beágyazott nyelvű) rendszerekEgy korábban ismert magas szintű nyelvet használnak.

Megoldások:

Eljárás gyűjtemények könyvtárban.

Eljárás gyűjtemény előfordítóval.

Eljárás gyűjtemény interpreterrel.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

89. dia

89

Self Contained (Önálló) nyelvű rendszerek

Lehet külön programozható nyelv.

Lehet, csak paraméterezendő rendszer.

Lehet 4GL fejlesztő rendszer.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

90. dia

90

Procedurális rendszerek

Egy lépésben egy rekordot dolgoznak fel (record-in-time feldolgozás).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 31: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

91. dia

91

Deklaratív rendszerek

Egy lépésben egy meghatározott tulaj-donságú halmazt (pl. egy táblázatot) dolgoznak fel( set-in-time rendszerek: ilyen pl. az SQL).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

92. dia

92

Az OS és az ABKR

ABF

OS ABKRAB

FELH

DDLDML

DML

ÓHAJOK

SZABÁLYOK

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

93. dia

93

Egy lekérés folyamata

OS

ABKR S AS1 AS2 …

FHP1 FHP2 …

FHM1 FHM1 …

SB

1

2

3

45

6

7

8

9

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 32: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

94. dia

94

Alapvető ABKR modellek (approach)

1. Hierarchikus

2. Hálós (CODASYL, DBTG)

3. Relációs

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

95. dia

95

A hierarchikus modell I.

A legelső modell, ma már nem használják.Az adatokat fákban tároljuk, ahol a fák egy-egyszögpontja a szegmens (segment) adatokat és atovábbi szegmensekre utaló mutatókat tartalmaz.A fák gyökérelemei hagyományos állományokbavannak szervezve. Az egyes nézetek a számukraérzékeny szegmenseket (sensitive segment) látják.Jellegzetes képviselője az IMS (IBM).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

96. dia

96

A hierarchikus modell II. (IMS)

R1 R2 . . . Rn

S1

S2 S3

… . . .

Gyökérfile

Szegmensek

Rn-1

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 33: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

97. dia

97

A hierarchikus modell tulajdonságai

Igazi ABKR, hisz többfelhasználós, az egyesfelhasználók nem ugyanazt látják.Nem igazi ABKR, mert a lekérdezés hatékonyságaerősen függ az adatstruktúrától.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

98. dia

98

Lehetséges struktúrák egy hierarchikus modellben

AUTÓ

T1 T3T2

TUL.

A1 A3A2

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

99. dia

99

A hálós modell 1.

A CODASYL bizottság által létrehozott DBTG (Data Base Task Group) jelentései (1969-1971) hozták létre.Két évtizedig szinte kizárólag ezt használták.Terminológiai és metodológiai javaslatokat tartal-maz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 34: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

100. dia

100

A hálós modell 2.

Már bevezetett fogalmak:DDLDMLsémaalséma.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

101. dia

101

A hálós modell 3.

Új fogalmak:Area: valamilyen szempontból egységesen

kezelendő adathalmaz.Set: kétszintű fa, melynek gyökéreleme a

tulajdonos (owner), levelei a tagok(members).

A set-ek segítségével a legbonyolultabb hálóskapcsolatok is leírhatók.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

102. dia

102

Példa SET-ekre

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 35: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

103. dia

103

Kapcsolatok hálós modellben 1.

Kiss TóthNagy …

Angol OlaszNémet

K1 K2 K3 K4 K5 …

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

104. dia

104

Kapcsolatok hálós modellben 2.

Kiss Nagy …

AB-123

1998.02.01.2000.06.05.

…CD-456 EF-789

2000.06.05.?

2000.06.05.?

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

105. dia

105

Séma hálós modellben

Séma név.Zárak, kulcsok.Rekord leírások (kalkulált mezők, kódolt mezők).Kapcsolat leírások: SET-ek.AREA leírások.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 36: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

106. dia

106

Alséma hálós modellben

A séma leírás valódi része.Újdonság nem szerepelhet, de mindent át lehet nevezni.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

107. dia

107

Lekérdezés hálós modellben

Az eredeti javaslat a COBOL nyelvet javasolta (BATCH feldolgozás!), ezt váltotta fel a PL1, majd az interaktív felhasználás.

Fontos reprezentáns: IDMS (IBM 360 és 370: ESzR 1. és 2.).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

108. dia

108

Az IDMS specialitásai

Member-ek rendezése.Indexek készítése.Hashing algoritmus haználata.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 37: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

109. dia

109

A relációs modell 1.

A relációs modell ötlete Codd 1970-es cikkéből származik, így lényegében egyidős a DBTG jelentéssel. Két évtized után átvette a vezető szerepet, ma szinte kizárólag ezt használják, ezért ezt vizsgáljuk részletesen.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

110. dia

110

A relációs modell 2.

A reláció ebben az értelemben tulajdonképpen egytáblázat (table).A táblázat oszlopai a tulajdonságok (domains), asorai az n-esek (tuples).Gyakran nevezik azonban a sorokat rekordnak,az egyes oszlopokhoz tartozó értékeket mezőnek(field).Az R reláció sorainak hosszát r-el jelöljük.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

111. dia

111

Alapfeltételek relációkkal kapcsolatban

1. Ne legyenek teljesen megegyező tartalmú sorokvagy oszlopok,

2. a sorok és az oszlopok sorrendje ne hordozzoninformációt.

Azt a mezőt, vagy mezőkészletet, mely a sort (asor többi elemét) egyértelműen meghatározza,szuperkulcsnak nevezzük. A nem szűkíthetőszuperkulcs neve kulcs. (1. miatt van ilyen.)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 38: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

112. dia

112

Anomáliák

1. Módosítási anomáliaegy attribútum értéke több helyen szerepel, ígytöbb helyen kell módosítani (inkonzisztencia).

2. Beírási anomáliahiányos adatok miatt valamit nem lehet bevinni(információvesztés).

3. Törlési anomáliaegy sor törlésével olyan információ is elvész,amire még szükség lenne (információvesztés).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

113. dia

113

Példa anomáliákra

Egy reláció oszlopai:Tantárgyszám, tantárgynév, követelmény,oktatónév, oktatócím

• Változtassuk meg az oktató címét.• Mi történik, ha egy új tárgyhoz nincs oktató

kijelölve?• Mi történik, ha egy oktató kilép?

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

114. dia

114

Az anomáliák kiküszöbölése

A felsorolt anomáliák kiküszöbölhetők, arelációk olyan felbontásával (dekompozíció),melyek eredményei normalizált relációk.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 39: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

115. dia

115

1. Normálforma

A reláció 1NF értelemben normalizált, haminden sorának minden mező értéke egy elemiérték.

(Újabb rendszerek lehetővé teszik a figyelmenkívül hagyását.)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

116. dia

116

2. Normálforma

A reláció 2NF értelemben normalizált, ha 1NFértelemben normalizált, és ha egy mezőértékmeghatározásához összetett kulcs szükséges,egy másik mezőérték meghatározásához nemelegendő ennek egy része.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

117. dia

117

Példa 2. normálformára

cikkszám, ár, szállítási sorszám, cikkleírás

Anomália: ha az utolsó sort töröljük, elvész acikkszám, cikkleírás közötti összefüggés.

Ok: az ár azonosításához szükséges a cikkszám,szállítási sorszám összetett kulcs, a cikkleírásmeghatározásához elég a cikkszám.

Megoldás: dekompozíció.cikkszám, cikkleíráscikkszám, ár, szállítási sorszám

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 40: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

118. dia

118

3. Normálforma

A reláció 3NF értelemben normalizált, ha 2NFértelemben normalizált, és ha egy mezőértéksem függ olyan attribútum értéktől, vagy ezekolyan halmazától, mely nem kulcs.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

119. dia

119

Példa 3. normálformára

rendszám, gyártmány, típus, gyártási idő, szín

Ha egy időben csak egy színt használnak,törléskor elvész a gyártási idő és a szín közöttiösszefüggés.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

120. dia

120

Boyce-Codd (BCNF) normálforma

A 3NF tovább gondolása (3.5NF).A reláció BCNF értelemben normalizált, ha3NF értelemben normalizált, és ha egy összetettkulcs egy részét sem határozza meg másattribútum érték (nincs kulcstörés).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 41: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

121. dia

121

Példa BCNF normálformára 1.

tantárgy, tanár, diák

Tegyük fel, hogy egy tanár csak egy tárgyat oktat.Mi legyen a kulcs?

Egyszerű kulcs nem egyértelmű.tantárgy, tanár nem határozza meg a diákottanár, diák nem 2NF (a tanár meghatározza atantárgyat).tantárgy, diák nem BCNF (a tanár meghatá-rozza a tantárgyat).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

122. dia

122

Példa BCNF normálformára 2.

Anomália: törléskor eltűnik, hogy egy tanármilyen tárgyat tanít.

Megoldás: dekompozíció

tantárgy, tanártanár, diák

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

123. dia

123

Többértékű függőség

Az A1A2...AnB1B2Bm

többértékű függőség fennáll, haaz R reláció soraiból tekintve azokat, melyekminden Ai értéken megegyeznek, ezek Bj-kenfelvett értékei függetlenek az A-któl és B-ktőlkülönböző attributumok értékeitől.

A többértékű függőség nem triviális, ha 1. egyik B sincs az A-k között,2. az A-k és a B-k együttesen sem tartalmazzák R

összes atribútumát.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 42: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

124. dia

124

4. Normálforma

Egy reláció 4NF-ben van, ha valahányszor azA1A2...AnB1B2Bm nem triviális többértékű

függőség fennáll, akkorA1A2...An szuperkulcs.

Ha a reláció 4NF, akkor BNCF is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

125. dia

125

Példa többértékű függőségre I.Pl. legyenek az R reláció oszlopai:

Tanár Tantárgy Kar

Egy tanár több tárgyat taníthat, egy tárgyattöbben taníthatnak, egy tárgyat több karontanítanak, egy karon több tárgyat tanítanak.

TanárTantárgy és TantárgyKar fennáll, ésnem triviális.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

126. dia

126

Példa többértékű függőségre II.

Tanár Tantárgy Kar...

Nagy AB KGKNagy AB NIKKiss PPT NIK

...BCF, de nem redundancia mentes:pl. egy Tanár Tantárgy bejegyzés többször is

előfordulhat.Tanár Tantárgy nem szuperkulcs, azaz nem 4F.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 43: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

127. dia

127

Példa többértékű függőségre III.

Megoldás itt is a dekompozíció:Tanár Tanfolyam Tanár KarTárgy Kar

Vigyázat:Tanár TárgyTanár Kar

nem jó, mert elvész, hogy melyik tanár melyikkaron mit tanít.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

128. dia

128

További normálformák

Létezik 5NF, de kisebb jelentősége miatt nemfoglalkozunk ezzel.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

129. dia

129

A lekérdezés elve relációs rendszerekben

1. relációs algebra2. relációs kalkulus

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 44: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

130. dia

130

A relációs algebra 1.

Alapműveletek:1. Unió: RS2. Különbség: R-S3. Direkt szorzat: RS4. Projekció: i1,i2...ik (R)5. Szelekció: F (R)

ahol: Az F feltétel az [i] [j], és az [i] c elemikifejezések logikai műveletekkel (, , ) valóösszekötéséből állhat. tetszőleges összeha-sonlító operátort (=, , , , , ) jelenthet.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

131. dia

131

A relációs algebra 2.

Következmény műveletek:6. Metszet: RS

R S = R - (R - S)7. Hányados: R S

Feltesszük, hogy r > s, és s 0.)LegyenT = 1,2, ... r-s (R), továbbáV = 1,2, ... r-s ((T S)-R).Ekkor belátható, hogyR S = T - V.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

132. dia

132

A relációs algebra 3.

8. Belső kapcsolat (inner join)8a. Feltételes kapcsolat ( join):

R * S = [i] [r+j](R S)[i] [j]

8b. Természetes kapcsolat (natural join): R * SHasonló a feltételes kapcsolathoz de itt aszelekció feltétele az, hogy az azonos nevűoszlopokban azonos érték szerepeljen.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 45: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

133. dia

133

A relációs algebra 4.

9. Külső kapcsolat (Left, vagy Right Outer join):Tképpen egy join, de a szelekció valamelyikrelációból azokat a sorokat is meghagyja,melyekhez a másikban nem tartozik érték (itt aNULL érték fog szerepelni).

9a. Left Outer JoinA baloldali reláció minden sora legalábbegyszer szerepel.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

134. dia

134

A relációs algebra 5.

9b. Right Outer JoinA jobboldali reláció minden sora legalább egyszer szerepel.

9c. Full Outer JoinEgy Left- és egy Right Outer Join uniója.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

135. dia

135

Példa relációs algebrai műveletekre 1.

a b c da b e fb c e fe d c de d e fa b d e

R =

Számoljuk ki az R S művelet eredményét!

c de fS =

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 46: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

136. dia

136

Példa relációs algebrai műveletekre 2.

1 2 34 5 67 8 9

R =

Számoljuk ki az R * S művelet eredményét!B<D

A B C

3 16 2

S =

D E

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

137. dia

137

Példa relációs algebrai műveletekre 3.

a b cd b cb b fc a d

R =

Számoljuk ki az R * S művelet eredményét!

A B C

b c db c ed d b

S =

B C D

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

138. dia

138

Példa relációs algebra alkalmazására 1.

Tekintsük az alábbi három relációt.a.) Autók: jele A

Mezői: rendszám, gyártmány, típus, szín, ......b.) Emberek: jele E

Mezői: szemszám, név, foglalkozás, cím, .....c.) Kapcsolat: jele K

Mezői: forgrsz, szemszám.

Feladat: keressük ki a sárga opelek tulajdonosai-nak foglalkozását.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 47: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

139. dia

139

Példa relációs algebra alkalmazására 2.

A megoldás:

R1 = szín =sárga típus = opel (A)R2 = rendszám (R1)R3 = R2 * K

rendszám=forgrsz

R4 = szemszám (R3)R5 = R4 * ER6 = foglalkozás (R5)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

140. dia

140

Példa relációs algebra alkalmazására 3.

A megoldás egy lépésben:

f(szsz(K* (rsz (sz =sárga t = opel (A)))) * E)fsz=rsz

(foglalkozásf, szemszám szsz, forgrsz fsz,rendszám rsz, szín sz, típus t helyettesí-téssel).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

141. dia

141

A relációs kalkulus 1.

Létezik sor- és oszlopkalkulus, mi csak az előb-bivel foglalkozunk.A kalkulus az alábbi alakú kifejezésekből áll:

t (t)

melynek jelentése: azok a t sorok, melyek ki-elégítik a (t) függvényt, azaz amelyekre a (t)függvény értéke igaz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 48: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

142. dia

142

A relációs kalkulus 2.

Atomi formulának, vagy atomnak nevezzük, azalábbi kifejezéseket:

1.) R(s) (azaz az s sor R relációbeli),2.) s[i] u[j] (ahol s[i] az s-edik sor i-edik ele-

mét, u[j] az u-adik sor j-edik e-lemét jelenti, a szokásos össze-hasonlító operátor),

3.) s[i] c (ahol c egy konstans).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

143. dia

143

A relációs kalkulus 3.

A (t) függvény, melyet formulának nevezünk,az alábbiak szerint épülhet fel:

1.) Minden atom formula.2.) A formulákból a , , logikai műveletekkel

képezett kifejezések is formulák.3.) A (s)() alakú (van ilyan s, hogy igaz)

kifejezések is formulák.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

144. dia

144

A relációs kalkulus 4.

4.) A (s)() alakú (minden s olyan, hogy igaz)kifejezések is formulák.

5.) A kifejezések a precedencia (, , , , , )megváltoztatása érdekében zárójelezhetők.

6.) Más formula nincs.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 49: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

145. dia

145

A relációs algebra és kalkulus összehasonlítása 1.

A relációs algebra alapműveletei kifejezhetők arelációs kalkulus eszközeivel.

Unió: t R(t) S(t)Különbség: t R(t) S(t)Direkt szorzat: t(r+s) (u(r)) (v(s))(R(u) S(v)

t[1]=u[1] … t[r]=u[r] t[r+1]=v[1] … t[r+s]=v[s]

Projekció: t(k) (u)(R(u) t[1]=u[i1] … t[k]=u[ik]

Szelekció: t (R(t) F

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

146. dia

146

A relációs algebra és kalkulus összehasonlítása 2.

t R(t)értelmetlen, de nem írható le a rel. algebrában.

DOM fv.:A DOM() azon elemek halmaza, melyek

közvetlen, vagy közvetett módon -t alkotják.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

147. dia

147

A relációs algebra és kalkulus összehasonlítása 3.

Biztos kifejezések:1. Ha t kielégíti (t)-t, t minden komponense

DOM()-beli.2. minden (u)((u)) alakú részkifejezésére, ha

u kielégíti (u)-t minden komponenseDOM()-beli.

A rel. kalkulus biztos kifejezései ekvivalensek arel. algebra kifejezéseivel.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 50: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

148. dia

148

Lekérdezés relációs rendszerekben 1. (ISBL)

Korai IBM termék.Lényegében a relációs algebra kifejezéseinek

linearizálása.Nem felhasználóbarát.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

149. dia

149

Lekérdezés relációs rendszerekben 2. (QBE)

IBM termék.Tábla vázakat (skeleton) használ, ezeket vek-

torváltozók segítségével lehet összekapcsolni.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

150. dia

150

Példa QBE-re 1.

AUTÓK

OPELSÁRGA

gym. szín . . .rendsz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 51: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

151. dia

151

Példa QBE-re 2.

X

AUTÓK

OPELSÁRGA

gym. szín . . .rendsz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

152. dia

152

Példa QBE-re 3.

X

AUTÓK

OPELSÁRGA

gym. szín . . .

X Y

frsz. sz.sz. . . .

KAPCSOLAT

rendsz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

153. dia

153

Példa QBE-re 4.

X

AUTÓK

OPELSÁRGA

rendsz.

gym. szín . . .

X Y

frsz. sz.sz. . . .

KAPCSOLAT

Y

EMBEREK

Kiss tanár

… …

rendsz.

név fogl. . . .sz.sz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 52: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

154. dia

154

Lekérdezés relációs rendszerekben 3. (SQL)

Structured Query LanguageTöbb részből áll:1. DDL2. DCL3. DML4. Query

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

155. dia

155

SQL verziók1989 SQL1

1992 SQL2HibakódokAdattípusokAdatbázis struktúrákRendszertáblákProgramozható felületPortabilitás

Az SQL3-ról később lesz szó.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

156. dia

156

DDL

CREATE TABLEALTER TABLEDROP TABLE

CREATE VIEWDROP VIEW

CREATE [UNIQUE] INDEXDROP INDEX

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 53: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

157. dia

157

DDL példa I.

(A példák az érdekesség kedvéért nem az ORACLE, hanem MYSQL rendszerből valók.)

Create Database kutya;

Drop Database kutya;

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

158. dia

158

DDL példa II.

CREATE TABLE táblanév ( oszlopnév

oszlopleírás , …

esetleg index definíció

)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

159. dia

159

Kulcsok legfontosabb jelzői

Táblánként max egy mező lehet

• PRIMARY KEY

egyedi, nem lehet NULL értékű. Gyakran

egy (előjel nélküli) egész.

• AUTO_INCREMENT

automatikusan nő.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 54: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

160. dia

160

Minta tábla létrehozása

CREATE TABLE allatok (nev varchar(25),fajta varchar(20),szex char(1),szuld date,hald date );

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

161. dia

161

Minta tábla változtatása

ALTER TABLE allatok

ADD COLUMN

sorszam Integer Unsigned Primary Key Auto_Increment FIRST

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

162. dia

162

DCL

Tranzakció kezelés:COMMITROLLBACKLOCKUNLOCK

Jogosítvány kezelés:GRANT …. WITH GRANT OPTIONREVOKE

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 55: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

163. dia

163

DCL példa I.

GRANT jogok

ON adatbázisnév[,táblanév] TO felhasználó@ host IDENTIFIED BY ” jelszó”

WITH GRANT OPTION

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

164. dia

164

DCL példa II.

REVOKEjogok [, GRANT OPTION] ON adatbázisnév[.táblanév] FROM felhasználó@ host

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

165. dia

165

Tranzakciók

BEGIN WORK-el kezdődik,

COMMIT-al vagy

ROLLBACK-al végződik.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 56: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

166. dia

166

DML

INSERTUPDATEDELETE

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

167. dia

167

Insert

INSERT INTO allatok VALUES

(’Sajti’, ’eger’,’n’,’2004-02-02’,NULL);

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

168. dia

168

Update

UPDATE allatokSETnev=’kukac’WHERE nev = ’giliszta’

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 57: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

169. dia

169

QUERY

A SELECT utasítás valósítja meg. Legegyszerűbb formája:

select [distinct] oszlopnevek from táblanevek

[where feltétel]

[order by rendezési feltétel]

[group by feltétel [having having- feltétel]]

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

170. dia

170

Select

SELECT nev, szuld FROM allatok

WHERE faj =’kutya’ OR faj =’macska’ ORDER BY szuld DESC

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

171. dia

171

Keresés egymásba ágyazott SELECT-ek esetén

A WHERE részben alkalmazható újabb SELECT klauzula:

1. [NOT] IN (selectkifejezés)

2. Θ[ANY|ALL] (selectkifejezés)

3. [NOT] EXISTS

Több SELECT esetén a kiszámítás belülről kifelé történik.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 58: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

172. dia

172

Beágyazott (embedded) SQL I.

1. EXEC SQL <beágyazott SQL utasítás>

2. Változók használata V:V

3. Vezérlés:

NOT FOUND GO TO cimke WHENEVER SQL WARNING CONTINUE

SQL ERROR STOP

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

173. dia

173

Beágyazott (embedded) SQL II.

Egyetlen sort eredményező lekérdezések:

A SELECT utasításban rendszerint azINTO :változónév szerepel

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

174. dia

174

Beágyazott (embedded) SQL III.

Több sort eredményező lekérdezések:

Egy sormutatót (CURSOR) kell deklarálni, ezzel lehet a sorok között lépegetni (NEXT, PRIOR).

A CURSOR használatával módosítani is lehet a sorokat.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 59: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

175. dia

175

Beágyazott (embedded) SQL IV.

Dinamikus SQL

A fordításkor még (részben) nem ismert SQL utasítások.

PREPARE

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

176. dia

176

4GL program generátorok

1. FORM (űrlap)

2. REPORT (jelentés)

3. MENU

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

177. dia

177

Adatbázis kezelő architektúrák

Három fő rész:1.) Data processing (fizikai adatkezelés).2.) Business logic (adatvédelem és –integri tás,

tranzakció kezelés, stb.).3.) User interface

Hol helyezkednek el?

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 60: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

178. dia

178

Kliens-szerver architektúra

DP BL BL UI

Adatbázis szerver Kliens alkalmazás

AB

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

179. dia

179

Többrétegű architektúra

DP BL UI

Adatbázis szerver „Sovány” („Thin”)kliens alkalmazás

AB

Középső réteg(middle-tier)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

180. dia

180

Tárolt rutinok

A szerveren tárolódik és hajtódnakvégre.

CREATE PROCEDURE procnév(IN|OUT | INOUT parnév partípus)törzs

CREATE FUNCTION funcnévRETURNS rettípusIN | OUT | INOUT parnév partípus)törzs

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 61: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

181. dia

181

Tárolt rutinok hívása

PROCEDURE eseténCALL procnév(paraméterek)

FUNCTION eseténkifejezésben használható(a RETURN utáni érték tér vissza)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

182. dia

182

Utasítások tárolt rutinban 1.

BEGIN … ENDtöbb utasítást összefog

DECLARE varnév típus

[DEFAULT érték]A begin-end között él.

SET varnév=kifejezés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

183. dia

183

Utasítások tárolt rutinban 2.

SELECT oszlopnév INTO varnév táblakifCsak egy sor!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 62: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

184. dia

184

Vezérlés tárolt rutinban 1.

IF feltétel THEN utasítások [ELSEIF feltétel THEN utasítások] …

[ELSE utasítások]END IF

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

185. dia

185

Vezérlés tárolt rutinban 2.

CASE case_érték

WHEN feltétel THEN utasítások [WHEN feltétel THEN utasítások] …

[ELSE utasítások]END CASE

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

186. dia

186

Vezérlés tárolt rutinban 3.

CASE

WHEN feltétel THEN utasítások [WHEN feltétel THEN utasítások] …

[ELSE utasítások]END CASE

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 63: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

187. dia

187

Vezérlés tárolt rutinban 4.

[kezdőcimke:] LOOPutasításokEND LOOP [végcimke]

LEAVE cimke

ITERATE címke

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

188. dia

188

Vezérlés tárolt rutinban 5.

[kezdőcimke:] REPEATutasításokUNTIL feltételEND REPEAT [végcimke]

[kezdőcimke:] WHILE feltétel DOutasításokEND WHILE [végcimke]

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

189. dia

189

Kurzorok tárolt rutinban

DECLARE curnév CURSOR FOR select_utváltozó deklaráció után!

OPEN curnév

FETCH curnév INTO

varnév CLOSE curnév

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 64: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

190. dia

190

Triggerek

CREATE TRIGGER név idő eseményON táblanév FOR EACH ROWutasítás

Idő: BEFORE | AFTEREsemény: INSERT | UPDATE | DELETETöbb utasítás BEGIN… END

Változtatásnál OLD.oszlopnév ésNEW.oszlopnév használható

DROP TRIGGER tábla.név

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

191. dia

191

Osztott adatbázisok

Megnövekedett a kommunikációs költségek rész-aránya. Javaslat: helyezzük az adatokat a fel-használóhoz közel.Osztott (distributed) adatbázis:fizikailag megosztott, de logikailag egységesadatbázis.

Adatbázis felügyelet: központi, csomóponti.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

192. dia

192

Osztott adatbázisok előnyei1.) A kommunikációs költségek csökkenése.2.) Mindenki a számára ismerős adatokat gon-

dozza.3.) Egy-egy csomópont kiesése esetén a többi

adatai továbbra is elérhetőek.4.) Lehetséges a moduláris tervezés, a rugalmas

konfigurálás.5.) Hosszabb idő alatt a rendszer gépei akár ki is

cserélhetők.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 65: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

193. dia

193

Osztott adatbázisok hátrányai

1.) A rendszer bonyolultabb és sebezhetőbb lesz,2.) Nem könnyű minden csomópontra egyformán

jó személyzetet találni, másrészt, ha találunkfenyeget a szuboptimalizáció veszélye.

3.) Mindig valamennyi gépnek működnie kell.4.) Többféle hardvert és szoftvert kell a rend-

szernek kezelnie és "összehoznia".5.) Bonyolult a jogosultságok ellenőrzése.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

194. dia

194

Osztott adatbázisok konzisztenciája

Külön problémát jelent, ha feladjuk a redun-dancia-mentesség elvét. Erre okot szolgáltathat azis, ha nem eldönthető egy-egy adatról, hogy holhasználják legtöbbet, de biztonsági okokból isdönthetünk egy-egy adat többszörözése mellett.Ilyen estekben biztosítanunk kell, hogy az egyespéldányok tartalma azonos legyen, azaz arendszer konzisztens maradjon.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

195. dia

195

Elemzések

1. Forrás nyelő elemzés

A használat gyakorisága, módja.

2. ABC elemzés

A „nélkülözhetetlenség” foka.

3. Érzékenység elemzés

A költség/teljesítmény arány.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 66: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

196. dia

196

Konzisztencia, konvergencia

Létezik

• Erős konzisztencia

• Gyenge konzisztencia

Koherencia: a konzisztencia mérő száma, mely erős konzisztenciánál azonosan 1 értékű, gyenge konzisztenciánál pedig 1-hez tart.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

197. dia

197

Szinkronizációs protokollok

A. Központosított protokollok

a.) A központi zárellenőrzés

b.) A zseton módszer

c.) Az elsődleges példány módszer

B.) Osztott protokollok

Az időbélyeg módszer

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

198. dia

198

Adatvédelem

a.) Fizikai védelem

b.) Ügyviteli védelem

c.) Algoritmikus védelem

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 67: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

199. dia

199

Algoritmikus védelem

a.) felhasználó azonosítás, partner azonosí-tás

b.) hozzáférés védelem

c.) rejtjelezés

d.) üzenethitelesítés

e.) digitális kézjegy

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

200. dia

200

Rejtjelezés

y = E(x) x = D(y)

Legyen „megfejthetetlen”.

Mivel sok kell, legyen:

y = E(kr,x) x = D(kf, y)Védetlen közeg

Védetlen közeg

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

201. dia

201

A rejtjelezés felosztása

1. Konvencionális a rejtjelezés, ha a rejtő kulcsból a fejtő kulcs meghatározható.

2. Nyílt (nyilvános ) kulcsú a rejtjelezés, ha rejtő kulcsból a fejtő kulcs nem határozható meg.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 68: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

202. dia

202

A konvencionális kódolás

a.) Helyettesítés

b.) Periodikus helyettesítés

c.) Kulcsfolyam(at)os rejtés

d.) Rejtjelötvözés vagy keverő transzformációk

(Shannon, 1949)

Lucifer (128 bites blokk, 128 bites kulcs)

DES (64 bites blokk, 56 bites kulcs )

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

203. dia

203

A nyilvános (rejtő) kulcsú kódolás

a.) MIT módszer (prímfelbontás).

b.) Merkle-Hellmann módszer (hátizsák problé-ma).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

204. dia

204

Kulcsgondozás

Ha a kulcsok megfelelő védelme nembiztosított, az egész kódolási rendszerértelmetlen. A kulcsok gondozása háromfeladatból áll.

a.) kulcsgenerálás

b.) kulcskiosztás

c.) kulcstárolás

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 69: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

205. dia

205

Kulcsgenerálás

Az a művelet, melynek eredményeképpen akulcsok előállnak. Egy valódi véletlenszámgenerátor segítségével végrehajtható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

206. dia

206

Kulcskiosztás

Példák:

a.) Alapkulcsok

b.) Merkle „rejtvény” módszere

c.) A "hatványozós" módszer

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

207. dia

207

Alapkulcsok

A kulcsok kiosztása történhet egy alapkulcskészleten keresztül, melyet rendszeren kí-vüli eszközökkel juttatnak el a résztvevők-höz. Az alapkulcsokat, melyek gyakrannyilvános kulcsú rendszerhez tartoznak,csak a kulcsok cseréjéhez használják.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 70: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

208. dia

208

Merkle „rejtvény” módszere

A hívó fél n db (Ki, Ii) párt küld partneré-nek gyengén kódolva. Ez egyet kiválaszt, fel-töri, és Ii-t visszaküldi. Ezzel a kommuni-káció kulcsa meghatározott. A behatolónakátlagosan a párok felét kell ahhoz feltörnie,hogy megtudja, Ii-hez melyik Ki tartozik.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

209. dia

209

A "hatványozós" módszer 1.

A módszer alapja, hogy az i és a j felhasználókitalál egy-egy xi ill. xj számot.

Egymás között kicserélik az

Yi = xi (mod p),

ill. az

Yj = xj (mod p)

számokat (p prímszám, a p elemű véges test egyprimitív eleme).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

210. dia

210

A "hatványozós" módszer 2.

A a kommunikáció kulcsa a

K = xi * xj

szám (vagy annak valamilyen függvénye)lehet. Ennek előállítása mellett Yj és xi

vagy Yi és xj ismeretében egy egyszerűhatványozást igényel, a behatolónak vi-szont a diszkrét logaritmusképzés afeladata.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 71: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

211. dia

211

Kulcstárolás

Nehézségeket okozhat, ha a kulcsokat akár túlkevés, akár túl sok ember ismeri.

Megoldást jelentenek az u.n. (n,k)küszöbrendszerek. E rendszerek lényege, hogya kulcsot n db. (nem feltétlenül diszjunkt)részre osztva, bármelyik k kulcsrészletből akulcs előállítható, de nincs olyan k-1 kulcs-részlet, amiből ez megtehető lenne. Ilyenküszöbrendszerek készítésére többmatematikai módszer is rendelkezésünkre áll.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

212. dia

212

Felhasználó azonosítás

Személy azonosítás:

a.) jelszóvédelem

b.) fizikai azonosító használata

c.) személyi jellemzők

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

213. dia

213

Partner azonosítás 1.

A számítógép-számítógép kapcsolatokban isszükség lehet azonosításra. E célra fenntart-hat minden számítógép pár egy-egy kulcsot,ez azonban egy n elemű hálózatnál n2 kul-csot jelent. Folyhatnak az információcserékvalamilyen hitelesítő központon keresztül, ezazonban a kommunikáció költségét növelijelentősen.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 72: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

214. dia

214

Partner azonosítás 2.Megoldás:ha minden csomópont egy, csak a

hitelesítő központ által ismert kulccsal tud eközponthoz bejelentkezni, s üzenet továbbításiigényét bejelente-ni. A központ jelöli ki akommunikáció kulcsát, melyet a fenti kulccsalkódolva a hívónak visszaküld. Emellett küldegy csomagot, mely a hívandó fél kulcsávalkódolva tartalmazza a kommunikáció kulcsát,s a hívó megjelölését. Ha a hívó e csomagot ahívott félhez továbbítja a párbeszéd kettejükközött folytatódhat, s az azonosítás is kielégítőbiztonsággal történt meg.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

215. dia

215

Hozzáférésvédelem

Nem elegendő kiszűrni a jogosulatlan behato-lókat, a rendszernek azt is számon kell tar-tania, hogy a jogos felhasználók hatásköre mi-re terjed ki. A felhasználó által működtetettügynök folyamatok hatáskörét a hozzáférésimátrix szabja meg. Ennek elemeit akár ügynö-kökhöz, akár adatokhoz kötötten tárolhatjuk.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

216. dia

216

Üzenethitelesítés

Az üzenetek hitelesítéséhez két feltétele van,egyrészt ellenőrizni kell, hogy egy-egyblokkban az és csak az érkezett-e a címzetthezamit a feladó feladott, másrészt tudnunk kellazt is, hogy az egyes blokkok abban a sor-rendben érkeztek e meg amilyenben feladtákőket (ideértve azt is, hogy nem hiányzik-e kö-zülük). Az első célhoz ellenőrző összegeket, amásodikhoz sorszámot célszerű a blokkban el-helyezni még a kódolás előtt.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 73: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

217. dia

217

A digitális kézjegyarra szolgál, hogy segítségével a címzettmegbizonyosodhassék egy üzenet feladójárólés bizonyíthassa, hogy az illetőtől kapott ilyenüzenetet. Olyasmire van szükség tehát mint azaláírás, ami könnyen azonosítható, de nehezenhamisítható.

A cél elérhető úgy is, hogy a kényes kommu-nikációt egy hitelesítő központ közbeiktatá-sával végezzük (mintha tanú előtt beszélnénk)ez az u.n. nem valódi digitális kézkegy.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

218. dia

218

A valódi digitális kézjegy

Ehhez egy nyilvános kulcsú kódolási rendszerlehet felhasználni, mégpedig olyant, mely"megfordítható", azaz E(D(x)) = x (az álta-lunk említett módszerek ilyenek). Rejtsünk atitkos fejtő kulccsal (és fejtsünk a nyílt rejtőkulccsal). A címzett, ha a nyílt kulccsalfejthető üzenetet kap, biztos lehet abban, hogyazt csak a titkos kulcsot ismerő feladóküldhette. Mivel a címzett nem ismeri a titkoskulcsot, ha rendelkezik az üzenetnek a nyíltkulccsal megfejthető kódolt változatával,nyilvánvaló, hogy azt ő nem készíthette.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

219. dia

219

Továbbfejlesztett modellek

1. Az EER modell.2. Nested Relational Model. 3. Structural Data Model.4. Objektum-orientált adatbázisok.5. Deduktív adatbázisok.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 74: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

220. dia

220

Az EER modell

Subclass, superclass bevezetése.(Közös tulajdonságok, kapcsolatok leírása.)

A hierarchiában a superclass tulajdonságai öröklődnek (inheritance).

Relációkkal megvalósítható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

221. dia

221

Az EER modell felosztása

1. A subclass lehet attribútum által meghatározott, vagy felhasználó által definiált.2. A felosztás lehet diszjunkt (disjoint), vagy átfedő (overlap). 3.) Ugyancsak lehet a felosztás teljes (complett) vagy részleges (partial).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

222. dia

222

Példa EER modellre

Japán Sport Diesel

AUTÓ

Subclasses

Superclass

A subclass-ok nem diszjunktak, a felosztás részleges!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 75: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

223. dia

223

Az EER modell használata

1.) SpecializációMegkeressük az egy-egy csoportra jellemző tulajdonságokat.2.) Generalizáció.Megkeressük a közös tulajdonságokat.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

224. dia

224

Példa Specializációra

Mérnök Technikus Szakm.

Munkavállaló

Subclasses

Superclass

Havidíjas Órabéres Darabbéres

Munkavállaló

Subclasses

Superclass

Lehet több szempont szerint is:

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

225. dia

225

Példa Generalizációra

Autó Kerékpár Motork.

Jármű

Subclasses

Superclass

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 76: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

226. dia

226

Kategória

Rt. Személy Kft.

Tulajdonos

Kategória az a subclass, melynek több superclass-a van.Itt az öröklés szelektív lehet.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

227. dia

227

Nested Relational Model

Nem 1NF, ezért nevezik N1NF modellnek is.

Onév OvezOszám

Gynév Gykor

OcímDnév

Gyerekek

Dolgozó

Egy osztály sémája

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

228. dia

228

Structural Data Model 1.

Az eredeti relációs modell továbbfejlesztése.

Két típus:1.) Relations2.) Connections

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 77: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

229. dia

229

Structural Data Model 2.

Relations1.) Primary: nem kapcsolódik hozzá semmi.2.) Referenced: kapcsolódik hozzá reláció.3.) Nest: többértékű attribútumot tartalmaz.4.) Association: M:N kapcsolatot reprezentál.5.) Lexicon: egy az egyhez kapcsolat az

attribútumok között.6.) Subrelation: csak egy másikkal együtt van

értelme.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

230. dia

230

Structural Data Model 3.

Connections1.) Ownership: tulajdonos és a hozzátartozó

nest, vagy association reláció között. 2.) Reference: referenced relations-ok között.3.) Identity: reláció és subrelation között, azaz ahol a primary key és a foreign key azonos.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

231. dia

231

Komplex típusok

1. kollekciók (collections)set-ek (többértékű tulajdonságok)tömbökmultiset-ek (többszörös előfordulás)

2. struktúrált típusoktípusdeklarációktípusokhoz kötött metódusok

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 78: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

232. dia

232

OODB 1.

Az ötlet az OOP alapján keletkezett.Jellegzetességek:1.) Az objektumosztályok perzisztensek.2.) Az objektumosztályok osztottak.3.) Minden objektumnak külön azonosítója

(OID) van (nem azonos a kulccsal, az kü-lönbözhet relációnként).

4.) Megengedettek a bonyolult objektumok (pl. egy objektumon belüli több reláció, stb.).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

233. dia

233

OODB 2.

EncapsulationAz értékeket u.n. instance variable-ok tartalmaz-zák. ez hasonlít az attributum –hoz, de kívülről rendszerint nem látható, csak az előre definiált operációk férhetnek hozzá (metódus).Egy operációnak két része van:1.)Signature, vagy interface: a név és a paramé-

terek.2.)Method, vagy body: az implementáció.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

234. dia

234

OODB 3.Inheritance, polymorphismA szokásos. Érdekes az operátorok polimorfizmu-

sa, azaz az a tulajdonság, hogy egy operátor név-hez többféle implementáció tartozhat az objek-tum típu-sától függően (másnéven operator overloading. Kell hozzá a late binding!).

KapcsolatokAz encapsulation miatt nehézségek adódhatnak.1. Kapcsolatot kereső metódusok.2. References:az objektum tartalmazza a kapcsolt

objektumok OID-jét.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 79: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

235. dia

235

Az O2 adatdefiniálás I.

A séma objektum típusokat és osztályokat definiál. Az objektum típusokat az u.n. atomi típusok használatával és az O2 típus konstruktorok alkalmazásával definiálhatjuk.

Atomi típusok: Boolean, character, integer,real, string és bits.

A típus konstruktorok: tuple, list, set, unique set.Az O2 metódusok nem részei a típus definíciónak.Az osztály definíció két részből áll:típus és metódus

megadásból.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

236. dia

236

O2 adatdefiniálás II.

A Különbség van az O2-ben értékek (value) és objektumok között.

Az értéknek csak típusa van, és önmagát reprezentálja.

Az objektum egy osztályhoz tartozik és így van egy típusa és vannak metódusai, melyeket az osztály határoz meg.

Mind az értékek, mind az objektumok komplex típusúak, és ezek lehetnek értékek, vagy lehetnek hivatkozások más objektumokra az OID használatával.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

237. dia

237

O2 adatdefiniálás III.

Az O2-nek van egy saját nyelve az O2C, ezen lehet definiálni osztályokat, metódusokat, típusokat, továbbá létrehozni (create) objektumokat és értékeket.

Az objektumok lehetnek perzisztensek (állandóan tárolva vannak az adatbázisban) és tranziensek (csak egy program végrehajtása alatt léteznek), az értékek tranziensek, (hacsak nem részei egy perzisztens objektumnak).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 80: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

238. dia

238

O2 adatdefiniálás példa

type telefon: tuple (körzetszám: integer,telefonszám: integer);

class személy: type tuple( név: tuple (vezetéknév:string,

keresztnév:string),szülinap: Date,

...method kor:integer

end

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

239. dia

239

Az O2 adatmanipulálás

Adatmanipulálási lehetőségek:• az O2SQL lekérdező- és az O2C program nyelv,• beágyazott pl. C++-ba.

Fejlesztő környezetek: • O2Look (interface O2C-hez),• O2Tools (grafikus fejlesztői környezet).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

240. dia

240

Az Objectstore rendszer

A C++ nyelvhez készült, annak objektum deklarációs utasításait használja.

Adatmanipuláláshoz is a C++-t használhatjuk, de van grafikus interface is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 81: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

241. dia

241

Az OQL

Object Query Language

Egy objektum orientált nyelv kiterjesztésének fogható fel.

Az SQL funkcióinak megfelelő, de azokkal nem teljesen megegyező utasításokat tartalmaz.

A lényeg az objektum, a reláció fogalma ehhez képest másodlagos.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

242. dia

242

Object-Relational DatabasesSQL3 (SQL1999)

OODB használatára készült szabvány.A lényeg a reláció, az objektum fogalma

ehhez képest másodlagos.

Felűlről kompatibilis a korábbi SQL szabványokkal.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

243. dia

243

Új lehetőségek

• Felhasználó által definiált típusok• Táblák közötti öröklés• Típus konstruktorok• Felhasználó által definiált eljárások és

függvények• Nagy objektumok kezelésének támogatása

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 82: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

244. dia

244

Felhasználó által definiált típusok

• Abstract Data Type (ADT)• Row Type• Collection Types

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

245. dia

245

Abstract Data Type (ADT) I.

Attribútumok és operációk egy entitásban.Az attribútumok lehetnek „stored” és „virtual”

típusúak.A „stored attribute”egy attribútum név és egy

adattípus segítségével adható meg (az adattípus maga is lehet ADT). Ehhez automatikusan tartozik egy get és egy set metódus.

A „virtual attribute”esetén az értéket egy függvény adja meg.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

246. dia

246

Abstract Data Type (ADT) II.

Az operációk rutinokként tárolódnak.Az ADT lehet „subtype”-ja egy „supertype”-nak,

mely örökli annak tulajdonságait (Többszörös öröklés is megengedett).

Egy ADT perzisztensen csak táblák oszlopaiként tárolható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 83: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

247. dia

247

Row Type

Mezőnév/Adattípus párokból áll.Egy változóban tárolható, így lehet egy rutin

argumentuma, ill. egy függvény által visszaadott érték.

Lehet neve(Named Row Type).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

248. dia

248

Collection Types

Halmazok, listák, multihalmazok definiálhatóak.A táblák oszlopaiban ezek is tárolhatók.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

249. dia

249

Táblák közötti öröklés

Egy tábla lehet „subtable”-ja egy „supertable”-nak, mely örökli annak tulajdonságait, de természetesen definiálhatók benne új oszlopok is.

(Független az ADT „subtype” tulajdonságától!)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 84: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

250. dia

250

Egységbe zárás

Az ADT minden attribútuma és metódusa lehetPublic (azaz minden megfelelő jogosítvánnyal

rendelkező felhasználó számára látható),Private (azaz csak az ADT-n belül látható),Protected (azaz az ADT-n és annak leszármazottain

belül látható).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

251. dia

251

Öröklés

Az ADT-nál „supertype” , „subtype” , között.Tábláknál „supertable” és „subtable” között.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

252. dia

252

Többalakúság

Az ADT „subtype”-ban a metódusok újradefiniálhatók (létezik az „overloading).

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 85: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

253. dia

253

Műveletek

Az SQL3-ban a „hagyományos” programozás műveletei is használhatóak:

• Értékadás • CALL, RETURN• CASE• IF, THEN, ELSE, ELSEIF• LOOP, WHILE REPEAT

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

254. dia

254

Deduktív adatbázisok

A logikai programozás eszközeivel dolgozik.Deklaratív nyelvet (pl. PROLOG PROgramming in LOGic) használ. ezen írja le atényeket és a szabályokat, a már ismert tények és szabályok felhasználásával juthatunk új tényekhez.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

255. dia

255

Családfa

III. Béla

Imre II. Endre

IV. Béla

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 86: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

256. dia

256

Tények, szabályok

A PROLOG-ban tények és ha…akkor típusú szabályok vannak

Tények:apja(Béla3,Imre)

apja(Béla3,Endre2)

apja(Endre2,Béla4)

Szabály:Ha apja(X,Z) és apja(Z,Y) akkor nagyapja(X,Y)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

257. dia

257

Kiegészítendő kérdés

Ki a nagyapja IV. Bélának?

?nagyapja(X,Béla4)

Válasz: X = Béla3

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

258. dia

258

Eldöntendő kérdés

Nagyapja II, Béla IV. Bélának?

?nagyapja(Béla2,Béla4)

Válasz: igen

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 87: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

259. dia

259

Kiegészítendő kérdés

Kik vannak nagyapa-unoka viszonyban?

?nagyapja(X,Y)

Válasz: X = Béla3, Y = Béla4

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

260. dia

260

Végrehajtási mechanizmus

Mintaillesztés:Két kifejezés akkor illeszthető, ha a bennük szereplő változókhoz találunk olyan helyettesítést, amelyek a két kifejezést közös formára hozzák.Visszalépéses keresés.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

261. dia

261

A végrehajtás menete

Nagyapja(X,Y)

X= Béla4 X = Imre X=Endre2 X=Béla3 X=Béla3

Nem apa Nem apa Fia Béla4 Fia Imre Fia Endre2Zsákutca Zsákutca

Nem apa Nem apa Fia Béla4Zsákutca Zsákutca

Y=Béla4

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 88: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

262. dia

262

A PROLOG előnyei

Jól olvasható.Könnyen módosítható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

263. dia

263

A PROLOG hátrányai

Nem tudja a bizonytalanságot kezelni.Hiányos ismereteket nem tud kezelni.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

264. dia

264

Hagyományos igények

OLTP (On Line Transaction Processing):- az ábrázolt mini világ minden adatát

tartalmazza- az utolsó állapotot mutatja- sok adatmódosítás- egy-egy tranzakció kevés adatot érint- viszonylag egyszerű, de ad hoc kérdé-

sekre is tud válaszolni- a válaszidő kicsi - jellemző több, párhuzamosan működő

felhasználó

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 89: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

265. dia

265

Új igények

1. Adatfolyamok feldolgozása.

2. Előre elkészített, aggregált adatok a vezetőknek: DSS (Decision Support System).

3. Nem ismert összefüggések kiderítése:Tudásfeltárás (Data Mining, adatbányászat)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

266. dia

266

Adatfolyamok feldolgozása I.

Pl. szenzorok állandóan tömegével generálnak adatokat, ezeket nem tároljuk mind le, de kérdéseink lehetnek.

Forgalom figyelés: hálózati, banki, közlekedési,stb.

Naplózás: meteorológiai, egézségügyi, ipari, stb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

267. dia

267

Adatfolyamok feldolgozása II.

Új eszközök (részben az SQL kiterjesztésével)

Stanford University: CQL (Continuus Query Language)

Cornell University:COUGAR

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 90: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

268. dia

268

Adatfolyamok feldolgozása III.

1. Az ilyen kérdések hosszú ideig működnek.2. Sokszor a megválaszoláshoz hagyományos adatbázis is kell.

Probléma: hogyan kezeljük az adatbázis adatainak változását?

(Pl. kereskedelmio forgalom vizsgálata, de az árak és az ügyfelek címei hagyományos

adatbázisban.)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

269. dia

269

DSS (Decision Support System)

OLAP (On Line Analitical Processing)

Megoldásai:ROLAPMOLAP

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

270. dia

270

OLAP- nem feltétlenül egészen up-to-date- csak az elemzéshez szükséges adatokat

tartalmazza, ezek azonban több mini világból származnak

- tartalmazza a régi adatokat (trendek)- jellemzően olvas, de bonyolult elemzéseket végez- a válaszidő nem kritikus- látványos riportok, ezek könnyen elérhetőek

(intra- internet, wap, sms, stb.)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 91: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

271. dia

271

ROLAP

Relational On Line Analitical Processing:

a jól ismert és bevált relációs eszközöket használja, ezek azonban nem erre a célra készültek.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

272. dia

272

MOLAPMultidimensional On Line Analitical Processing:

Az adatokat egy többdimenziós kockában tárolja. Könnyű megvizsgálni egy kiválasztott élnek a többitől való függését.- lassan kiépíthető, hardware igényes rendszer- gyorsan ad választ a várt kérdésekre.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

273. dia

273

Adatbázisok összekapcsolása

AdatbI.

AdatbVI.

AdatbV.

AdatbIV.

AdatbIII.

AdatbII.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 92: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

274. dia

274

Data Warehouse: Adattárház

Bill Inmon:„Az adattárház rendszer egy témaorientált, integrált, nem változó, idővariáns adatrendszernek tekinthető, melynek elsődleges célja a stratégiai döntések támogatása.”

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

275. dia

275

Témaorientált

A döntéshozó számára válogatott, csoportosítottadatokkal dolgozik, nem a nyilvántartás kulcsai (Pl. ügyiratszám, stb.) alapján.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

276. dia

276

Integrált

Több adatbázisból származó adatok jelölése, mértékegysége, stb. egységesítésre kerül.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 93: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

277. dia

277

Nem változó

A már bekerült adatok nem törlődnek, nem változnak.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

278. dia

278

Idővariáns

Az adatokhoz hozzátartozik a keletkezési idő is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

279. dia

279

Adatrendszer

Struktúrált rendszer:több szint, pl. összesítés foka szerint, stb.Metaadatok is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 94: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

280. dia

280

Metaadatok

Mikor töltődött le,honnan, hogyan,mi a mértékagysége,milyen módon számították,hozzáférési jogosultságok,stb.Metaadatok a felhasználás során is keletkezhetnek (pl. a felhasználás folyamán keletkezett információk)!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

281. dia

281

Adattárház létrehozása

AdatbII.

AdatbIII.

AdatbI.

KinyerőI.

KinyerőII.

KinyerőIII.

Adattárház

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

282. dia

282

Kinyerők feladatai

Adatelérés,szűrés,ellenőrzés,transzformáció,stb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 95: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

283. dia

283

Adattárház használata

Jelentés készítés OLAP Adatbányászat

Adattárház

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

284. dia

284

Data Marts: Adatpiacok

AB 1.

AB n.

Operatív adatok

AP 1.

AP n.

Adattárház

Adatpiacok

. . .. . .

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

285. dia

285

Adatpiacok: definíciók

1. Az adatpiac az adattárház egyik fontos komponense, egy, kiválasztott tárgyaknak osztályhoz kötött részhalmaza.

2. Az adatpiac egy alkalmazás-központú adattárház, a teljes adattárház egy része.

3. Az adattárház nem más, mint adatpiacok összessége.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 96: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

286. dia

286

Adatpiacok: előnyök1. Adatkezelés: minden osztály maga állapíthatja meg az általa használt adatok struktúráját.2. Relevancia: egy-egy osztály eldöntheti, hogy a historikus adatokból menynyire van szükség.3.Önálló felhasználás: minden osztály maga döntheti el, mikor , milyen folyamatot futtat.4. Hatékonyság: a kisebb egységek kezelése olcsóbb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

287. dia

287

Adatpiacok: egyéb tulajdonságok

Különféle célokra sok adatpiac építhető ki egy adattárház ból, ezek akár átfedőek is le-hetnek.

Egymástól függetlenül kiépült adatpiacok egy hálózatban egy virtuális adattárházat alkothatnak.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

288. dia

288

Tudásfeltárás

Definíció:rejtett, ismeretlen, potenciálisan hasznos tudás kinyerése az adatokból nem triviális módon.

Több tudományágat átfogó kutatási terület.

Adatbányászat: az adatok összefüggéseinek feltárása.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 97: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

289. dia

289

Lépések

• adatkiválasztás• adattisztítás• bővítés• szűkítés• kódolás• adatbányászat• jelentéskészítés

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

290. dia

290

Minta feladat

Egy kiadó magazinokat árul.Kapcsolatokat keresünk az előfizetők tulajdonságai és előfizetési szokásai között.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

291. dia

291

Adatkiválasztás

Kiválasztjuk a szükséges adatokat az operatív adatbázisokból.

Pl.ügyfélszámnévcímelőfizetési dátummagazin neve

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 98: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

292. dia

292

Tisztítás

• Véletlen kettőződések• Név elírások (Kotsis, Kocsis, Kotsits)• Kitöltés hiánya (alapértelmezés)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

293. dia

293

Bővítés

Hozzáveszünk újabb adatokat:születési időjövedelemvan-e autójavan-e házastb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

294. dia

294

Szűkítés

Kihagyhatunk sorokat:pl. nincs kitöltve (?)

Kihagyhatunk oszlopokat:pl. a név nem kell már (a tisztításhoz kellett!)

Jól meggondolni, mert elveszíthetünk fontos információkat!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 99: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

295. dia

295

Kódolás

Főként, ha az adat „túl részletes.

Pl.Születési dátum helyett: korkategóriaCím helyett: régió kódElőfizetés kezdete helyett: időtartam hónapokbanJövedelem helyett: ezerrel(?) osztvastb.

Alapvetően befolyásolhatja az eredményt!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

296. dia

296

Adatbányászat

Sokféle technika lehet, néhány ezek közül:

hagyományos lekérdező eszközökstatisztikai technikákvizuális technikákhasonlóság, távolság, szomszédságdöntési fáktársító szabályokstb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

297. dia

297

Hagyományos lekérdező eszközök

Egyszerű lekérdezések: pl. átlagszámítások.

Ezek szabhatják meg a további lépéseket!

(Pl. ha egy magazint 10 % vásárol, egy „90%-osan jó” módszer azt mondhatja, hogy ez nem kell senkinek!)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 100: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

298. dia

298

Statisztikai technikák

Összefüggéseket keresünk:kor és vásárolt magazinkét magazint vásárlók tulajdonságaistb.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

299. dia

299

Vigyázat! I.

Csak az olyan összefüggés nyereség, ami nem triviális: Pl. nem meglepő, ha egy konkrét újságnál is ugyanazt az eloszlást tapasztaljuk a vásárlók életkora szerint, ami általában igaz.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

300. dia

300

Vigyázat! II.

Estleg a statisztikában mutatkozik olyan halmaz, aki semmilyen magazinra sem fizet elő. Ez adatszennyeződés, érdemes megvizsgálni, mi lehet az oka.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 101: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

301. dia

301

Vizuális technikák

Mivel nem tudjuk mit keresünk, segíthet, ha a számítógép ábrázoljuk a különféle eloszlásokat, esetleg időben változva. Érdekes összefüggéseket vehetünk észre.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

302. dia

302

Hasonlóság és távolság

A rekordokat tekinthetjük egy n dimenziós tér pontjainak. Közöttük lehet távolságot definiálni. (Legegyszerűbb az euklideszi távolság:

________________

(x1-y1)2+. . . (xn-yn)2

Érdekes csoportokat találhatunk.Kérdés: hány dimenziót vizsgáljunk?(És melyek legyenek azok?) Projekció!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

303. dia

303

Megjegyzés

Az OLAP eszközök is ilyenek, használhatóak is az adatbányászatban, de azok rögzített kérdésekre adnak választ.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 102: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

304. dia

304

Vigyázat!

A távolság numerikus értékét meghatározza a kódolás!Pl.: a jövedelem nagyságrendje más, mint a koré: a fontossága is más lesz!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

305. dia

305

Szomszédság

A k db. legközelebbi szomszéd viselkedése adhat előrejelzést a vizsgált objektum viselkedésére.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

306. dia

306

Vigyázat!

A túl egyenletes eloszlásnál nem mond semmit, nincsenek jellegzetes osztályok.

Túl sok dimenzió esetén nem lesznek jellegzetes osztályok.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 103: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

307. dia

307

Cluster elemzés

Osztályokba soroljuk a hasonló elemeket.Az emberi gondolkodás alapeleme.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

308. dia

308

Adatmátrix

X11 ……… X1f ………..X1p

.

.Xi1 ……… Xif ………..Xip

.

.Xn1 ……… Xnf ………..Xnp

A relációs tábla is ilyen

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

309. dia

309

Különbözőségi mátrix

0d(2,1) 0d(3,1) d(3,1) 0..d(n,1) d(n,2) …… 0

d(i,j) annál kisebb, minél hasonlóbbak az elemek.Ez lehet a cluster-be sorolás alapja.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 104: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

310. dia

310

A távolság tulajdonságai

d(x,y) ≥ 0d(x,x) = 0d(x,y) = d(y,x) d(x,y) ≤ d(x,z) + d(z,y)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

311. dia

311

Standardizálás

Kiszámoljuk az átlagos abszolút eltérést:si = (1/n)(│x1i-mi │+. . . │xni-mi │)aholmi = (1/n)(x1i+. . . xni)

A standardizált u.n. z érték:zi = (xi - mi )/si

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

312. dia

312

Távolság típusok

A változó típusától függ.

Intervallum változók: numerikus értékekBináris változókFelsorolás típusú változókVegyes típusú változók

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 105: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

313. dia

313

Numerikus értékek

Euklideszi távolság:

d(x,y) = (x1-y1)2+. . . (xn-yn)2

Manhattan távolság:d(x,y) = │x1-y1 │+. . . │xn-yn │Minkowski távolság:d(x,y) = (│ x1-y1 │q+. . . │ xn-yn │ q)1/q

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

314. dia

314

Súlyozás

Euklideszi távolság esetén:

D(x,y) = w1(x1-y1)2+. . . wn(xn-yn)2

Hasonlóan lehet Manhattan és a Minkowski távolságra is.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

315. dia

315

Bináris változók

j elem Összesen0 1

0 a c a+ci elem

1 b d b+d

Összesen a+b c+d n

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 106: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

316. dia

316

Szimmetrikus bináris változók

b + cn

d(i,j) =

Ha azonos értékű a két állapot

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

317. dia

317

Aszimmetrikus bináris változók

Ha az 1 érték fontosabb (Jaccard tényező)

d(i,j) = b + cb +c + d

A mindkét helyen 0 értéket figyelmen kívül hagyjuk.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

318. dia

318

Felsorolás típusú változók

Több, de adott számú állapot.

d(i,j) =n - m

n

Ahol m egyező van az n közül.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 107: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

319. dia

319

Vegyes típusú változók

Átlagot lehet számítani, de csak azokat az összetevőket szabad figyelembe venni, melyek mind a két elemnél megvannak!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

320. dia

320

Cluster készítő algoritmusok

Particionáló módszerekHierarchikus módszerekSűrüségen alapuló módszerekRács alapú módszerekModell alapú módszerek

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

321. dia

321

Particionáló módszerekk-átlag módszer

Ha k cluster-t akar, először kiválaszt k elemet, ezek lesznek a clusterek középpontjai.A fennmaradó elemek mindegyikét abba a cluster-be tesszük, amihez leginkább hasonló.Újra számoljuk a középpontokat (átlagokat).Újra meghatározzuk az elemek helyét, amíg változás van.Érzékeny a kiugró értékekre.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 108: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

322. dia

322

Particionáló módszerekk-medoid módszer

Hasonlít az előzőhöz de a cluster középpontja egy elem (ez a medoid), mely legközelebb van az átlaghoz.A kiugró értékekre kevésbé érzékeny.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

323. dia

323

Hierarchikus módszerek

Cluster-ekből álló fákba csoportosítja az elemeket.Egyesítő: alulról felfelé.Felosztó: fentről lefelé.A kész felosztás nem javítható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

324. dia

324

Sűrűségen alapuló módszerek

A sűrű területek lesznek a cluster-ek, közöttük zajokat tartalmazó ritka területekkel.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 109: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

325. dia

325

Rács alapú módszerek

A teret egy ráccsal osztja fel, ezek lesznek a clusterek.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

326. dia

326

Modell alapú módszerek

Egy modell (nem létező elem) a cluster középpontja, a többit ehhez hasonlítja.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

327. dia

327

Web-es adatok I.

Strukturált adatok: minden adat a pontosan megadott séma szerint van ábrázolva. Kezelés a hagyományos módon: pl. SQL.Strukturálatlan adatok: pl. szövegek.Nehezen kezelhetőek.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 110: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

328. dia

328

Web-es adatok II.

A részben strukturált adatok (semistructured data): az egyedekhez különböző tulajdonságok tartozhatnak.Hogy mégis kezelhető legyen, ezt le kell írni, azaz a leírás (séma) és az adatok keverednek.Nevezik önleíró (self-describing) adatoknak is ezeket.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

329. dia

329

Dokumentumok a WEB-en

Dokumentumok kezelésére való nyelvek:

Standard Generalized Markup Language (SGML)

Hyper-Text Markup Language (HTML)

Extensible Markup Language (XML)

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

330. dia

330

Elemek I.

Mindegyik u.n. tag-ekből áll (elemek):<tagnév> tartalom </tagnév>Az XML esetében a tag-ek készlete nem előre definiált (mint pl. a HTML-nél).A tag-ek egymásba ágyazhatóak.Foglalt karakterek:< > & ” ’Egyébként tetszőleges Unicode karakter használható.Megjegyzés: <! és -> között lehet, tartalama szabad, de a – stringnem megengedett.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 111: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

331. dia

331

Strukturált adatok

Ha az elemek rövid adatelemek, és a struktúra szigorú, akkor így leírható egy strukturált szerkezet: pl. a Könyv entitás attribútumai legyenek a szerző vezeték és keresztneve, valamint a könyv címe:

<KÖNYV><SZERZŐ>

<VEZNÉV>Arany </VEZNÉV><KERNÉV>János</KERNÉV>

</SZERZŐ><CÍM> Toldi</CÍM>

</KÖNYV>

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

332. dia

332

Részben strukturált adatok .

Leírhatók gráffal is (hierarchikus struktúra):Könyvtár

KönyvKönyv

Szerkesztő Téma Szerző Fordító Cím

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

333. dia

333

Jól formázott dokumentumok

1. A dokumentum egy XML deklarációval kell kezdődjék.2. A gyökér elem (az összes többit tartalmazó)kell legyen a kezdő

elem.3. A dokumentum helyesen felépített kell legyen, azaz egy elem

kezdő és befejező része ugyanabban a befogadó elemben kell legyen.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 112: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

334. dia

334

Nyelvleírás

Mivel a tag-ek készlete nem definiált, le kell írni azt.

DTD (Document Type Declarations)Egy, az XML nyelvtanát leíró metanyelven.

XML schemaAz XML szintaktikának megfelelő módon.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

335. dia

335

DTD-k

Elem előfordulások:optional multivalued (*): 0 vagy több előfordulás,required multivalued (+): 1 vagy több előfordulás,optional single-valued (?): 0 vagy 1 előfordulás,required single-valued: pontosan 1 előfordulás,e1|e2: akár e1, akár e2 előfordulhat.

Elem típusok:(elem): gyermeke egy korábbi elemnek,#PCDATA (parsed haracter data): levélelem.

Az elemek egymásba zárása zárójelezéssel is megadható.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

336. dia

336

AttribútumokAz elemeknek lehetnek attribútumaik, melyek információkat adnak az elemekről pl. a könyv témájáról, formájáról.(Ez nem azonos a korábban használt attribútum fogalommal!)pl. a tag nevű tag att nevű attribútuma legyen valami:<tag att = ”valami”

<KÖNYV MŰFAJ =”vers”><SZERZŐ>

<VEZNÉV>Arany </VEZNÉV><KERNÉV>János</KERNÉV>

</SZERZŐ><CÍM> Toldi</CÍM>

</KÖNYV>

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 113: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

337. dia

337

XML és Relációs AB

XML adatbázis tárolható egy relációsban:1. Az egész dokumentum text-ként.

A kereséshez külön feldolgozás kell.2. Átalakítva az elemeket a relációs adtabázis egyedeivé.3. Speciális indexeléssel, a hierarchikus elrendezés szerint

A relációst szét kell bontani hierarchikus részekre.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

338. dia

338

XML adatbázis lekérdezése

XPATH Olyan elemkészletet ad vissza, ami megfelel a kérdésben leírt mintának.

XQUERYFLRW kifejezések:FOR elemek megadása (pl. XML dokumentum)LET elemgyűjtemények megadása WHERE feltételRETURN a kért eredmény leírása

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

339. dia

339

XML tulajdonságok

Hátrány:A tárolás nem hatékony (a tag nevek sokszor előfordulnak).

Előnyök:1. Öndokumentáló2. A forma rugalmas (ha valaki új tag-eket iktat be, a többiek

figyelmen kívül hagyhatják).3. Az XML forma széles körben elfogadott, sok alkalmazás

van a kezelésére.

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

Page 114: Adatbázisok - users.nik.uni-obuda.huusers.nik.uni-obuda.hu/kotsis/ab/ab.pdf · 13. dia 13 Az információ feldolgozás alapvető módszerei •Folyamat szemléletű információ

340. dia

340

Legújabb problémák

Nagyon sok a rendelkezésre álló adat:a hálózat maga egy strukturálatlan adatbázis.Válogatás kell (felesleges másolat, elektronikus szemét).Keresés (általában túl primitív, sok találat).Ügynök (agent) programok (barátságos, barátságtalan).Kiszolgáltatottság!

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

341. dia

341

Vége

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________