1 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda IV Félév Adatbázisrendszerek (ABR) Dr. Illyés László.

Slides:



Advertisements
Hasonló előadás
ADATBÁZISOK.
Advertisements

Adatbázis gyakorlat 1. Szerző: Varga Zsuzsanna ELTE-IK (2004) Budapest
© Kozsik Tamás Adatbáziskezelés •Relációs adatbáziskezelők •Noha a Java objektum-elvű, egyelőre nem az objektum-elvű adatbáziskezelőket támogatja.
Adatbázis rendszerek I.
Adatbázisok SQL. TARTALOM Szijártó M.2 Témakörök  Az SQL tulajdonságai  A műveletek fajtái  Objektum-műveletek  Lekérdezések Tulajdonságok és műveletek.
Adatbázis I. Alapfogalmak.
Delphi programozás alapjai
Adatbázis kezelés. Hierarchikus modell Legrégebbi modell, ma már nem használatos. Az adatokat fákban tároljuk, ahol minden pont a szegmens adatokat, és.
NYME Informatika Intézet
5. GYAKORLAT SQL CREATE TABLE, aktualizálás. S QL Structured Query Language A relációs adatbáziskezelés szabványos nyelve Nem algoritmikus, de beépíthető.
A DBMS fő feladatai: - adatstruktúra (adatbázisséma) definiálása,
Táblázat kezelő programok
Adatbázis kezelés 1. előadás
Adatbázis-kezelés.
KOVÁCS DÁVID. ALAPFOGALMAK Adatbázis: Olyan adatgyűjtemény, amely egy adott feladathoz kapcsolódó adatokat szervezett módon tárolja, és biztosítja az.
16. Tétel. Adatbázis: Olyan adatgyűjtemény, amely egy adott feladathoz kapcsolódó adatokat szervezett módon tárolja, és biztosítja az adatokhoz való hozzáférést,
Adatbázis rendszerek II.
Készítette: Sárközi Anikó
Adatbázis-kezelés ACCESS program:
Delphi programozás alapjai Nagyváradi Anett PTE PMMK MIT.
2006. október 2.Markó Tamás, PTE TTK1 Az Oracle SQL 5. Nézettáblák létrehozása, módosítása és törlése.
Adatbázis-kezelés Papp-Varga Zsuzsanna. Elérhetőségek    as.
Nézettáblák létrehozása, módosítása és törlése
Anyagadatbank c. tárgy gyakorlat Féléves tematika Adatbázis alapfogalmak, rendszerek Adatmodellek, adatbázis tervezés Adatbázis műveletek.
Adatbázisrendszerek világa
Adatbázisok Adatbázis: adatok gyűjteménye, amelyeket az adatbázis-kezelő rendszer (DBMS –Database Management System) kezel. Kezelt adatrendszer → adatbázis.
Dr. Krauszné Dr. Princz Mária Adatbázis rendszerek I.
1 Informatikai Szakképzési Portál Adatbázis kezelés Alapfogalmak.
DDL – Adatdefiníciós nyelv
Készítette: Tóth Ervin
Nézzük, mit tudunk…. Mire gondoltam? Megjeleníti az adott adatbázishoz kapcsolódó összes objektumot : adatbázis ablak.
Adatbázis-kezelés JAG,
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
SQL-Structured Query Language. Parancs(utasítás) csoportok CREATE - táblák létrehozása ALTER – táblák módosítása DROP – táblák törlése DDL –Data Definition.
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
Adatbázis kezelés.
Adatbázis-kezelés.
Adatbázis rendszerek I Relációs adatmodell strukturális része Általános Informatikai Tsz. Dr. Kovács László.
Adatbázis-kezelés Probléma: az excel kezelhetetlen túl sok adat esetén
1 Sramó András Adatbázis-technológia V. előadás Adatbázis-technológia 5. előadás Az SQL.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
Tarcsi Ádám, Adatbázis gyakorlat – Adattáblák – Tarcsi Ádám, január.
Kulcsok meghatározása a táblákban
Adatbázis alapfogalmak
5. gyakorlat Fleiner Rita.
Webprogramozó tanfolyam
9. osztály Táblák létrehozása. Létrehozás Tervező nézetben  Üres adatbázis létrehozása.  Adatbázis mentése.  Objektumok oszlopban a Táblák sorra kattintunk.
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
1 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben 2.2 Műveletek a.
 Adatbázis:  Valamilyen szempont szerint rendszerezett adathalmaz.  Adatbázis kezelés:  Adatok tárolása  Műveletek végzése az adatbázison; (Adatok.
1 Copyright © 2004, Oracle. All rights reserved. Bevezetés.
Adatbázis-kezelés 1-2. adatbázis-kezelő rendszer 1.új adatbázisokat hozhassanak (adat definició 2.lekérdezések és módosítások (adat manipuláció) 3.Támogassa.
1 Adatbázisok elméleti alapjai Dr. Kiss Attila people.inf.elte.hu/kiss D
Informatikai gyakorlatok 11. évfolyam
Adatbázisszintű adatmodellek
ACCESS ALAPOK Alapfogalmak
Programozás III JPA.
Bevezetés Adatbázisok használata. Mi is az adatbázis? Az adatbázisok ma már az élet számos területén alapvető fontossággal bírnak (Google, Amazon, Flickr,
1 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 1.Előadás: Celko Joe tippjei Codd törvényei. Triggerek.
Az adatbázis az adatok és a köztük lévő összefüggések rendszere, amelyet egymás mellett tárolunk. Nagyon fontos, hogy az adatbázisunk szerkezetét jól megtervezzük,
Készítette: Kiss András
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE)
Kovács Gergely Péter Bevezetés
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE)
Logisztikai projekt - gyakorlat Adatbázis-elmélet
Adatbázis-kezelés.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE)
Előadás másolata:

