Bevezetés

You might also like

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

Az adatbzisrendszerek clja Adat Szintek Adatbzis nyelvek Relcis adatbzisok Adatbzis tervezs Objektum alap s flig-struktrlt adatbzisok Adat

trols s lekrdezs Tranzakci kezels Adatbzis Architektra Adatbzis felhasznlk s adminisztrtorok Egy sszetett struktra Az adatbzisrendszerek trtnete

Adatbzisrendszerek - Bevezets

A DBMS ltalban egy adott vllalattal kapcsolatos informcikat tartalmazza


Egymssal sszefgg adatok gyjtemnye Programok egyttese az adatok kezelsre Egy krnyezet, melyet egyarnt knyelmes s hasznos hasznlni

Pldk adatbzis alkalmazsra:


Bank: minden tranzakcinl Lgitrsasgok: helyfoglals, menetrend Egyetemek: regisztrci, kpzs rtkests: gyfelek, termkek, vsrlsok Online vsrls: megrendels kvets, knlat Gyrts: termels, leltr, megrendelsek, kszlet Emberi erforrsok: alkalmazottak rgztse, fizetsek, adk levonsa

Az adatbzisok rintik letnk minden rszt


Adatbzisrendszerek - Bevezets 3

A korai idszakban az adatbzis alkalmazsok kzvetlenl a fjlrendszerekre pltek A fjlrendszerekben trtn adattrols htrnyai:
Redundancia s inkonzencia
Tbbfle fjlformtum, az informcik tbbszrs trolsa klnbz fjlokban

Nehzsgek az adatok elrsben


j programot kellett rni minden j feladathoz

Adatok elklnlse klnbz fjlok s formtumok Integritsi problmk


Integritsi knyszerek (pl. szmla egyenleg > 0) begetse a programkdba, explicit megads helyett Nehzkes j knyszerfeltteleket megadni, illetve a meglvket megvltoztatni
Adatbzisrendszerek - Bevezets 4

A fjlrendszerekben trtn adattrols htrnyai (folyt.)


A frisstsek atomitsa
Hibk esetn az adatbzis inkonzisztens vlhat a rszlegesen megvalsult frissts miatt Plda: Pnz tutalsa szmlk kzt vagy teljesen megvalsul, vagy egyltaln nem

Tbb felhasznl konkurens (egyidej) hozzfrse


A konkurens hozzfrsre a teljestmny miatt van szksg Ellenrizetlen konkurens hozzfrsek inkonzisztencit okozhatnak
Plda: Kt felhasznl egyszerre tekinti meg az egyenleget s egyszerre frisst

Biztonsgi problmk
Nehz biztostani, hogy a felhasznl csak bizonyos adatokhoz frjen hozz, s ne mindenhez

Az adatbzisrendszerek a felsorolt problmkra nyjtanak megoldst


Adatbzisrendszerek - Bevezets 5

Fizikai szint: lerja egy rekord (pl. vev) trolsi mdjt. Logikai szint: lerja az adat trolsi mdjt az adatbzisban, s az adatok kztti kapcsolatot.
type vev = record vev_id : string; vev_nv : string; vev_utca : string; vev_vros : integer;
end;

Nzet szint: az alkalmazsok elrejtik az adattpusok rszleteit. A nzetek elrejthetnek informcikat biztonsgi okokbl is. (pl. munkavllalk fizetse)
Adatbzisrendszerek - Bevezets 6

Egy adatbzisrendszer szerkezete:

Adatbzisrendszerek - Bevezets

Hasonl fogalmak, mint a programnyelveknl a tpusok s vltozk Sma az adatbzis logikai felptse
Plda: Az adatbzis informcikat tartalmaz a vevk s szmlk halmazrl s a kztk lv kapcsolatrl Egy program vltoz tpushoz hasonlthat Fizikai sma: adatbzis megjelense fizikai szinten Logikai sma: adatbzis megjelense logikai szinten

Adatbzisrendszerek - Bevezets

Elforduls az adatbzis aktulis tartalma egy bizonyos idpillanatban


Egy vltoz rtknek felel meg

Fizikai adatfggetlensg annak a lehetsge, hogy a fizikai sma mdosthat legyen a logikai sma vltoztatsa nlkl
Az alkalmazsok a logikai smn alapszanak ltalban fontos, hogy a klnbz szintek s komponensek kztti interfsz olyan legyen, hogy bizonyos rszek vltoztatsa ne legyen ers hatssal ms rszekre.

Adatbzisrendszerek - Bevezets

Egy eszkzrendszer, amellyel le lehet rni az albbiakat:


Adat Adat kapcsolat Adat szemantika (jelents) Adat megszorts

Relcis modell

Adatbzisrendszerek - Bevezets

10

