Adatbázis rendszerek Molnár Bence
Szerkesztette: Koppányi Zoltán és Berényi Attila
A tárgyról
A tárgyról —
2 kredit
—
1 zárthelyi
—
2 házi feladat
—
70%-os jelenlét
—
„hibrid” előadások
—
http://web.fmt.bme.hu/abr
—
http://www.fmt.bme.hu/fmt/htdocs/oktatas/ tantargy.php?tantargy_azon=BMEEOFTMKT3
A tárgyról — Molnár
Bence
[email protected]
— e-mail
tárgya: [ABR] …
— konzultáció
(K 131)
— vélemények,
visszajelzések
A tárgy célja — Az
adatbázisok elméletével kapcsolatos alapvető fogalmak megismertetése
— Az
adatbázisok használatának bemutatása mérnöki alkalmazásokban
— MS
Access alapjainak bemutatása, használatának elsajátítása (szerk, infra)
— Az
ún. objektum relációs téradatbázisok alapjainak és használatának elsajátítása PostgreSQL + PostGIS eszközökkel (földmérő)
Tematika (lite) — Adatbázisok
elmélete
—
alapfogalmak
—
relációs algebra
—
adatbázis-tervezés
— Adatbázisok
gyakorlati alkalmazása
—
SQL
—
térinformatikai adatbázisok
Házi feladat (szerk, infra) — Adatbázis —
tervezés: alfanumerikus adatbázis (plusz pont jár, ha a mérnöki gyakorlatból vett példán alapul)
—
megvalósítás: a megtervezett adatbázis létrehozása, feltöltése, és lekérdezések MS Access segítségével
Házi feladat (földmérő) — Adatbázis —
tervezés: gyakorlati adatbázis tervezése
—
megvalósítás: —
—
térinformatikai
megtervezett adatbázis létrehozása, feltöltése, és térbeli lekérdezések (PostgreSQL + PostGIS, ehhez szervert biztosítunk) megjelenítés QGIS-ben
Miből tanulhattok?
Jeffrey D. Ullmann - Jennifer Widom : Adatbázisrendszerek, Alapvetés, PANEM, 2008
Miből tanulhattok? —A
diasorokat folyamatosan (előadás után) feltöltjük a honlapra
— Segédlet
és video)
a házi feladatokhoz (dokumentum
— PostgreSQL: — PostGIS: — Google...
http://www.postgresql.org/
http://postgis.refractions.net/
Adatbázisok a mindennapokban
Adatbázisok a hétköznapokban — Hol
használjuk őket?
—
mindenhol...
—
vásárlás, utazás, telefonálás, internetezés, sportolás, stb...
— Jelentőségük —
Knight Capital Group
—
...
Adatbázisok a hétköznapokban
Adatbázisok a hétköznapokban A világ legnagyobb adatbázisai Helyezés Név
Cél
1
Max Planck Intézet
Tudományos kutatás
2
NERSC
Tudományos kutatás
3
AT&T
Távközlés
4
Google
Internetes keresés
5
Sprint
Távközlés
6
ChoicePoint
Kormányzati, közösségi és üzleti jellegű információk megosztása
7
YouTube
Videomegosztás
8
Amazon
Kiskereskedelem
9
CIA
Titkosszolgálat
10
USA Kongresszusi Könyvtár Könyvtári szolgáltatások
Adatbázisok az építőmérnöki gyakorlatban —
Folyóiratok, cikkek adatbázisai: —
ASCE: http://cedb.asce.org/
—
Szabványok (IEEE, ISO, EN, MSz, ...)
—
Szakági adatbázisok:
—
Talajtani: http://mta-taki.hu/hu/osztalyok/kornyezetin formatikai-osztaly/terkepi-adatszolgaltatas http://www.geoshop.hu
—
kutatás
—
Táblázatkezelőktől az adatbázisokig
Táblázatok
Hogyan néz ki egy táblázat? Név
Lakcím
Telefonszám
Holnap Péter
Budapest 999-9999
Gépészmérnök Szerszámgyártó Zrt.
Tóth István
Cegléd
Építőmérnök
Út kivitelező Nyrt.
Nagy Ferenc
Budapest 999-9954
Közgazdász
Elszámolok Kft.
Kiss Pista
Budapest 999-5864
Érettségi
Út kivitelező Nyrt.
999-9928
Végzettség
Munkahely
Hogyan nézz ki egy táblázat? Oszlop=Attribútum
Név
Lakcím
Holnap Péter
Telefonszá m
Végzettség
Munkahely
Budapest 999-9999
Gépészmérnök
Szerszámgyártó Zrt.
Tóth István
Cegléd
Építőmérnök
Út kivitelező Nyrt.
Nagy Ferenc
Budapest 999-9954
Közgazdász
Elszámolok Kft.
Kiss Pista
Budapest 999-5864
Érettségi
Út kivitelező Nyrt.
999-9928
Sor=Rekord
Cella=Mező
Mit könnyű benne csinálni? (azaz előnyök :) — Kitölteni — Oszlopot — Sort
törölni, hozzáadni
törölni, hozzáadni
— Származtatott
cellákat számítani
— Keresni,
bonyolult számításokat végezni, speciális adatok levezetni?
— Nagy
adathalmazokat kezelni?
Problémák a táblázatokkal — Nagyméretű —
sok oszlop
—
sok sor
— Nehézkes
tábla nehezen kezelhető
keresés a táblában
— Különböző
táblák összekapcsolása
— Konzisztencia — Speciális
keresések (lekérdezések)
Adatbázis? — Az
adatbázisok használata indokolt, ha:
—
nagy mennyiségű adatunk van,
—
az adatoknak sok attribútuma definiált,
—
fontos a konzisztencia,
—
inhomogén típusú adatok,
—
összetett lekérdezéseket végrehajtani.
—A
kívánunk
gyakorlatban nem csak nagy adattömegek esetén alkalmazzák.
Alapfogalmak
Alapfogalmak —
—
Adat: (adatbázisban tárolt) érték. —
statikus: kézi vagy automatikus beavatkozásig változatlan (pl. bankszámla-egyenleg).
—
önmagában nincs jelentése.
Információ: olyan adat, amely a feldolgozás során értelmet nyer. —
—
Dinamikus: a tárolt adatok függvényében és a feldolgozás, megjelenítés (képernyő/nyomtatott jelentés) hatására is változik/változhat.
Összefoglalva: az adat az, amit tárolunk, az információ pedig, amit kinyerünk (GIS – új adat levezetése).
Alapfogalmak —
Metaadat: adat az adatról. —
„A metaadat koncepció általában az elektronikusan archivált vagy megjelenített adatra vonatkozik és leírja az adat fájlok definícióját, struktúráját és kezelésének módját, hogy a rögzített és archivált adatok használatát megkönnyítse”.
—
Adatbázisok esetén pl.: az adatbázisban található összes tábla nevét, méretét és sorainak számát tartalmazó tábla.
Alapfogalmak —
Adatmodell: tulajdonképpen az adatok logikai szerkezetének a leírása
—
Az adatmodell a logikai adatbázis szerkezeti leírását foglalja magában, nevezetesen azonos jellemzőjű információk logikai modellezését a rajtuk végezhető logikai műveletek meghatározását tartalmazza. Az adatmodell tehát mindig szerkezeti és műveleti részből tevődik össze. Az adatmodell feladata, hogy a világban található dolgokról, individuumokról számítógéppel könnyen feldolgozható formálisan leírható adatok tárolásához megfelelő szerkezetet, keretet adjon, illetve ezek lekérdezhetőségét, visszakeresését is biztosítani tudja zárt matematikai alakban. (Wikipédia)
—
Logikai modell: az adatmodell alapján az felhasznált adatok rendszerét és kapcsolatait írja le.
Adatmodellek — Hierarchikus — Hálós — Relációs — Objektum
orientált
Adatbázis vs. Adatbázis kezelő — Adatbázis
(AB, vagy Database, DB): az adatok és azok rendszere. —
németül adatbank: Datenbank
— Adatbázis
kezelő rendszer (ABKR vagy Database Managment System, DBMS): az adatok manipulálást, tárolását, létrehozását, stb... végző programok.
— Gyakorlatban
az adatbázisokat ABKR-rel hozzuk létre. Az egyes ABKR-ek bizonyos adatmodelleket támogatnak, így az ABKR meghatározza az adatbázis adatmodelljét is.
Példák —
Adatbázisok: világ legnagyobb adatbázisai dia
— Adatbázis
kezelő rendszerek:
—
MS Access, SQL Server (Microsoft)
—
PostgreSQL (Open Source, közösségi)
—
MySQL (GPL, kereskedelmi, Oracle)
—
Oracle (kereskedelmi, Oracle)
—
CouchDB (Open Source, Apache)
—
SQLite (Open Source, Richard Hipp)
Adatbázis szintjei - fizikai
A fizikai szinten az adatok tényleges tárolása és elérése történik hagyományosan a háttértáron (merevlemezen).
Adatbázis szintjei - fogalmi
A fogalmi (logikai) szinten írjuk le a az adatok típusát, kapcsolódási módját, stb..., melyeket az adatmodell határoz meg. Vagyis az adatmodell segítségével írjuk le az adatbázis fogalmi modelljét (értsd: ami a táblák tulajdonságai, oszlopnév, típusok, kapcsolatok, stb...).
Adatbázis szintjei - nézet
A megalkotott adatmodellen keresztül az adatokat különböző módon tudjuk megjeleníteni; ezek a nézetek. A nézetek megválasztásának a módját a konkrét alkalmazás dönti el ill. az igények specifikálják.
Adatbázis!
„No widely accepted exact definition exists for DBMS” (Wikipedia)
Adatbázisok története
Adatbázisok története — Mikortól? — 1960-as
évek eleje (első „hivatalos” említés 1962, Oxford szótár: data-base)
— Az
adatbázisok történetét a hozzájuk kapcsolódó adatmodellekkel mutatjuk be.
Korai adatbázismodellek — hierarchikus
modell
Korai adatbázismodellek — hálós
adatmodell
Relációs adatmodell — 1969
(1980-)
— rugalmas, — széles
könnyen bővíthető
körben elterjedt
— áttekinthető —a
kapcsolatok nem definiáltak a modellben
— matematikailag
jól definiált (relációs algebra), halmazelméletből levezetett
Objektum orientált adatmodell —A
gyakorlati adatbázis kezelő rendszerekben (ABKR) az adatok tárolására félig, vagy ritkán alkalmazott paradigma (nem elég hatékony – tárolás, keresés)
—A
programozási gyakorlatban terjedt el
NoSQL adatbázisok —
—
„Not only SQL” —
napjainkban indultak hódító útjukra
—
eltérő tárolási módszerek
—
nem SQL alapú lekérdezések
Példák: —
dokumentum adatbázisok: félig strukturált adatok tárolására, a web (2.0) inspirálta;
—
gráf adatbázisok.
Gráf adatbázisok
CouchDB — „Apache
CouchDB has started. Time to relax.”
— dokumentum
alapú
— web-es
környezetben alkalmazott — curl http://127.0.0.1:5984/ —{
"couchdb": "Welcome", "version":"1.1.0" }
Összefoglalás — Adatbázisok
a mindennapokban
— Táblázatkezelők
és adatbázisok
— Alapfogalmak —
információ, adat, metaadat, adatmodell
—
adatbázis
—
adatbázis kezelő
— Adatbázisok
története
Jövő órán — Relációs — Miért
algebra alapjai
fontos?
Forrás —
Wikipedia —
http://hu.wikipedia.org/wiki/Adatb%C3%A1zis
—
http://en.wikipedia.org/wiki/Graph_database
—
http://en.wikipedia.org/wiki/Database
—
http://guide.couchdb.org
—
J. D. Ullman – J. Widom: Adatbázisrendszerek
—
M. J. Hernandez: Adatbázis-tervezés
—
Gajdos Sándor: Adatbázisok
—
Dominich Sándor: Adatbáziskezelő rendszerek
—
http://www.bigonehost.com
Köszönöm a figyelmet! Adatbázis rendszerek