1 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda IV Félév Adatbázisrendszerek (ABR) Dr. Illyés László

2 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda 10. Előadás tartalma E10. Adatbázisrendszerekről általában

3 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda Adatbázisrendszerekről általában 1.Codd szabályai 2.Az adatbázisrendszerek fejlődése 3.Az adatbázisrendszerek felépítése

4 Codd 12 szabálya Codd 12 szabálya egy tizenhárom szabályból álló készlet (zérótól tizenketőig számozva), amelyet Edgar F. Codd javasolt, a relációs adatbázis modell atyja, amely arra volt tervezve, hogy meghatározza milyen feltételeket kell teljesítsen egy adatbázis kezelő rendszer azért hogy relációs adatbázis-kezelő rendszernek nevezhessék. Tréfásan “Codd tizenkét parancsolata”-nak is nevezik.

5 Codd ezen szabályok elkészítését arra is használta, hogy megkadályozza az ő adatbázis rendszerekről megalkotott álmainak felhígítását, amint a korai as adatbázis szállítók összekúszáltak hogy újracsomagolják a létező temékeiket relációs burkolással. A 12-es szabály volt kiváltképpen arra kitalálva hogy számbavegye az ilyen helyezkedéseket. A szabályok annyira szigorúak hogy az összes népszerű, úgynevezett “relációs” adatbázisredszerek elégtelen jegyet kapnak több feltétel esetében.

6 0. Szabály A rendszer minősítésének tartalmaznia kell mindhárom fogalmat: relációs, adatbázis és menedzsment rendszer. Hogy egy rendszer minősítése adatbázis kezelő rendszer legyen, a rendszernek (kizárólag) a relációs képességeit felhasználva kell menedzselnie az adatbázist. Kivétel: Használatunk ELJÁRÁSOKAT is

7 1. Szabály Az információs szabály Minden információ ábrázolása az adatbázisban csak egyféleképpen történik, mégpedig táblák sorai- és oszlopai találkozásánál levő értékekkel. Az SQL megfelel ennek a szabálynak

8 2. Szabály: A garantált hozzáférés szabálya Minden adat elérhető kell legyen. Ez a szabály alapvető az elsődleges kulcs újrafogal- mazásában. Kimondja, hogy minden skalár egység az adatázisban logikailag megcímezhető kell legyen, megcímezvén a bennfoglaló táblát, a tartalmazó oszlop nevét és a tartalmazó sor elsődleges kulcsának az értékét. Nem kötelező, hogy egy táblának legyen bármilyen kulcsa.

9 3. Szabály: A null érték szisztematikus kezelése Az ABR meg kell engednie minden mezőnek, hogy null értékű legyen (vagy üres). Kifejezetten kell támogassa a “hiányzó és alkalmazhatatlan információ”-t, amelyik szisztematikus, különbözik minden szabályos értéktől (például, “különbözik zérótól és minden más számtól”, szám értékek esetében), és független az adattípustól. Magába kell foglalja azt is, hogy egy ilyen reprezentációt szisztematikusan kell kezeljen az ABR. Az SQL a NULL értéket használja mindkét esetre

10 4. Szabály: A relációs modellre épülő aktív elektronikus katalógus A rendszernek támogatnia kell egy elektronikus relációs katalógust, amely elérhető a jogosult felhasználók számára egy lekérdező nyelv segítségével. A felhasználóknak elérhető kell legyen az adatbázis struktúrája (katalógusa) ugyanazon lekérdező nyelv használata segítségével, mint amivel elérik az adatbázis adatait. Az SQL támogatja ezen katalógus létezését (information_schema a MySQL-ben)

