Adatbázis
Fizikai adatbázis
Fizikai adatbázis:A mai ületi gyakorlatban a relációs szerkezetű a legeltejettebb (lásd. 1 ea. diák)leginkább a számítógép lemezein elhelyezett fájlokEgy komplex szoftver – az adatbáziskezelő rendszer működése révén férnek hozzá a felhasználók az adatbázisban tárolt adatokhoz
DBA
A rendszergazda (database administrator). Létrehozza és működteti az adatbázist. Leginkább egy mérnök.Röviden mik tartoznak a feladataik közé?Létrehozza a fizikai adatbázist Biztosítja annak elérhetőségét, működését,Felhasználókat és jogosultságokat kezeli,Menti és szükség esetén helyreállítja az adatbázist, Hangolja a rendszer működését,Együttműködik az oprendszer, a hálózat és a diszkrendszer rendszergazdáivalEzen a linken bővebben: http://docs.oracle.com/cd/B10501_01/server.920/a96521/dba.htmKeresett szakma manapság is:https://www.jobinfo.hu/kereses/oracle+dba/Forrás: 1. előadás diák
aFogalmi (logikai) adatbázis
Logikai adatbázis:Általában valós világ adatait tároljuk benneAz adatok kis részhalmazát tarjuk tárolásra "alkalmasnak"Később az adatokből információt kívánunk kinyerniA tárolandó adatok kiválasztása klasszikus elemzési és modellezési feladat (adatmodellező végzi)Forrás:5. diasor
Adatmodell típusok
Adatmodell: Logikai struktúra és azon értelmezett kényszerek és műveletek összessége.Adatbázismodell típusokról bővebben az első előadáson beszéltünk.HierachikusHálósRelációsObjektumorientáltObjektumrelációsDeduktívKulcs-értékstb.Forrás :http://www.agt.bme.hu/szakm/adatb/db1.htm#p1.4.1,https://hu.wikipedia.org/wiki/Objektumorient%C3%A1lt_adatmodell1.diasor
aHierachikus
A hierarchikus modell volt a legelső az adatbáziskezelőkben és egyben a leginkább korlátozott. A hierarchikus modell az 1960-s évek végén alakult ki és az 1970.s évek végéig használták. Például az IBM IMS adatbáziskezelő rendszer alkalmazta ezt a modellt. A neve is utal rá, hogy az adatokat egy hierarchiában kell elrendezni. Ezt egy fa szerkezettel tehetjük szemléletessé. Forrás: http://www.agt.bme.hu/szakm/adatb/db1.htm
Hálós
A hálós adatmodell a hierarchikus adatmodell továbbfejlesztett változata, a bonyolultabb kapcsolatok ábrázolását már jobban lehetővé teszi. 1969-ben a CODASYL bizottság által létrehozott DBTG (Data Base Task Group) jelentése alapján hozták létre. Két évtizeden keresztül, a relációs adatbázis megjelenéséig szinte kizárólag ezt használták. Forrás: https://hu.wikipedia.org/wiki/H%C3%A1l%C3%B3s_adatmodell
aRelációs
A relációs adatmodell egy olyan adatmodell, amelynek legfontosabb eleme a matematikai reláció fogalma. Mint minden adatmodell, ez is egyrészt definiálja azokat a jellemző adatszerkezeteket, amelyeken dolgozik, illetve azokat a műveleteket, amelyek rajta értelmezettek. Szemléltető példa: itt Forrás: https://hu.wikipedia.org/wiki/Rel%C3%A1ci%C3%B3s_adatmodell
aAdatmodellezés
Adatmodellek, modellezésA tárolandó adatok kiválasztásakor klasszikus modellezési szempontok érvényesülnekA vizsgálat szempontjából fontosnak tartott „jellemzőket” tároljuk, a többit elhanyagoljukJellemző alatt egyaránt értünk „tulajdonságokat” és „kapcsolatokat”Az adatbázis a „világ egy darabjának” egy leegyszerű- sített képét képes visszaadni (lásd „Gajdos Sándor: Adatbázisok)Manapság leginkább az Egyed-Kapcsolat (Entity-Relationship, E-R) modellt alkalmazzuk erre a célraHogy is néz ki egy E-R modell?E-R (magyarul E-K) modellről bővebben: ittForrások: http://people.inf.elte.hu/kiss/08abe1/08ab1e02.pdfhttps://www.db.bme.hu/sites/default/files/adatbazisok-1-3-het-2013.pdf5. diasor
aAdatmodellező
Adatmodellező más néven elemző/tervező, munkája egy építéészéhez hasonlítható.Megrendelnek tőle egy testreszabott informatikai rednszert és annak megtervezésétHosszú, gyakran több hónapos tervezői munkaNéha többen, csapatban végzikNagy odafigyléssel kell dolgozniuk a rendszer tartossága érdekébenAz adatbázis-tervezés lépései:1. a feldolgozandó információ elemzése,2. az információk közti kapcsolatok meghatározása,3. az eredmény ábrázolása (E/K diagram E-R diragram),4. adatbázisterv készítése (transzformációs lépés),5. adatbázisterv finomítása (összevonások),6. megszorítások modellezése, függőségek meghatározása,7. optimális adatbázisterv készítése (dekomponálás, normalizálás),8. az adatbázisterv megvalósítása SQL-ben. (CREAT TABLE utasítások stb.)Forrás:http://people.inf.elte.hu/kiss/08abe1/08ab1e02.pdf5. előadás diák
Az egyed-kapcsolat (E-R) modell
E-R modellEgy grafikus leíró eszköz, mely diagram segítségével adja meg az adatbázis szerkezetét (struktúráját).Hogy is néz ki egy E-R modell?E-R modell - Relációs adatmodellForrások:http://people.inf.elte.hu/kiss/08abe1/08ab1e02.pdfhttp://tanulnijo.uw.hu/adatbazis/ab_negyedik.html
aKapcsolat
Kapcsolat (relationship): entitások névvel ellátott viszonya, két egyed között létező logikai kapcsolatFogalmi adatmodellek alapelemei a kapcsolatokAz egyedek ritkán léteznek elszigetelten. Tipikus az, hogy kapcsolatban állnak egymással. Jellemző:kapcsolat neve,kapcsolat foka (nincs kapcsolat, 1:N [egy-sok], M:N[sok-sok], 1:1[egy-egy]),kapcsolat típusa (lehet kötelező vagy opcionális)Példák:diákok egyetemeknél tanulnak. Itt a "tanulnak" a kapcsolat a diák és az egyetem az entitások.a barátság reláció egy ember és egy másik ember közötttulajdonlás a kacspolat a tulaj és a tulajdonos között.Sofőr vezeti az autót, itt a vezeti a relációForrás:http://www.inf.elte.hu/mot/oktatas/Documents/adatbaziskezeles_alapfogalmak.pdf3.3-as fejezet ( 9. oldal)
Egyed
Egyed - más néven entitás (entity):A valós világban létező, logikai vagy fizikai szempontból saját léttel rendelkező dolog, amelyről adatokat tárolunkEzeknek van tulajdonsága (attribútuma = attribute), ez jellemzi (azonosítja, leírja, minősíti, osztályozza vagy állapotát fejezi ki) az entitásokat. Ez vagy ezek segítségével tudjuk megkülönböztetni az entitásokat egymástól.Az elemző/tervező választja ki mind az egyedeket, mind az egyedek tulajdonságait Ideális esetben ez később (tehát már az implementálás után) ritkán változikPéldák: Egyed és egyedek halmaza lehet pl:diák: STUDENTSszak: COURSES....
Attribútum
Attribútum: Az egyedek tulajdonságai vagy jellemzői, amelyekkelazonosítjuk,leírjuk,minősítjük,osztályozzuk,állapotát fejezzük ki az egyednek.Sokszor nehét előrelátni, milyen jellemzőket érdemes választani. Idővel megváltozhat, hogy mire van szükség és mire nem. Például, nem gondolnánk, hogy a dolgozók vércsoportját tárolni kell az adatbázisban, de ha jön egy szabalyozás erre, akkor ezt be kell építeni a rendszerbe.Szerencsére új attribútumot könnyebb bevezetni, ellenben új entitást költséges lehet.Egyből az első kép:ezen az oldalon, egy jó példa az attribútum-egyed kapcsolatra.Forrás:http://www.tankonyvtar.hu/en/tartalom/tamop425/0046_fejezetek_az_adatbazisrendszerek_elmeletebol/ch03s03.html5. diasor
aEgyedi azonosító
Egyedi azonosítóUgyanazon egyedtípus előfordulásainak megkülönböztetése egyedi azonosító(k) segítségével történik.Attribútumok részhamaza.Példák: Entitás: Autó, Egyedi azonosító: alvázszám, rendszámForrás:5. diasor
Két egyed kapcsolata
Distinct
Két entitás distinct (magyar kifejezést nem találtam rá), ha nincs közös attribútumuk.Forrás: https://msdn.microsoft.com/en-us/library/cc505839.aspx
Altípus
Altípus (Subtype):Olyan entitások amelynek attribútumai szerepelnek szupertípusuk attribútumai közt, de egymástől különböző attribútumokkal rendelkeznek.Forrás: https://learndatamodeling.com/blog/supertype-and-subtype/
aSzupertípus
Supertípus (Supertype):Egy olyan entitás típus, amely szülő-gyerek (parent to child) kapcsolatban egy vagy több altípusú entitással és tartalmazza azokat az attribútumokat amelyeket az ő altípusú entitásai tartalmaznak.Szemléltető ábra:5. előadás 17 dia,Kép1Kép2Kép3Források:https://learndatamodeling.com/blog/supertype-and-subtype/http://www.siue.edu/~dbock/cmis450/4-1.gifhttp://sqlmag.com/site-files/sqlmag.com/files/archive/sqlmag.com/content/content/93241/figure_ 03.gifhttp://farm1.static.flickr.com/132/377124497_9be8a4b093.jpg?v=0
aRelációs séma tervezés
Hogyan tervezzük relációs sémákat?Többször tárolt adatok feleslegesek lehetnek. (De nem mindig azok – pl. adattárház)Ha egy relációban valamely attribútum értékét a relációban található más attribútom(ok) értékéből ki lehet következtetni, akkor a relációt redundánsnak nevezzükA redundáns adatok tárolásakor egy sor kellemetlen jelenség állhat elő.Ezeket anomáliáknak nevezzükForrás:5. diasor
Séma tervezésnél fennálló anomáliák
A redundáns adatok tárolásakor egy sor kellemetlen jelenség állhat elő.Ezeket anomáliáknak nevezzük, van módosítási, törlési és beszúrási anomáliaForrás:5. diasor,http://databasemanagement.wikia.com/wiki/Category:Data_Anomalies
Módosítási
Módosítási anomáliaSzemléltető kép, a megértéshez: itt A képen a DIVISIONS tábla második sorában (VELEBIT) a COUNTRY oszlop értékét megváltoztatjuk: HUNGARY helyett CROATIA lesz.Ezután a második és negyedik sor egymásnak ellentmondanakForrás:5. diasor
Törlési
Törlési anomáliaHa csak egy attribútum értékét szeretnénk törölni, akkor előfordulhat, hogy ez nem lehetséges (pl. mivel része valamely kulcsnak) Ilyenkor az egész sort törölhetjük, de akkor meg más információt (adatot) is elveszíthetünk.Példa: https://image.slidesharecdn.com/Forrás: https://image.slidesharecdn.com/presentationanomaliesindatabase-130515230219-phpapp02/95/anomalies-in-database-10-638.jpg?cb=13686589795. diasor
aBeszúrási
Beszúrási anomáliaMegérteshez szükséges kép: ittNem tudunk egy új adatot nyilvántartásba venni, ha nem ismert egy másik adat.Pl. tegyük fel, hogy a „num_of_employees” attribútum nem lehet NULL érték az előző dián. Ekkor egy új részleget nem tudunk nyilvántartásba venni, ha még nem tudjuk a részlegben dolgozók számát.Ennél a példánál kellemetlenebb esetek is előfordulnak a nem megfelelő adatmodell választása esetén.Forrás:5. diasor
Normálformák
Mik és miért kellenek a normálformákAhhoz, hogy az előzőleg ismertetett anomáliákat elkerülhessük, a relációink sémái meghatározott feltételeket kell hogy teljesítsenekEzeket normálformáknak nevezzükLétezik elég sok normálforma: ezek közül a legfontosabbak az 1NF, 2NF, 3NF, BCNF (BoyceCodd normálforma)Az ennél magasabb rendűek egy piciny túlzással csupán az elméleti szakértőket érdeklik.Részeltesebb leírás a témában:https://en.wikipedia.org/wiki/Database_normalizationForrás:5. diasor
1NF
Első normálforma (1NF) Egy relációs séma 1NF alakú (1NF normalizált) ha benne csak atomi attribútum-értékek szerepelnekKöznyelven mondva: a tábla sorai és oszlopai „metszetében” lévő „mezők” csak 1 értéket tárolnak.Érdekesség, hogy az Oracle adatbáziskezelő rendszer az objektumorientáltság kedvéért megengedi ennek az alapszabálynak a megszegését is akárSzemléltető kép: ittBővebben: WikipediaForrás:5.diasorhttps://en.wikipedia.org/wiki/First_normal_form
a2NF
Második normálforma (2NF)Elsődleges attribútum az, amely valamelyik kulcs része.Másodlagos attribútum az, amely nem elsődleges, tehát olyan attribútum, amely nem része egyik kulcsnak sem.Egy 1NF relációs séma 2NF alakú, ha egyik másodlagos attribútuma sem függ a kulcs egy részhalmazától, hanem kizárólag a teljes kulcstól függSzemléltető kép: ittBővebben: WikipediaForrás:5.diasorhttps://en.wikipedia.org/wiki/Second_normal_form
a3NF
Harmadik normálforma (3NF)Egy 1NF relációs séma 3NF alakú, ha egyetlen másodlagos attribútuma sem függ tranzitívan egyetlen kulcstól semAmi nem 3NF alakú, abban rejtett függőségek vannak, és ezeket meg kell bontani több sémáraSzemléltető kép: ittBővebben: WikipediaForrás:5.diasorhttps://en.wikipedia.org/wiki/Third_normal_form
aObjektumorientált
Objektumorientált: Olyan adatbázis, amely intelligens elemekből épül fel. Az intelligencia itt azt jelenti, hogy az egyes adatbáziselemek (objektumok) „tudják”, hogy kik ők, mire használhatók, s miként kapcsolódnak a többi adatbáziselemhez. Az objektumorientált adatbázisok az objektumorientált programozási nyelvek térhódításával terjedtek el. Hatékonyságukban jelenleg még alulmaradnak a relációs adatbázisokkal szemben.Forrás: https://hu.wikipedia.org/wiki/Objektumorient%C3%A1lt_adatmodell
Deduktív
A deduktív adatbázis, olyan adatbázis amely igaz tényekből és következtetési szabályokból áll. Az adatbázis végzi el a következtetéseket, így tud válaszolni konkrét lekérdezésekre. A rendszer a predikátum kalkuluson alapszik.Forrás: https://mialmanach.mit.bme.hu/fogalomtar/deduktiv_adatbazis
aDeduktív objektumorientált
Kulcs-érték
Stb.