Egyed-kapcsolat adatmodell (leginkbb adatbzis tervezs szintje) Objektum alap adatmodellek (Objektum orientlt s objektum-relci) Rszben strukturlt adatmodell (XML) Egyb rgebbi modellek:
Hls modell Hierarchikus modell

Adatbzisrendszerek - Bevezets

11

Plda: hierarchikus modell

Plda: hls modell

Adatbzisrendszerek - Bevezets

12

Olyan nyelv, amellyel a megfelel adatmodellbe szervezett adatokat el lehet rni s kezelni
A DML-t lekrdeznyelvknt is emlegetik

A nyelvek kt osztlya
Procedurlis (eljrs-orientlt) a felhasznl hatrozza meg a szksges adatokat s azok kinyerst Deklaratv a felhasznl hatrozza meg a szksges adatokat anlkl, hogy meghatrozn azok kinyerst

Az SQL a legelterjedtebb lekrdeznyelv


Adatbzisrendszerek - Bevezets 13

Logikai adatszerkezet megvalstsa, trolsi struktra elksztse


Plda: create table szmla ( szmla-szm egyenleg char(10), integer)

A DDL fordt ellltja a tblkat, melyeket az adatknyvtr trol Az adatknyvtr metaadatokat tartalmaz ( azaz adatokat az adatokrl)
Adatbzis sma Adat trolst s definilst tmogat nyelv
Meghatrozza az adattrols struktrjt s a hasznlhat hozzfrsi technikkat
Adatbzisrendszerek - Bevezets 14

Integritsi knyszerek
Hatrrtk knyszerek Hivatkozsi integrits (references - knyszer az SQL-ben) objektumhoz rendelt eljrsok

Azonosts

Adatbzisrendszerek - Bevezets

15

Egy plda: tblzatba foglalt adatok relcis modellben


Attribtumok

Adatbzisrendszerek - Bevezets

16

Adatbzisrendszerek - Bevezets

17

SQL szles krben elterjedt nem-procedurlis nyelv


Plda: A 192-83-7465 vev-azonosthoz tartoz nv megkeresse select vev.vev_nv from vev where vev.vev_id = 192-83-7465 Plda: A 192-83-7465 gyflazonosthoz tartoz sszes szmlnak az egyenlege select szmla.egyenleg from bett, szmla where bett.gyfl_id = 192-83-7465 and bett.szmla_szm = szmla.szmal_szm
Adatbzisrendszerek - Bevezets 18

Az alkalmazsok ltalban az albbi mdok valamelyikvel biztostanak hozzfrst az adatbzishoz


Nyelvek kibvtsvel, SQL begyazsa (Befogad nyelvek segtsgvel) nll interfsszel rendelkez adatbzis hozzfrsek (pl. ODBC/JDBC) ,kzbls rteget kpezve az adatbzis s az alkalmazs kztt.

Adatbzisrendszerek - Bevezets

19

Az adatbzis ltalnos szerkezetnek tervezsi folyamata: Logikai tervezs az adatbzis sma - modell meghatrozsa Az adatbzis tervezshez szksges, hogy megtalljuk az kapcsolati rendszerek egy "j" egyttest.
zleti dnts Milyen tulajdonsgokat vegynk fel az adatbzisban? Szakmai dnts milyen relci smt alkalmazzunk s hogyan osszuk el a tulajdonsgokat a klnbz relci smk kztt?

Fizikai tervezs Annak eldntse, hogy milyen legyen az adatbzis fizikai szerkezete
Adatbzisrendszerek - Bevezets 20

Egy olyan modell, amely az egyedek s kapcsolatok sszessgn alapszik


Egyed: egy "dolog" vagy "objektum", amely megklnbztethet ms objektumoktl
Tulajdonsgok egy halmaza rja le

Kapcsolat (relci): az egyedek kztti viszony

Szemlltetse egyed-kapcsolat diagram-mal trtnhet:

Adatbzisrendszerek - Bevezets

21

Adatbzisrendszerek - Bevezets

22

A relcis modell bvtse objektumorientlt lehetsgekkel, az erre pl rendszereket ORDBMS-nek nevezzk (Object Relational DBMS). Ezek szles krben hasznlatosak. Megengedi az sszetett attribtumokat, belertve a nem atomi rtkeket, mint pl. a begyazott relcik. Megrzi a relcis alapokat, klnsen az adatok deklaratv elrst, mialatt bvl a modell hatsfoka. Biztostja a kompatibilitst a ltez relcis nyelvekkel. Adatbzisrendszerek - Bevezets

23

A WWW konzorcium (W3C) ajnlsa Az elsdleges clja strukturlt szveg s informci megosztsa az Interneten keresztl, nem adatbzis nyelv Az XML struktrja, begyazsi lehetsgei lehetv teszik, hogy adat s nem csak dokumentum feldolgozsra hasznljk XML az j genercis adatcsere formtumok alapjv vlt. Eszkzk szles sklja elrhet az XML dokumentumok/adatok szintaktikai ellenrzsre, bngszsre, s lekrdezsre.
Adatbzisrendszerek - Bevezets 24