11 5. Szabály: Az átfogó nyelv szabálya A rendszernek biztosítania kell legalább egy relációs nyelvet, amelyik a)Lineáris szintaxissal rendelkezik b)Használható mind interaktív módon, mind pedig program-alkalmazáson keresztül c)Támogatja az adatdefiníciós operációkat (beleértve a nézet-definíciókat), adatmanipulációs operációkat (módosítás és visszakeresés), biztonsági- és integritási megszorításokat, és tranzakció menedzsmenti operációkat (kezdet, elkövetés (commit) és visszaforgatás (rollback))

12 6. Szabály: A nézetfrissítési szabály Mindazon a nézetek, amelyek elméletileg frissíthetőek, azok frissíthetőek kell legyenek gyakorlatilag is. Az SQL gyenge ezen a téren, mert a nézettáblák frissítése nagyon nehéz probléma. Csak a nagyon biztonságos esetek kerülnek bele.

13 7. Szabály: Magasszintű beszúrás, módosítás és törlés A rendszer kell támogassa a készlet szintű beszúrás-, módosítás- és törlés operátorokat. Ez azt jelenti, hogy adathalmazt lehet visszakeresni egy relációs adatbázisból, amelyik több sort/táblát tartalmaz. Ez a szabály kimondja, hogy beszúrás, módosítás és törlés operációk alkalmazhatók kell legyenek minden visszakereshető sorhalmazra, mintsem egy sorra egy táblából. Az SQL támogatja ezeket

14 8. Szabály: Fizikai adatfüggetlenség A fizikai síkon történő változások (hogyan tároljuk az adatokat: tömbben vagy csatolt listákban) ne legyen kihatással azon akalmazásokra, amelyek az adatstruktúrán alapulnak. Az SQL jobb a programozási nyelvek többségénél

15 9. Szabáy: Logikai adat- függetlenség A logikai szintű változásoknak (táblák, oszlopok, sorok stb.) nem szabad hatással lennie struktúrán alapuló alkalmazásokra. Logikai adatfüggetlenséget nehezebb megvalósítani, mint a fizikai adat- függetlenséget. Az SQL nagyon jó ezen a téren

Szabály: Épségi függetlenség Az épségi megszorítások alkalmazás – függetlenek kel legyenek és a katalógus kell tartalmazza őket. Lehetőséget kell biztosítani annak, hogy ezen megszorítások, amikor szükségszerű, változtathatóak legyenek, anélkül, hogy befolyásolná a létező alkalmazásokat.

Szabály: Az osztottság függetlensége Az adatbázis egyes részeinek különböző helyeken történő tárolása láthatatlan kell legyen az adatbázis felhasználójának. A létező alkalmazások tovább kell működjenek: 1.Amikor egy osztott változata az ABR-nek első alkalommal bevezetésre kerül 2.Amikor a létező osztott adat újraosztásra kerül a rendszeren belül. Ezen támogatások gyerekcipőben vannak.

Szabály: Az alacsony szintű hozzáférés szabálya Ha a rendszer biztosít egy alacsony szintű kapcsolatot, ez a kapcsolat nem használható a rendszer aláásására, például, hogy áteresszen egy relációs biztonsági résen vagy megsértsen egy integritási megszorítást. Az SQL-92 jó ebből a szempontból

19 1.Adatbázisrendszerek fejlődése (I) Definíció: Egy adatbázis (AB) egy hosszú ideig – gyakran évekig- meglévő információk gyűjteménye Az adatbázisokat DBMS ( DataBase Management System ) -el tartják karban (Adatbázis menedzselő rendszerek). Elvárások: 1) Új adatbázisok létrehozásához adatdefiníciós nyelvet használunk 2) Az adatok lekérdezhetők és módosíthatók egy adat- manipulációs nyelv segítségével 3) Biztonságos és hosszúidejű tárolást hoz létre, hatékony adathozzáférés 4) Biztosítsa a tartósságot (adatbázis helyreállíthatóságát) 5) Egyidejű hozzáféréseket biztosítson

20 Adatbázisrendszerek fejlődése (II) A. Fájlrendszerek. A 60-as években, nem biztosították, csak a 3-as elvárást. Először kicsik voltak de sok módosítást és sok lekérdezést igényeltek: Példák : -Repülőgép-helyfoglalási rendszer (helyfoglalás, járatok információi : indulás, érkezés, jegyár, a jegyre vonatkozó információk) -Bankrendszerek (Ügyfelek adatai, folyószámlák, hitelszámlák, stb.) -Vállalati nyilvántartások (személyi adatok, termelésadatok, pénzűgyi adatok) B. Relációs adatbázis –Ted Codd 80-as években vezete be. Táblázatok és relációk, lekérdező nyelvvel SQL ( Structured Query Language)

21 2. Adatbázisrendszerek felépítése Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda adatok Tranzakció- kezelő Tárkezelő Lekérdezés feldolgozó Séma módosításoklekérdezésekmódosítások

22 Lekérdezés- fordító Tranzakció- kezelő DDL-fordító Végrehajtó- motor Naplózás- és helyreállítás Konkurencia -kezelés Puffer- kezelő Tárkezelő Tár Felhasználó/alkalmazás J.D. Ullmann-J. Widom, ABR alapvetés, Panem, 2009, 6. oldal alapján lapok írása/ olvasása Pufferek Zár- tábla metaadat Adatbázis-adminisztrátor DDL- utasítások blokk- utasítások tranzakciós parancsok lekérdezések, módosítások végrehajtási- terv metaadat, statisztika napló- lapok

23 Indexek -olyan adatstruktúrák amelyek az adatok gyors elérésére használhatók Hash táblákat, majd B-fákat (balanced tree ) használnak (nincs etimológiai magyarázat az elnevezésre) A lekérdezések létrejöhetnek: - Általános lekérdező interfészen keresztül - Egy alkalmazói program interfészén keresztül A módosítások létrejöhetnek - Általános lekérdező interfészen keresztül - Egy alkalmazói program interfészén keresztül Sémamódosítások csak az adatbázis adminisztrátorának megengedettek Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda

24 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda A tárkezelő ~ az operációs rendszer fájlkezelő is lehet - A fájlkezelő - A pufferkezelő A lekérdezésfeldolgozó: SQL utasításokat egyszerű utasításokra bont. Optimalizálják a lekérdezést illetve a végrehajtási tervet

25 A tranzakciókezelő Több lekérdezést vagy módosítást egy tranzakcióba csoportosít Rendszerhiba kiküszöbölését és egyszerre való elérhetést biztosít. Elvárások: 1)Atomosság (minden vagy semmi a tranzakcióból) 2)Elkülönítés (A különböző tranzakciók nem hatnak egymásra) 3)Tartósság (még egy rendszerhiba sem hat ki az eredményekre) 4)Konzisztencia (pl. számla értéke nem lehet negatív)

26 A különböző komponenseknek a következő tipusú információra van szükségük: 1.Adat: az adatbázis tartalma 2.Metaadat: az adatbázis sémája 3.Napló rekordok: az adatbázison végzett módosításokról szóló információk. Tartósság megőrzése 4.Statisztikák 5.Indexek: Olyan adatszerkezetek, amelyek a hatékony adatelérést támogatják

27 Zárolás: Amíg az egyik tranzakció dolgozik a másik tranzakció nem érheti el ugyanazokat az adatokat. A zárolás finomsága: mennyit zárnak le az adatokból és azok zárolása az írás vagy olvasásra vonatkoznak-e Naplózás: Tárolják az összes elvégzett vagy megkezdett tranzakciót. Bizonyos esetekben újra lehet őket használni. A tranzakciók érvényesítése: Először menteni kell a módosításokat, utána végrehajtani és végül érvényesíteni. Kliens –szerver felépítés: A kliens kéréseit egy szerver hajtja végre. Mit végez a kliens és mit a szerver? A túlterhelés elkerülése végett

28 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda 3. Az adatbázisok jövöje Objektumorientáltság (Smalltalk, C++, Java) Típusrendszer (Rekordstrukturák,Kollelkciótípusok, Hivatkozástípusok) Osztályok és objektumok Objektumazonosítók, Metódusok Absztrakt adattípusok, Osztályhierarchiák Megszorítások és triggerek (logikai függvények, programkódrész, mely egy eseményre vár ) Multimédia adatok (videó, audió, radarjelek, műholdfelvétek) WEB Adattárak

29 Adatok egységesítése Egy nagyvállalat a www-n akarja eladni termékeit. Sok részleg-külön adatbázis a saját termékekről Minden részleg Különböző adatbázis-kezelő Különböző információs struktúra Különböző terminológia ugyanarra a dologra Ugyanaz a terminológia különböző dolgokra Sáv és cilinder Pl. cső nyilvántartása egyik helyen kg, másik helyen m. Forgási sebesség nyilvántartása: /perc vagy /s Adattárházak létrehozása