A Trkezel egy program modul, amely biztostja a kapcsolatot az alacsony szint adatok valamint az alkalmazsok kztt. A Trkezel feladatai az albbiak:
Kapcsolattarts a fjl-kezelvel Az adatok hatkony trolsa, visszakeresse s aktualizlsa

Szolgltatsai:
Adatelrs Fjl szervezs Indexels s trdels
Adatbzisrendszerek - Bevezets 25

1. Szintaktikai ellenrzs s fordts 2. Optimalizls 3. Kirtkels


Lekrdezs Szintaktika, fordts Relcis algebrai kifejezs Optimalizl

Lekrdezs eredmnye

Vgrehajt motor

Vgrehajtsi terv

Adat
Adatbzisrendszerek - Bevezets

Statisztikk az adatokrl
26

Egy adott lekrdezs kirtkelsnek alternatvi


Ekvivalens kifejezsek Minden mvelethez eltr algoritmus

A lekrdezsek "j" vagy "rossz" vgrehajtsi tervnek hatkonysga nagyon eltrhet A mveletek kltsgt meg kell becslni
Ersen fgg a relcik szmtl Az sszetett kifejezsekre vonatkoz becslsnl figyelembe kell venni az szmtshoz szksges rszeredmnyeket is
Adatbzisrendszerek - Bevezets 27

A tranzakci a mveletek egy csoportja, amely vgrehajt egy egyszer logikai fggvnyt az adatbzis alkalmazsban A Tranzakci-kezel egy komponense biztostja, hogy az adatbzis konzisztens (helyes) maradjon akkor is, ha rendszerhiba kvetkezik be s a tranzakci meghisul. Konkurens-hozzfrs kezel felgyeli a konkurens tranzakcikat, az adatbzis konzisztencijnak biztostsa miatt.

Adatbzisrendszerek - Bevezets

28

Az adatbzisrendszer szerkezett nagyban meghatrozza, hogy milyen szmtgprendszeren fut: Centralizlt adatkezels. Egy szmtgpen trtnik az adatok trolsa, feldolgozsa Kliens-szerver adatbzis architektrk Prhuzamos (tbb processzoros) Elosztott adatbzis rendszerek

Adatbzisrendszerek - Bevezets

29

A Felhasznlk -at aszerint klnbztetjk meg,

hogy milyen szinten frnek hozz a rendszerhez Alkalmazs fejlesztk DML hvsokon keresztl kapcsoldnak Tapasztalt felhasznlk az adatbzis lekrdez nyelven fogalmaznak meg krseket Specilis felhasznlk specilis adatbzis alkalmazsokat ksztenek, melyek nem tartoznak a tradicionlis adatfeldolgozs krbe Egyszer felhasznlk a korbban megrt valamelyik lland alkalmazst hasznljk
Pl. web-en keresztl trtn adatelrs, banki alkalmazottak, raktr kezelk, stb.

Adatbzisrendszerek - Bevezets

30

Az adatbzisrendszerrel kapcsolatos minden mveletet koordinl; tltja s rti a vllalat informcis forrsait s szksgleteit. Az adatbzis adminisztrtor feladatai:
Sma definilsa A trolsi struktra s hozzfrsi md megadsa A sma s fizikai rteg mdostsa A felhasznlk hozzfrsi jogainak kezelse Integritsi knyszerek meghatrozsa Egyttmkds a felhasznlkkal A rendszer mkdsnek figyelse s szksg szerint beavatkozs
Adatbzisrendszerek - Bevezets 31

Adatbzisrendszerek - Bevezets

32

Az 1950-es s a korai 1960-as vek:


Adatfeldolgozs mgnesszalagos trolkon
Szekvencilis adatszerkezet

Adatbevitel: lyukkrtya

Ksi 60-as s 70-es vek:


Kzvetlen adatelrs merev lemezeken Hlzat s hierarchikus adatmodell szleskr elterjedse Ted Codd definilja a relcis modellt
Turing djat kapott 1981-ben Az IBM megkezdi alkalmazni System R rendszert

Nagy hatkonysg (abban a korszakban) tranzakci feldolgozs Adatbzisrendszerek - Bevezets 33

1980:
A kutatsi eredmnyek alkalmazsra kerlnek a rendszerekben
Az SQL ipari szabvnny vlik

Prhuzamos s osztott adatbzis-rendszerek Objektum-orientlt adatbzis rendszerek

1990:
Nagyszm dntstmogat s adatbnyszati alkalmazs risi adattrhzak ltrejtte Web ruhzak feltnse

2000:
XML s XQuery szabvnyok Automatizlt adatbzis adminisztrci. Adatbzisrendszerek - Bevezets
34

You might also like