AZ OSZTOTT LEKÉRDEZŐ NYELV
|
|
- Petra Bodnár
- 8 évvel ezelőtt
- Látták:
Átírás
1 AZ OSZTOTT LEKÉRDEZŐ NYELV BABEŞ BOLYAI TUDOMÁNYEGYETEM, KOLOZSVÁR MATEMATIKA INFORMATIKA KAR INFORMATIKA SZAK ÁLLAMVIZSGA DOLGOZAT KÉSZÍTETTE BUZOGÁNY LÁSZLÓ TÉMAVEZETŐ DR. CSÖRNYEI ZOLTÁN EGYETEMI DOCENS EÖTVÖS LORÁND TUDOMÁNYEGYETEM, BUDAPEST INFORMATIKA KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK KOLOZSVÁR, 2004
2 LIMBAJUL DE INTEROGARE DISTRIBUITĂ UNIVERSITATEA BABEŞ BOLYAI, CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ SPECIALIZAREA INFORMATICĂ LUCRARE DE DIPLOMĂ ABSOLVENT BUZOGÁNY LÁSZLÓ COORDONATOR ŞTINŢIFIC DR. CONF. CSÖRNYEI ZOLTÁN UNIVERSITATEA EÖTVÖS LORÁND, BUDAPESTA FACULTATEA DE INFORMATICĂ CATEDRA DE LIMBAJE DE PROGRAMARE ŞI COMPILATOARE CLUJ-NAPOCA, 2004
3 Tartalomjegyzék Technikai előszó...7 Előszó HONNAN SZÁRMAZIK AZ ÖTLET? Az osztott komponenscsomag története A végzetes feladat Dilemma Az alapötlet Megvalósítás: ki, mit, hogyan? Babérok A siker buzdító hatása A kutatás lépései RÉGI ÉS ÚJ PROBLÉMÁK Alapfogalmak Mező Rekord Tábla Adatbázis Adatállomány Adatbázis-kezelő rendszer Reláció Az adatbázis-kezelő rendszerek felépítése Adatok és metaadatok Indexek Tárkezelő Lekérdezés-feldolgozó Tranzakció-kezelő
4 Lekérdezések Módosítások Sémamódosítások Osztott adatbázisrendszerek jellemzői Általános leírás Adatbázisok kliens-szerver architektúrája Adatok felosztása Táblafragmentációk Előnyök Hátrányok Általános problémák Elemzés, problémafeltárás MEGOLDÁSI JAVASLAT Tipikus feladat Leírás Követelmények Elemzés Hagyományos megoldás Az osztott komponenscsomag bemutatása A DistributedConnection komponens A DistributedDataset komponens A MemoryDataset komponens A feladat megoldása az osztott komponenscsomaggal AZ OSZTOTT KOMPONENSCSOMAG A komponensek általános szerepköre Adatelérés Adattovábbítás és -szűrés Felhasználás
5 4.2. Osztályhierarchia A TDistributedConnection osztály A TDistributedDataset osztály A TMemoryDataset osztály Előkészítés és végrehajtás Osztott táblák definiálása Metaadatok és metaadat-lekérdezések AZ OSZTOTT LEKÉRDEZŐNYELV Általános bemutatás Definíció Példa Az elemzés fázisai Lexikális elemzés A lexikális elemző feladata Lexikális egységek A szimbólumsorozat tárolása A lexikális elemzést végző függvény Az automata definíciója Az automata implementációja Kulcsszavak Hibakezelés Példa Szintaktikus elemzés A szintaktikus elemző feladata Szintaktikus egységek A szintaktikus elemzést végző függvény A szintaktikus elemző grammatikája A szintaktikus elemző implementációja A rekurzív leszállás módszere
6 A szintaxisfa Példa Szemantikus elemzés A szemantikus elemző feladata Relációs algebrai alapfogalmak A végrehajtási fa A szemantikus elemzést végző függvény A végrehajtási fa előkészítése és a valódi szemantikus ellenőrzés Példa Lekérdezés-optimalizálás A lekérdezés-optimalizáló feladata Algebrai szabályok lekérdezések javítására Példa Végrehajtás A végrehajtó rész feladata A végrehajtást végző algoritmusok Példa ÖSSZEFOGLALÁS, EREDMÉNYEK Összefoglalás Hogyan tovább? BIBLIOGRÁFIA Könyvek, cikkek, egyetemi jegyzetek Internetes források
7 Technikai előszó 1170 óra munka, 19 unit, 633 KB begépelt forráskód, sor, 63 osztály, 499 eljárás és függvény és több mint 22 egyedi megoldás, mindez 3 komponensben. A dolgozat tárgyát az általam kifejlesztett osztott lekérdezőnyelv, röviden DQL (Distributed Query Language) képezi. A nyelv a 3 elemből álló osztott komponenscsomag legfontosabb része. A komponenscsomag Borland Delphi 7 rendszer alatt működik, és feladata az osztott adatbázisrendszerek alkalmazásszintű implementálása, valamint az így összekapcsolt adatbázisokon értelmezett osztott lekérdezések végrehajtása. A csomag legfontosabb eleme a DistributedConnection komponens, amelynek bemenete tetszőleges számú, különböző típusú és elérhetőségű adatbázis, esetleg tetszőleges számú előkészített táblakimenet, kimenete pedig egyetlen, jól felépített virtuális adatbázis. A felhasználónak meg kell adnia a bemeneti adatbázisokat és táblákat, valamint a kimenetet jelentő osztott táblák definícióit. Az osztott táblák lehetnek egyszerű (valódi) táblák vagy vízszintesen/függőlegesen fragmentált táblák. A fragmentumok egyesítését mindkét esetben a komponens végzi el. A virtuális adatbázis felépítésének titka az alias-nevek használatában rejlik, ugyanis ezek a nevek teszik lehetővé több adatbázis tábláinak egy adatbázisban való értelmezését, és ezáltal a forrástáblák szimbolikus elérését. A második komponens, a DistributedDataset feladata a konnekciós komponens tábladefinícióinak adatcsomagok formájában történő továbbítása az adatmodul következő szintjéhez. A komponens bemenete egyetlen DistributedConnection osztály. Ugyanitt nyílik lehetősége a felhasználónak a kimeneti adatszett típusának a meghatározására is. Három típusú kimenet létezik: osztott tábla (a legegyszerűbb kimeneti forma, amely a konnekciós komponens által definiált adatcsomagok direkt reprezentációja), metaadat (ezek különböző belső információk lehetnek, mint például az aktuális konnekció és azok alias-nevei vagy a belső és az osztott tábladefiníciók) és osztott lekérdezés. Az osztott lekérdezések alkalmazásával a legkomplexebb, de egyben legáltalánosabb kimenetet hozhatjuk létre. Ezekben a lekérdezésekben a felhasználónak lehetősége nyílik kiválogatni a kimeneti oszlopokat (akár különböző adatbázisok különböző tábláiból) és sorokat (bizonyos feltételek beírásával) úgy, hogy közben összegzési és sorbarendezési feltételek megadására is lesz lehetősége. 7
8 Az osztott lekérdezések szintaxisa megegyezik az SQL-parancsok szintaxisával. A DQL és az SQL közötti különbség a végrehajtás módjában nyilvánul meg, hiszen az osztott lekérdezések nem csupán egyetlen adatbázisra vonatkoznak, hanem adatbázisok összességére, ezért ezeknek a végrehajtása nem tartozik egyetlen adatbázis-kezelő hatáskörébe sem. Továbbá az osztott lekérdezésekben fragmentált táblákra is hivatkozhatunk, ami szintén nem megengedett hagyományos SQL-lekérdezésekben. A komponenscsomag utolsó eleme a MemoryDataset, amelynek szerepe a konnekciós komponens és az adatszettek közötti információátadásban van, ahol egyrészt tartalmazza a visszatérített adatszett struktúráját, másrészt pedig magát az adatokat is. A komponens kitűnően használható tetszőleges, nem adatbázis-alapú adatok memóriában történő tárolására, ami nagy segítséget jelent az osztott adatbázisok adatainak a feldolgozásában. A komponenscsomag a bennfoglalt osztott lekérdezőnyelvvel együtt tehát egyedülálló módszert (technológiát) biztosít osztott adatbázisok definícióinak megadására és az osztott adatok kinyerésére, az alias-nevek alkalmazásával pedig kikerüli az adatbázisok elérésének címmel történő megadását. A csomag önmagában helyettesítheti bármilyen osztott adatbázisokat támogató alkalmazás adathozzáférési rétegét, azaz teljesen általánosan valósítja meg a táblák elérését mind helyi, mind pedig távoli szerverek esetén. A komponenscsomag használatának részletes leírása megtalálható a 3. fejezetben, a 4. fejezetben a komponensek technikai megvalósítását mutatom be, az 5. fejezetben az osztott lekérdezések elemzését és végrehajtását ismertetem, a 6. fejezetben pedig összegzem a leírtakat. 8
9 Előszó Az osztott lekérdezőnyelv. Úgy hiszem kevesen vannak, ha egyáltalán vannak, akik hallottak már erről a nyelvről. 1+1=1. A matematikusok minden bizonnyal nagyot néznének egy ilyen összeadás láttán. E szakdolgozatban új dolgokról lesz szó, új megközelítésben és a legfrissebb megoldási javaslatokkal fűszerezve. A dolgozatot azt hiszem nevezhetjük kutatómunkának is. Kutatómunka, hiszen szembesültem egy problémával (1. fejezet), amire megpróbáltam megoldást keresni, elsősorban a már létező ajánlatok közül (2. fejezet), és mivel egyetlen egy ilyen megoldást sem találtam, szükségesnek láttam egy olyan rendszer kidolgozását, amely igyekszik pótolni e hiányosságot (3. fejezet). Éppen ezért olyan komponenscsomagot fejlesztettem ki (4. fejezet), amely a címadó osztott lekérdezőnyelv által (5. fejezet) remélhetőleg egyszerű és hatékony gyakorlati segédeszközként fog szolgálni a jövő programozói számára. E munka során tehát feltártam, megvizsgáltam, megoldottam és nem utolsó sorban összegeztem, a szakirodalomnak pedig remélhetőleg egy új szikrát adtam (6. fejezet). Azt hiszem érdemes lesz egy kis időt rászánni e dolgozatra. Mindezek mellett remélem, hogy e munka nem csak egyike lesz azon államvizsga dolgozatoknak, amelyek a védést követően polcra kerülnek és idővel feledésbe merülnek. Sajnos számos ötlet és rengeteg munka végzi hasonlóképpen. Úgy érzem, hogy az egyetem legfőbb célja a tanítás mellett az, hogy a diákokat ösztönözze és segítse a haladásban, az új ötletek megtalálásában és kidolgozásában, és ha már ebben segített nekik, akkor az eredményeket kellőképpen értékelje és felhasználja. Köszönet illeti tehát azon tanárokat, diákokat és szakembereket, akik a tanulókat munkára és kutatásra ösztönzik, és segítenek nekik ebben. Külön ajándéknak tekinthetjük a különböző versenyeket, különös tekintettel az ETDK-t és egyes konferenciákat, amelyeknek éppen az a céljuk, hogy ösztönözzenek és értékeljenek. Az államvizsga dolgozat a következő nagy lehetőség, amelyen mindenki bizonyíthat. Az egyéni és csoportos projekt tantárgyaknak szintén gyakorlati ösztönző szerepük van. De azt hiszem, hogy mindez nem elég: az egyetemnek még több kutatómunkára, kutatócsoportra, lelkes diákra és tanárra lenne szüksége. A hallgatókban van igény munkára, a gyakorlatra, csak egy kicsit ösztönözni kell őket, hogy teljesítőképességük legjavát mutathassák meg. 9
10 Itt szeretném megköszönni a segítséget minden tanáromnak, akik legjobb tudásuk szerint igyekeztek minket minél jobban kiképezni az előttünk álló küldetésekre. Nekik továbbra is jó munkát kívánok! Külön köszönet illeti dr. Varga Ibolya tanárnőmet, aki folyamatos ösztönzésével és biztatásával olyan helyzetbe kényszerített engem, hogy tanuljak, dolgozzam és gondolkodjam. Neki köszönhetem, hogy az adatbázis-kezelés egy új területével (az osztott adatbázisrendszerekkel) megismerkedhettem, és rálátást kaptam a terület hiányosságaira, ami ösztönzően hatott rám. Külön hálás vagyok az általa biztosított szakirodalomért és szakmai tanácsokért. Másodsorban köszönettel tartozom vezetőtanáromnak, dr. Csörnyei Zoltánnak, aki a fordítóprogramok tantárgy révén egy külön világ felé nyitotta ki a szememet. Sikerült átadnia azt a lelkesedést és hozzáállást, amellyel ő maga is rendelkezik a fordítás iránt, és amely a programozóknak abból az erős vágyából fakad, hogy egy rendszertelen leírásban logikát találjanak, általánosítsák és leegyszerűsítsék azt, vagyis az emberek bonyolult nyelvét a számítógép bonyolult nyelvére alakítsák. Ezt az egyik legszebb és legérdekesebb dolognak találom, amelyet programozó végezhet. Végül pedig hálás köszönetet mondok Lukács Sándor kollégámnak, akivel az elején közösen vágtunk bele e feladat megoldásába, de aki mindvégig hasznos gyakorlati segítséggel és tanácsokkal látott el. Tőle tanultam a lelkesedést és a kitartást, ő volt aki a nehéz pillanatokban is kiállt mellettem és biztatott. Részben neki köszönhetem, hogy e komponenscsomag és e dolgozat elkészült. A szakemberek azt tartják, hogy egy kézikönyvnek csak a harmadik kiadása használható igazán. Mivel nem áll módomban e dolgozatnak rögtön a harmadik, javított változatával előállni de idővel szeretnék, kérem Önöket, hogy megjegyzéseiket, javaslataikat, kritikai észrevételeiket osszák meg velem, hogy egy következő változatban már ezeket is figyelembe vehessem. Kolozsvár, június 13. Buzogány László 10
11 1. FEJEZET HONNAN SZÁRMAZIK AZ ÖTLET?
12 HONNAN SZÁRMAZIK AZ ÖTLET? 1.1. Az osztott komponenscsomag története Ezt az ötletet amelyet e dolgozatban igyekszem részletesen ismertetni elsősorban a kényszer szülte. Ez így működik valahányszor egy hallgató valamilyen feladatot kap és azt nem akarja, nem tudja, vagy csak nagyon nehezen tudja elvégezni. Ilyen esetekben az illető diák gondolkozni kezd, hogyan lehetne másképpen megközelíteni a problémát, hogyan lehetne kicselezni vagy esetleg kikerülni a feladatot? Megoldást keres, természetesen a maga módján, és az esetek többségében talál is A végzetes feladat Egyetemünkön az informatika csoportok általában tanulják az adatbázis-kezelés alapjait, majd ennek folytatásaként az osztott adatbázisrendszerek nevezetű tantárgyat. E tárgyak keretében a hallgatók megismerkednek az adatbázis-kezelés alapfogalmaival, megtanulják a legismertebb adatbázis-kezelő rendszerek használatát, és olyan projekteken dolgoznak, amelyek hozzásegítik a terület szakmai-gyakorlati részének a megismeréséhez és elsajátításához. Az osztott adatbázis-kezelő rendszerek tanulmányozása céljából olyan alkalmazást kellett írnunk, amely az adatokat különböző típusú adatbázisokból gyűjti össze, ezeket mégis valamilyen célból egy egységként kezeli, összefüggőnek látja. Ennek egyszerűbb változata amikor az egyes adatbázisok ugyanazon rendszerben találhatók mindennapi feladatnak számít a gyakorlatban. Az adatok különböző típusú és elérésű adatbázisokból való lekérdezése és napratétele, illetve az egyes feladatok összehangolása (szinkronizálása) viszont már jóval nehezebb feladat Dilemma Az ilyen feladatokat általában bonyolult programozási technikákkal oldják meg, és a legtöbb esetben nem nyújtanak kellő biztonságot, nem garantálják az adatok mindenkori elérését, sőt a műveletek szinkronizálását sem. Továbbá ezen alkalmazások többsége erősen testre szabott, egyedi környezetet igényel és csak a konkrét feladatra optimalizált. Ennek folyományaként a későbbi javítások nagyon nehezen végezhetők el, egyes esetekben pedig teljességgel lehetetlenek. Nem volt ez másként a mi feladatunk esetén sem. 12
13 HONNAN SZÁRMAZIK AZ ÖTLET? Lukács Sándor társammal együtt tehát döntenünk kellett: a hagyományos utat választjuk és egy egyszerű, egyszeri használatú alkalmazást írunk, amely a feladat követelményeinek minimálisan megfelel ugyan, de egyébre nem használható, vagy valami sokkal jobbat találunk ki. Előbb az első lehetőséggel kísérleteztünk, de sajnos nem az általunk elvárt eredményt hozta, ezért végül elhatároztuk: belevágunk és sokkal nagyobb erőfeszítéssel, de valami maradandót és használhatót alkotunk, ami reményeink szerint a jövőben sok más, hasonló helyzetben levő programozón segít majd. Végül egy olyan módszert sikerült kidolgoznunk, amely az eredeti bonyolult (heteket igénylő) feladatot egy délutános kattintgatással oldja meg Az alapötlet Adott tehát több különböző típusú és elérhetőségű adatbázis. A feladat egy olyan rendszer kidolgozása, amely az adatbázisok tábláin műveleteket képes végezni, és lehetővé teszi olyan lekérdezések megfogalmazását, amelyek ugyanúgy működnek helyi, központi, és összesített adatok esetén is. A megoldás leegyszerűsítése céljából olyan komponenscsomagot dolgoztunk ki, amely egyidőben tetszőleges számú és típusú adatbázishoz, illetve táblához képes kapcsolódni. Az így összegyűjtött adatokat a felhasználó ezután becenévvel (alias-névvel) látja el, és ezáltal egyetlen, nagy, virtuális adatbázishoz jut. A komponenscsomag egy másik eleme lehetővé teszi az ily módon létrehozott adatbázisokból való lekérdezések végrehajtását Megvalósítás: ki, mit, hogyan? Az ötlet egyedisége miatt ki kellett dolgoznunk a tervet az első lépéstől az utolsóig. Ez nem volt könnyű feladat, hiszen minden új ötlet felvetése újabb kérdéseket, akadályokat és ellenérveket hozott magával. Az elején a társammal közösen dolgoztunk, próbáltuk a legjobb megoldást megtalálni. A feladatot különösen bonyolították a különböző típusú adatbázisok, a szinkronizációs problémák, a komponensek közti viszonyok, a lekérdezőnyelv alapfilozófiája, az adatok begyűjtésének és módosításának kérdései. Ekkor értettük meg, hogy korábban miért nem foglalkoztak mások is e témával. Végül körvonalazódni kezdett a feladat, az ábrák lassan algoritmusokká alakultak, és az elmélet gyakorlati formát öltött. Elkészítettük az első változatokat, és prototípusok segítségével tesztelni kezdtük az ötleteinket. Úgy tűnt a rendszer működőképes lesz. 13
14 HONNAN SZÁRMAZIK AZ ÖTLET? A problémát két jól elkülöníthető részre osztottuk: A társam a két alapvető DistributedConnection és DistributedDataset nevű komponens megírására vállalkozott. Az első a különböző adatbázisrendszerekhez való kapcsolódást végzi, míg a második az így felépített virtuális adatbázisból képez valamilyen adatcsomagot. Egy ilyen adatcsomag lehet a virtuális adatbázis egy táblája, valamilyen metaadat vagy osztott lekérdezés. A komponensek felépítését a 4. fejezetben mutatom be. Az én feladatom az osztott lekérdezőnyelv kidolgozása és megvalósítása volt. Ez az ún. lekérdező-végrehajtó motor logikailag a DistributedConnection komponensben helyezkedik el. E nyelv feladata az osztott adatbázisokon értelmezett lekérdezések elemzése és végrehajtása, vagyis az adatok különböző adatbázisokból való begyűjtése és összesítése. Ez a komponenscsomag azon része, amely az előzőleg begyűjtött információk alapján elvégzi az osztott adatbázis-műveleteket (5. fejezet) Babérok A komponenscsomag első, bemutató jellegű változatával jelentkeztünk a 2003-as Erdélyi Tudományos Diákköri Konferenciára (ETDK), ahol az ötletünket első díjjal jutalmazták A siker buzdító hatása Az ETDK-n való szereplés azonban csak a kezdet volt. Úgy gondolom, hogy a projekt teljes kidolgozása akár két évet is igénybe venne, és eközben rengeteg más, újabb megoldandó problémát vetne fel. Tehát e téma körbejárása akár egy élet kutatómunkája is lehetne. A kezdeti sikerektől és eredményektől felbuzdulva úgy döntöttem, hogy folytatom a megkezdett munkát. Éppen ezért a komponenscsomagot tovább fejlesztettem, létrehozva egy működőképes, a végcélhoz sokkal közelebb álló programot. Ezen túlmenően igyekeztem a dolgozatot elméleti szempontból is megalapozni: utánanéztem a már létező, hasonló jellegű munkáknak és rendszereknek, illetve a saját rendszeremen belül törvényszerűségeket, szabályokat próbáltam felállítani. Új fogalmakat vezettem be a szakirodalomba, és tisztáztam az egyes komponensek szerepkörét, a lekérdező és végrehajtó mechanizmusok működését, valamint általánosítottam a felhasznált algoritmusokat. A kutatás eredményeit összefoglaltam, ezáltal munkámat a tudományág egy bizonyos területébe illesztettem. 14
15 HONNAN SZÁRMAZIK AZ ÖTLET? 1.2. A kutatás lépései A komponenscsomag és a dolgozat jelen formájához több lépésen keresztül jutottam. Ezek a kutatási lépések a következők voltak: 1. A probléma feltárása. Miután az osztott rendszereken alapuló alkalmazás megírásánál problémák merültek fel, igyekeztem meghatározni azokat a tényezőket, és igényeket, amelyek egy ilyen rendszer megvalósításánál jelentkeznek. Ezek alapján egy követelményrendszert állítottam fel, amelyekhez a következőkben igazodni próbáltam. 2. Az ötletek begyűjtése. A felmerülő problémákra megoldási javaslatokat tettem, amelyeket egy előzetes összehasonlítás után rangsoroltam. A legjobb ötleteket kiválasztottam és elkészítettem a komponenscsomag vázlatát. 3. A prototípus elkészítése. A vázlatok alapján az ötleteket néhány általam összeállított példára alkalmaztam, és megállapítottam, hogy milyen elvárt eredményhez kellene jutnom. 4. A komponenscsomag elkészítése. A felvázolt elméleti adatstruktúrákat és algoritmusokat implementáltam, és elkészítettem a komponenscsomag első változatát. 5. A példaprogram megírása. Olyan példaalkalmazást készítettem, amely átfogóan bemutatja és egyben ellenőrzi a program működését. 6. Tesztelés. A komponenscsomagot különböző helyzetekben és adatbázisokra kipróbáltam. A felmerülő hibákat folyamatosan javítottam, mígnem egy általam elfogadhatónak tartott, stabil alkalmazáshoz jutottam. 7. Összegzés és általánosítás. Az ötleteket és eredményeket még egyszer átgondoltam, a szerkezetet letisztítottam, a forráskódot megjegyzésekkel láttam el, valamint megpróbáltam az eredményeket megfelelőképpen értelmezni. 8. A dolgozat megírása. A komponens szerkezetéhez, illetve a kutatás lépéseihez igazodva elkészítettem a dolgozat vázlatát, megrajzoltam a külalaktervet, majd megfogalmaztam és leírtam a gondolataimat. Végül a dolgozatot korrektor jelenlétében még egyszer figyelmesen átnéztem és kijavítottam. 15
16 2. FEJEZET RÉGI ÉS ÚJ PROBLÉMÁK
17 RÉGI ÉS ÚJ PROBLÉMÁK 2.1. Alapfogalmak Mielőtt mélyebb adatbázis-kezelési problémák tárgyalásába kezdenék, szükségszerű tisztázni néhány nagyon fontos fogalmat, amelyekre a későbbiekben gyakran fogok hivatkozni Mező Mezőnek (field) nevezünk egy egységnyi, különálló jellemzőt. Egy mezőbe írhatjuk például valakinek a nevét, a telefonszámát vagy az címét. [5, 438. p.] Rekord Az egy egységet leíró, logikailag összetartozó mezőket együttesen rekordnak (record) vagy bejegyzésnek nevezzük. Például egy személyhez tartozó adatok (név, cím, telefonszám) egy rekordot alkotnak. [5, 438. p.] Tábla Több, azonos szerkezetű bejegyzés táblát (table) alkot. Egy táblában tárolhatjuk például egy csoport minden tanulójának a nevét, jegyeit és kedvenc tantárgyait. A táblák, amint a nevük is jelzi táblázatos formában tárolják az információt, azaz a sorok jelentik a rekordokat, míg az oszlopok egy-egy mezőt azonosítanak. [5, 438. p.] Adatbázis A logikailag összetartozó adathalmazokat tehát táblákba szervezzük. Előfordulhatnak azonban olyan bonyolultabb feladatok is, amelyek adatai nem rögzíthetők egyetlen táblába. (Képzeljünk el egy autókölcsönzőt, ahol minden adatot számítógépen tárolnak. Egy tábla a raktáron levő autók típusát és darabszámát tárolja, egy másik az autók jellemzőit, egy harmadik a kliensek nyilvántartásáért felelős, de a cég alkalmazottjainak is külön táblázatot kell létrehozni.) Ekkor célszerű ezen összefüggő adattáblákat valamilyen nagyobb egységbe tömöríteni. Egy ilyen összefüggő adatszerkezetet nevezünk adatbázisnak (database). [5, 438. p.] Egy másik meghatározás szerint az adatbázis nem más, mint hosszú ideig gyakran évekig meglévő információk gyűjteménye. [1, 19. p.] 17
18 RÉGI ÉS ÚJ PROBLÉMÁK Adatállomány Többféle adatbázis létezik, amelyek különféle módszereket alkalmaznak az adatok tárolására. A legtöbb típusnál az adatbázisok külön fájlokban vannak elhelyezve, ezeket adatállományoknak (data file) nevezzük. [5, 438. p.] Adatbázis-kezelő rendszer Az adatbázis-kezelő rendszer (DBMS Database Management System) az adatbázisok adatainak a kezelését végzi. Szokás ezeket a rendszereket egyszerűen csak adatbázisrendszereknek nevezni. Egy adatbázisrendszerrel szemben a következő elvárásaink vannak: Tegye lehetővé a felhasználók számára új adatbázisok létrehozását, és az adatok sémáját, vagyis az adatok logikai struktúráját egy speciális nyelven adhassák meg. Ezt a speciális nyelvet adatdefiníciós nyelvnek nevezzük. Engedje meg a felhasználóknak, hogy az adatokat egy megfelelő nyelv segítségével lekérdezhessék és módosíthassák. Ez a nyelv a lekérdezőnyelv vagy adatmanipulációs nyelv. Támogassa nagyon nagy mennyiségű adat (gigabájtok vagy még több adat) hosszú időn keresztül való tárolását, garantálja az adatok biztonságát a meghibásodásokkal és az illetéktelen felhasználókkal szemben, és tegye lehetővé a hatékony adathozzáférést a lekérdezések és az adatbázis-módosítások számára. Felügyelje a több felhasználó által egy időben történő adathozzáféréseket úgy, hogy az egyes felhasználók műveletei ne legyenek hatással a többi felhasználóra és az egyidejű adathozzáférések ne vezethessenek az adatok hibássá vagy következetlenné válásához. [1, p.] Reláció Ted Codd 1970-ben publikált egy híres cikket, amelynek megjelenése után az adatbázisrendszerek jelentősen megváltoztak. Codd azt javasolta, hogy az adatbázisrendszereknek a felhasználó felé az adatokat táblázatok formájában kellene megjeleníteniük, ezeket a táblákat nevezzük relációknak. A háttérben persze egy bonyolultabb adatstruktúra is lehet, amelyik lehetővé teszi, hogy a rendszer gyorsan adjon választ a legkülönbözőbb kérdésekre, de ellentétben a korábbi rendszerekkel egy relációs rendszer felhasználójának nem kell törődnie az adatok tárolási struktúrájával. A lekérdezések egy olyan magas színtű nyelv segítségével fejezhetők ki, amelyek használata jelentős mértékben növeli az adatbázis-programozók hatékonyságát. [1, 22. p.] 18
19 RÉGI ÉS ÚJ PROBLÉMÁK 2.2. Az adatbázis-kezelő rendszerek felépítése Az adatbázis-kezelő rendszerek legfontosabb részeit a 2.1. ábrán láthatjuk. [1, p.] Adatok és metaadatok Az 2.1. ábra alján az adatok tárolására szolgáló helyet lemez alakú ábrával jelöltem. Megjegyzem, hogy az ábrán azt is jelöltem, hogy ez a rész nem csak adatokat, hanem ún. metaadatokat is tartalmaz, ami az adatok szerkezetét írja le. Például ha az adatbázis-kezelő relációs, akkor a metaadatok között szerepelnek a relációk nevei, a relációk attribútumainak nevei és az attribútumok adattípusai (mind például egész vagy 20 hosszúságú karakterlánc). Sémamódosítások Lekérdezések Módosítások Lekérdezés-feldolgozó Tárkezelő Tranzakció-kezelő Adatok Metaadatok 2.1. ábra. Az adatbázis-kezelő rendszerek főbb részei és a köztük levő kapcsolatok Indexek Az adatbázis-kezelő rendszerek gyakran indexeket használnak az adatok elérésére. Az index olyan adatstruktúra, amely lehetővé teszi, hogy az adatelemeket gyorsan megtaláljuk, ha ismerjük a hozzájuk tartozó értékek bizonyos részeit. A leggyakrabban előforduló példa egy olyan index, amelynek a segítségével egy reláció azon sorait kereshetjük meg, amelyekben az egyik attribútum értéke adott. Az indexek a tárolt adatok közé tartoznak, az az információ azonban, hogy mely attribútumokra léteznek indexek, a metaadatok részét képezi. 19
20 RÉGI ÉS ÚJ PROBLÉMÁK Tárkezelő Az 2.1. ábrán láthatjuk még a tárkezelőt, amelynek feladata a kért információ beolvasása a kérést fogalmaznak meg Lekérdezés-feldolgozó Láthatunk még egy olyan komponenst, amelyet lekérdezés-feldolgozónak neveztünk, habár ez az elnevezés nem teljesen helyes. Ez a rész ugyanis nem csak a lekérdezéseket kezeli, hanem az adatok és a metaadatok módosítására vonatkozó kéréseket is ez adja ki. Ennek a komponensnek kell megtalálnia egy művelet legjobb végrehajtási módját, és ez adja ki a tárkezelőnek szóló utasításokat is Tranzakció-kezelő A tranzakció-kezelő rész felelős a rendszer sértetlenségéért. Neki kell biztosítania, hogy az egyidőben futó lekérdezések és módosítások ne ütközzenek össze egymással, és hogy a rendszer még rendszerhiba esetén se veszíthessen adatokat. Kapcsolatot tart a lekérdezés-feldolgozóval, hiszen a konfliktusok elkerüléséhez tudnia kell, hogy az aktuális lekérdezések éppen mely adatokon dolgoznak, és épp e konfliktusok megakadályozásáért késleltethet bizonyos lekérdezéseket vagy műveleteket. Kapcsolatot tart a tárkezelővel is, mert az adatok védelmére szolgáló módszerek többnyire magukba foglalják a módosítások naplózását is. Ha a műveleteket a megfelelő sorrendben végzi el a rendszer, akkor a naplóban benne lesznek a változtatások, és így egy rendszerhiba után még azok a módosítások is újra végrehajthatók lesznek, amelyeknek a lemezre írása eredetileg nem volt sikeres Lekérdezések Az 2.1. ábra felső részén az adatbázis-kezelő rendszer három különböző fajta inputját láthatjuk. Az első a lekérdezések, amelyek az adatokra vonatkozó kérdések. Ezek két különböző módon jöhetnek létre. Egy általános lekérdező-interfészen keresztül. Például a rendszer megengedi a felhasználónak, hogy SQL lekérdezéseket gépeljen be, amelyeket aztán a lekérdezés-feldolgozó fog megkapni és végrehajtani. 20
21 RÉGI ÉS ÚJ PROBLÉMÁK Egy alkalmazói program interfészén keresztül. Az adatbázis-kezelő rendszerek általában megengedik a programozónak, hogy olyan programot írjon, amely az adatbázis-kezelőnek szóló hívásokon keresztül kérdezi le az adatbázist. Például egy repülőgép-helyfoglalási rendszert használó ügynök egy olyan programot futtat, amelyik a különböző járatok adatait kérdezi le az adatbázisból. A lekérdezések egy speciális interfészen keresztül adhatók meg, ahol tulajdonképpen mezőket kell kitölteni városok neveivel, időpontokkal vagy egyéb adatokkal. Ezen az interfészen keresztül nem tehetünk fel tetszőleges kérdéseket, de amit kérdezhetünk azt általában egyszerűbben kérdezhetjük le ezen az interfészen keresztül, mintha nekünk kellene megírnunk a lekérdezést SQL-ben Módosítások Ezek a műveletek az adatok változtatására szolgálnak. Ugyanúgy, ahogyan a lekérdezéseket, ezeket is kiadhatjuk egy általános interfészen, vagy egy alkalmazás interfészén keresztül Sémamódosítások Ezeket az utasításokat általában csak az illetékes személyek (adatbázis-adminisztrátorok) adhatják ki, akik megváltoztathatják az adatbázis sémáját, vagy akár új adatbázist hozhatnak létre. Például, amikor a bankokat arra kötelezték, hogy a kamatfizetéseket az ügyfelek személyi számával együtt jelentsék az adóhatóság felé, akkor minden bizonnyal egy új attribútummal a személyi számmal kellet bővíteniük azt a relációt, amelyik az ügyfelek adatait tárolta Osztott adatbázisrendszerek jellemzői Általános leírás Az osztott adatbázisrendszerek tulajdonképpen az informatika két különböző, látszólag egymástól független ágának az egyesítéséből alakultak ki. E két terület az adatbázisrendszerek és a számítógép-hálózatok rendszere. A hagyományos adatbáziskezelő-rendszerek alapvető feladata az adatok tárolása és rendszerezése. Ezek az adatok egyetlen központi gépen helyezkednek el, ahonnan a különböző alkalmazások elérhetik, és felhasználhatják őket saját céljaikra (2.2. ábra). Ez a megoldás erős adatfüggőséget okoz, mivel a rendszer esetleges összeomlásával az alkalmazás képtelen lesz tovább működni. 21
ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek
ADATBÁZIS-KEZELÉS Adatbázis-kezelő rendszerek Adat (Data) Észlelhető, felfogható ismeret Jelsorozat Tény, közlés Valakinek vagy valaminek a jellemzője Adatbázis (Data Base, DB) Hosszú ideig évekig meglévő
RészletesebbenAdatbázis rendszerek. dr. Siki Zoltán
Adatbázis rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati személyzeti
RészletesebbenAdatmodellezés. 1. Fogalmi modell
Adatmodellezés MODELL: a bonyolult (és időben változó) valóság leegyszerűsített mása, egy adott vizsgálat céljából. A modellben többnyire a vizsgálat szempontjából releváns jellemzőket (tulajdonságokat)
RészletesebbenCsima Judit szeptember 6.
Adatbáziskezelés, bevezető Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2017. szeptember 6. Csima Judit Adatbáziskezelés, bevezető 1 / 20 Órák, emberek heti két óra: szerda 14.15-16.00
RészletesebbenAdatbázisok elmélete
Adatbázisok elmélete Adatbáziskezelés, bevezető Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Katona Gyula Y. (BME SZIT) Adatbázisok elmélete
RészletesebbenAdatbázismodellek. 1. ábra Hierarchikus modell
Eddig az adatbázisokkal általános szempontból foglalkoztunk: mire valók, milyen elemekből épülnek fel. Ennek során tisztáztuk, hogy létezik az adatbázis fogalmi modellje (adatbázisterv), amely az egyedek,
RészletesebbenAdatbázis, adatbázis-kezelő
Adatbázisok I. rész Adatbázis, adatbázis-kezelő Adatbázis: Nagy adathalmaz Közvetlenül elérhető háttértárolón (pl. merevlemez) Jól szervezett Osztott Adatbázis-kezelő szoftver hozzáadás, lekérdezés, módosítás,
RészletesebbenAdatbázis-kezelő rendszerek. dr. Siki Zoltán
Adatbázis-kezelő rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati
RészletesebbenSzoftverarchitektúrák 3. előadás (második fele) Fornai Viktor
Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor A szotverarchitektúra fogalma A szoftverarchitektúra nagyon fiatal diszciplína. A fogalma még nem teljesen kiforrott. Néhány definíció: A szoftverarchitektúra
RészletesebbenAdatbáziskezelés Delphi 5 alatt. Bese Antal 2006. http://toni.web.elte.hu/delphi
Adatbáziskezelés Delphi 5 alatt Bese Antal 2006. http://toni.web.elte.hu/delphi 1. Bevezetés Számítógépes adattárolás fájlokban. Az egész adatbázist egy fájlban (Pl.: Access, Interbase,és a legtöbb SQL
RészletesebbenADATBÁZISOK ADATBÁZIS-KEZELŐ RENDSZEREK. Debrenti Attila
ADATBÁZISOK ADATBÁZIS-KEZELŐ RENDSZEREK Debrenti Attila Az adatbázis fogalma 2 Számos egzakt, tudományos definíció. Hétköznapi definíció: az adatbázis valamilyen jól definiált rendszer szerint tárolt adatokból
RészletesebbenNyilvántartási Rendszer
Nyilvántartási Rendszer Veszprém Megyei Levéltár 2011.04.14. Készítette: Juszt Miklós Honnan indultunk? Rövid történeti áttekintés 2003 2007 2008-2011 Access alapú raktári topográfia Adatbázis optimalizálás,
RészletesebbenABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben
ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben 2.2 Műveletek a relációs modellben 2.2.1 Relációra vonatkozó megszorítások 2.2.2 Multihalmazon értelmezett műveletek 2.2.3 A relációs
RészletesebbenHogyan fogalmazzuk meg egyszerűen, egyértelműen a programozóknak, hogy milyen lekérdezésre, kimutatásra, jelentésre van szükségünk?
Hogyan fogalmazzuk meg egyszerűen, egyértelműen a programozóknak, hogy milyen lekérdezésre, kimutatásra, jelentésre van szükségünk? Nem szükséges informatikusnak lennünk, vagy mélységében átlátnunk az
RészletesebbenMagic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon
Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon Mi az IMDG? Nem memóriában futó relációs adatbázis NoSQL hagyományos relációs adatbázis Más fajta adat tárolás Az összes adat RAM-ban van, osztott
RészletesebbenAz adatbázisrendszerek világa
Az adatbázisrendszerek világa Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 1.1. Az adatbázisrendszerek fejlődése 1.2. Az adatbázis-kezelő rendszerek áttekintése
RészletesebbenOpenCL alapú eszközök verifikációja és validációja a gyakorlatban
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban Fekete Tamás 2015. December 3. Szoftver verifikáció és validáció tantárgy Áttekintés Miért és mennyire fontos a megfelelő validáció és
RészletesebbenADATBÁZIS-KEZELÉS ALAPOK I.
ADATBÁZIS-KEZELÉS ALAPOK I. AZ ADATBÁZIS FOGALMA Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei egy meghatározott tulajdonságuk alapján összetartozónak tekinthetők. Az adatbázis-kezelőknek
RészletesebbenAz adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata:
ADATSZERVEZÉS Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata: fájlrendszerek (a konvencionális módszer) és adatbázis rendszerek (a haladóbb
RészletesebbenVezetői információs rendszerek
Vezetői információs rendszerek Kiadott anyag: Vállalat és információk Elekes Edit, 2015. E-mail: elekes.edit@eng.unideb.hu Anyagok: eng.unideb.hu/userdir/vezetoi_inf_rd 1 A vállalat, mint információs rendszer
RészletesebbenFájlrendszerek. A Windows operációs rendszerek fájlrendszere
Fájlrendszerek A Windows operációs rendszerek fájlrendszere Fájlrendszerek definíció A számítástechnika egy fájlrendszer alatt a számítógépes fájlok tárolásának és rendszerezésének a módszerét érti, ideértve
RészletesebbenFejlett kereső és lekérdező eszközök egy elektronikus szakfolyóirathoz (IBVS)
Networkshop, 2008 Márc. 17 19., Dunaújváros Holl Erdődi: Fejlett kereső... 1 Fejlett kereső és lekérdező eszközök egy elektronikus szakfolyóirathoz (IBVS) Holl András Erdődi Péter MTA Konkoly Thege Miklós
RészletesebbenSZAKDOLGOZAT ÓBUDAI EGYETEM. Neumann János Informatikai kar Alba Regia Egyetemi Központ
ÓBUDAI EGYETEM Neumann János Informatikai kar Alba Regia Egyetemi Központ SZAKDOLGOZAT OE-NIK Hallgató neve: Berencsi Gergő Zsolt 2010. Törzskönyvi száma: T 000123/FI38878/S-N Tartalomjegyzék Tartalmi
RészletesebbenADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu
ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.
RészletesebbenINFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010
INFORMATIKA ÁGAZATI ALKALMAZÁSAI Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010 2. Adatbáziskezelés eszközei Adatbáziskezelés feladata Adatmodell típusai Relációs adatmodell
RészletesebbenAdatbázis-kezelés. alapfogalmak
Adatbázis-kezelés alapfogalmak Témakörök Alapfogalmak Adatmodellek Relációalgebra Normalizálás VÉGE Adatbázis-kezelő rendszer Database Management System - DBMS Integrált programcsomag, melynek funkciói:
RészletesebbenTájékoztató. Használható segédeszköz: -
A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosítószáma és megnevezése 54 213 05 Szoftverfejlesztő Tájékoztató A vizsgázó az első lapra írja fel a nevét!
RészletesebbenUtolsó módosítás:
Utolsó módosítás: 2011. 09. 08. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 10 11 12 13 14 Erősen buzzword-fertőzött terület, manapság mindent szeretnek
RészletesebbenAz adatbáziskezelés alapjai
Az adatbáziskezelés alapjai Klárné Barta Éva Az adatokat fájlokba szervezve tárolják a számítógépek háttértárain, elsődlegesen a merevlemezeken. Az első adatfeldolgozó rendszerek néhány fájlban tárolt
RészletesebbenFTP Az FTP jelentése: File Transfer Protocol. Ennek a segítségével lehet távoli szerverek és a saját gépünk között nagyobb állományokat mozgatni. Ugyanez a módszer alkalmas arra, hogy a kari web-szerveren
RészletesebbenProgramozás alapjai Bevezetés
Programozás alapjai Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Programozás alapjai Bevezetés SWF1 / 1 Tartalom A gépi kódú programozás és hátrányai A magas szintÿ programozási nyelv fogalma
RészletesebbenProgramozás. Adatbázis-kezelés (alapok) Fodor Attila
Programozás Adatbázis-kezelés (alapok) Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 22. Bevezetés Adatbáziskezelés
RészletesebbenFiáth Attila Nagy Balázs Tóth Péter Dóczi Szilvia Dinya Mariann
Fiáth Attila Nagy Balázs Tóth Péter Dóczi Szilvia Dinya Mariann Egységes kockázatkezelési módszertan kialakítása a villamosenergia-ipari átviteli rendszerirányító társaságnál A felelős vállalatirányítás
RészletesebbenOrvosi készülékekben használható modern fejlesztési technológiák lehetőségeinek vizsgálata
Kutatási beszámoló a Pro Progressio Alapítvány számára Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Mérnök informatika szak Orvosi készülékekben használható modern
RészletesebbenKÉPZÉSI PROGRAM. GAZDASÁGI INFORMATIKUS OKJ azonosító: 54 481 02. Szolnok
KÉPZÉSI PROGRAM GAZDASÁGI INFORMATIKUS OKJ azonosító: 54 481 02 Szolnok 2015 KÉPZÉSI PROGRAM A képzési program Megnevezése Gazdasági informatikus OKJ azonosító 54 481 02 A képzés során megszerezhető kompetenciák
RészletesebbenInformáció menedzsment
Információ menedzsment Szendrői Etelka Rendszer- és Szoftvertechnológiai Tanszék szendroi@witch.pmmf.hu Szervezetek felépítése Szervezetek közötti információáramlás Információ fogadás Elosztás Új információk
RészletesebbenOOP. Alapelvek Elek Tibor
OOP Alapelvek Elek Tibor OOP szemlélet Az OOP szemlélete szerint: a valóságot objektumok halmazaként tekintjük. Ezen objektumok egymással kapcsolatban vannak és együttműködnek. Program készítés: Absztrakciós
RészletesebbenGPU Lab. 4. fejezet. Fordítók felépítése. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc
4. fejezet Fordítók felépítése Grafikus Processzorok Tudományos Célú Programozása Fordítók Kézzel assembly kódot írni nem érdemes, mert: Egyszerűen nem skálázik nagy problémákhoz arányosan sok kódot kell
RészletesebbenGrid menedzsment megoldás az ARC köztesrétegben
Grid menedzsment megoldás az ARC köztesrétegben Intézetünk az Új Magyarország Fejlesztési Terv TÁMOP 4.1.3[1] alprojektjének keretén belül dolgozott ki sikeresen egy jól működő megoldást egy olyan problémára,
RészletesebbenAdatbázis rendszerek 2. előadás. Relációs algebra
Adatbázis rendszerek. előadás Relációs algebra Molnár Bence Szerkesztette: Koppányi Zoltán Bevezetés Relációs algebra általában A relációs algebra néhány tulajdonsága: Matematikailag jól definiált Halmazelméletből
RészletesebbenAdatbáziskezelés. Indexek, normalizálás NZS 1
Adatbáziskezelés Indexek, normalizálás NZS 1 Fáljszervezés módjai Soros elérés: a rekordok a fájlban tetszőleges sorrendben, például a felvitel sorrendjében helyezkednek el. A rekord azonosítója vagyis
RészletesebbenInformatikai alapismeretek Földtudományi BSC számára
Informatikai alapismeretek Földtudományi BSC számára 2010-2011 Őszi félév Heizlerné Bakonyi Viktória HBV@ludens.elte.hu Titkosítás,hitelesítés Szimmetrikus DES 56 bites kulcs (kb. 1000 év) felcserél, helyettesít
RészletesebbenPHP-MySQL. Adatbázisok gyakorlat
PHP-MySQL Adatbázisok gyakorlat Weboldalak és adatbázisok Az eddigiek során megismertük, hogyan lehet a PHP segítségével dinamikus weblapokat készíteni. A dinamikus weboldalak az esetek többségében valamilyen
RészletesebbenKiskunmajsa és környéke turisztikai térinformatikai alkalmazás
Kiskunmajsa és környéke turisztikai térinformatikai alkalmazás Tartalomjegyzék 1. A RENDSZER RÖVID LEÍRÁSA...3 1.1. Elvárt funkciók:...3 1.2. Specifikáció...3 1.3. Funkciók ismertetése...3 2. RÉSZLETES
RészletesebbenIV.4. FELHŐ ALAPÚ BIZTONSÁGOS ADATTÁROLÁSI MÓDSZER ÉS TESZTKÖRNYEZET KIDOLGOZÁSA
infokommunikációs technológiák IV.4. FELHŐ ALAPÚ BIZTONSÁGOS ADATTÁROLÁSI MÓDSZER ÉS TESZTKÖRNYEZET KIDOLGOZÁSA BEVEZETÉS Mit jelent, hogy működik a felhő alapú adattárolás? Az adatainkat interneten elérhető
RészletesebbenAdatbázis rendszerek 6.. 6. 1.1. Definíciók:
Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika 6.1. Egyed relációs modell lényegi jellemzői 6.2. Egyed relációs ábrázolás 6.3. Az egyedtípus 6.4. A
Részletesebben3. Ezután a jobb oldali képernyő részen megjelenik az adatbázistábla, melynek először a rövid nevét adjuk meg, pl.: demo_tabla
1. Az adatbázistábla létrehozása a, Ha még nem hoztunk létre egy adatbázistáblát sem, akkor a jobb egérrel a DDIC-objekt. könyvtárra kattintva, majd a Létrehozás és az Adatbázistábla menüpontokat választva
RészletesebbenAdatmodellek. 2. rész
Adatmodellek 2. rész Makány György Alapfogalmak JEL ADAT INFORMÁCIÓ ADATHALMAZ ADATÁLLOMÁNY ADATBÁZIS 2 Alapfogalmak JEL ADATHALMAZ észlelhető, felfogható fizikai érték ADAT a valós világ egy jelenségéből
RészletesebbenFordítóprogramok. Aszalós László. 2009. szeptember 7.
Fordítóprogramok Aszalós László 2009. szeptember 7. 1. Bemelegítés Honlap: www.inf.unideb.hu/ aszalos/diak.html (Fordítóprogramok, 2009) Jegymegajánló: utolsó hét előadásán. PótZH (csak gyakorlat) vizsgaidőszak
RészletesebbenProgramozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010
Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 12. ELŐADÁS Adatbázis-kezelés Delphiben 2 Adatmegjelenítés lekérdezés segítségével A táblákhoz hasonlóan a lekérdezések is az adatbázis
RészletesebbenTöbbtáblás lekérdezések megjelenítése
Többtáblás lekérdezések megjelenítése Célkitűzés Egynél több táblának egyenlőségen vagy nem-egyenlőségen alapuló összekapcsolást végző SELECT utasítások írása. Egy táblának önmagával történő összekapcsolása.
Részletesebben22. GRÁFOK ÁBRÁZOLÁSA
22. GRÁFOK ÁBRÁZOLÁSA A megoldandó feladatok, problémák modellezése során sokszor gráfokat alkalmazunk. A gráf fogalmát a matematikából ismertnek vehetjük. A modellezés során a gráfok több változata is
Részletesebben13. óra op. rendszer ECDL alapok
13. óra op. rendszer ECDL alapok 1. Mire szolgál az asztal? a) Az ideiglenesen törölt fájlok tárolására. b) A telepített alkalmazások tárolására. c) A telepített alkalmazások ikonok általi gyors elérésére.
Részletesebben5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv:
5. Gyakorlat 5.1 Hálós adatbázis modell műveleti része NDQL, hálós lekérdező nyelv: A lekérdezés navigációs jellegű, vagyis a lekérdezés megfogalmazása során azt kell meghatározni, hogy milyen irányban
Részletesebben30 MB INFORMATIKAI PROJEKTELLENŐR
INFORMATIKAI PROJEKTELLENŐR 30 MB DOMBORA SÁNDOR BEVEZETÉS (INFORMATIKA, INFORMATIAKI FÜGGŐSÉG, INFORMATIKAI PROJEKTEK, MÉRNÖKI ÉS INFORMATIKAI FELADATOK TALÁKOZÁSA, TECHNOLÓGIÁK) 2016. 09. 17. MMK- Informatikai
RészletesebbenALKALMAZÁS KERETRENDSZER
JUDO ALKALMAZÁS KERETRENDSZER 2014 1 FELHASZNÁLÓK A cégvezetők többsége a dobozos termékek bevezetésével összehasonlítva az egyedi informatikai alkalmazások kialakítását költséges és időigényes beruházásnak
RészletesebbenRELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás
RELÁCIÓS ADATBÁZISSÉMÁK Egyed-kapcsolat modellről átírás A RELÁCIÓS ADATMODELL Az adatokat egyszerűen reprezentálja: kétdimenziós adattáblákban Minden sor azonos számú oszlopból áll; egy sor egy rekord,
RészletesebbenCélkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése
BEVEZETÉS Célkitűzések Az Oracle10g felépítésének, használatának alapszíntű megismerése A relációs adatbázis-kezelés elméleti és gyakorlati vonatkozásainak áttekintése Az SQL, PL/SQL nyelvek használatának
RészletesebbenAdatbázisrendszerek (ABR)
Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda IV Félév Adatbázisrendszerek (ABR) Dr. Illyés László 1 Sapientia - Erdélyi Magyar Tudományegyetem (EMTE) Csíkszereda 10. Előadás tartalma E10.
RészletesebbenMicrosoft SQL Server telepítése
Microsoft SQL Server telepítése Az SQL Server a Microsoft adatbázis kiszolgáló megoldása Windows operációs rendszerekre. Az SQL Server 1.0 verziója 1989-ben jelent meg, amelyet tizenegy további verzió
RészletesebbenKinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?
Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com xiii xiii xiv xiv xvi xvii xviii
RészletesebbenEllenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t
Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,
RészletesebbenAdatbázis-kezelés alapjai 1. Ea: Infó Mátrix. Lehet, nem lehet
Adatbázis-kezelés alapjai 1. Ea: Infó Mátrix Lehet, nem lehet 35/1 B ITv: MAN 2018.09.08 Info Mátrix 35/2 Rólam 35/3 Szűcs Miklós Alias: BitMan Mesteroktató Informatika épület, 108-as szoba szucs@iit.uni-miskolc.hu
RészletesebbenTERC V.I.P. hardverkulcs regisztráció
TERC V.I.P. hardverkulcs regisztráció 2014. második félévétől kezdődően a TERC V.I.P. költségvetés-készítő program hardverkulcsát regisztrálniuk kell a felhasználóknak azon a számítógépen, melyeken futtatni
RészletesebbenAdattárház tiszta alapokon Oracle Day, Budapest, november 8.
Adattárház tiszta alapokon Oracle Day, Budapest, 2011. november 8. WIT-SYS Consulting Zrt. Lévai Gábor gabor.levai@wit-sys.hu Tematika Az adattárházról általánosan Az adattárház definíciója Fő jellemzők
RészletesebbenAdatbázis rendszerek I
Normalizálás 1NF 2NF BCNF Adatbázis rendszerek I 20111201 1NF 2NF BCNF Ha BCNF 2NF A B B A 2NF BCNF 2NF részkulcsból indul ki FD létezik FD, amely nem jelölt kulcsból indul ki Jelölt kulcs olyan mezőcsoport
RészletesebbenCCS Hungary, 2000 szeptember. Handling rendszer technikai specifikáció
CCS Hungary, 2000 szeptember Handling rendszer technikai specifikáció Hálózati architektúra SITA Hálózat/ Vám/ Internet/... CodecServer üzenet központ DB LA N Laptop computer RAS elérés Adatbázis szerver
RészletesebbenA TANTÁRGY ADATLAPJA
A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület
RészletesebbenSQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai
SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik
Részletesebbenvbar (Vemsoft banki BAR rendszer)
vbar (Vemsoft banki BAR rendszer) BAR bemutatása 1994. július 1-jétől kezdte meg működését a Központi Adós- és Hitelinformációs Rendszer, azóta is használt rövidített nevén a BAR, amely kezdetben kizárólag
RészletesebbenINFORMATIKA ÉRETTSÉGI VIZSGA ÁLTALÁNOS KÖVETELMÉNYEI
1. oldal, összesen: 6 oldal INFORMATIKA ÉRETTSÉGI VIZSGA ÁLTALÁNOS KÖVETELMÉNYEI A vizsga formája Középszinten: gyakorlati és szóbeli. Emeltszinten: gyakorlati és szóbeli. Az informatika érettségi vizsga
RészletesebbenBevezetés a programozásba
Bevezetés a programozásba 1. Előadás Bevezetés, kifejezések http://digitus.itk.ppke.hu/~flugi/ Egyre precízebb A programozás természete Hozzál krumplit! Hozzál egy kiló krumplit! Hozzál egy kiló krumplit
Részletesebbenegy szisztolikus példa
Automatikus párhuzamosítás egy szisztolikus példa Áttekintés Bevezetés Példa konkrét szisztolikus algoritmus Automatikus párhuzamosítási módszer ötlet Áttekintés Bevezetés Példa konkrét szisztolikus algoritmus
RészletesebbenMár megismert fogalmak áttekintése
Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak
RészletesebbenSQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák
SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák A SELECT UTASÍTÁS ÁLTALÁNOS ALAKJA (ISM.) SELECT [DISTINCT] megjelenítendő oszlopok FROM táblá(k direkt szorzata) [WHERE feltétel]
RészletesebbenWeb-programozó Web-programozó
Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,
RészletesebbenTartalom. Konfiguráció menedzsment bevezetési tapasztalatok. Bevezetés. Tipikus konfigurációs adatbázis kialakítási projekt. Adatbázis szerkezet
Konfiguráció menedzsment bevezetési tapasztalatok Vinczellér Gábor AAM Technologies Kft. Tartalom 2 Bevezetés Tipikus konfigurációs adatbázis kialakítási projekt Adatbázis szerkezet Adatbázis feltöltés
RészletesebbenRendszermodernizációs lehetőségek a HANA-val Poszeidon. Groma István PhD SDA DMS Zrt.
Rendszermodernizációs lehetőségek a HANA-val Poszeidon Groma István PhD SDA DMS Zrt. Poszeidon EKEIDR Tanúsított ügyviteli rendszer (3/2018. (II. 21.) BM rendelet). Munkafolyamat támogatás. Papírmentes
RészletesebbenIntelligens partner rendszer virtuális kórházi osztály megvalósításához
Intelligens partner rendszer virtuális kórházi osztály megvalósításához 1. Célkitűzések A pályázat célja egy virtuális immunológiai osztály kialakítása, amelynek segítségével a különböző betegségekkel
RészletesebbenInczédy György Középiskola, Szakiskola és Kollégium Nyíregyháza, Árok u. 53. TANMENET. Informatika szakmacsoport
TANMENET Informatika szakmacsoport Programozási gyakorlatok III. tantárgy 12. évfolyam A osztály 2013/2014 tanév Heti óraszám: Éves óraszám: 3 óra 96 óra Készítette: Szikszai Gusztáv tanár Ellenőrizte:.
RészletesebbenTájékoztató. Használható segédeszköz: -
A 12/2013. (III. 29. NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosítószáma és megnevezése 54 481 06 Informatikai rendszerüzemeltető Tájékoztató A vizsgázó az első lapra írja
RészletesebbenA modern menedzsment problémáiról
Takáts Péter A modern menedzsment problémáiról Ma a vezetők jelentős része két nagy problémával küzd, és ezekre még a modern a természettudományos gondolkodáson alapuló - menedzsment és HR elméletek sem
RészletesebbenDigitális írástudás kompetenciák: IT alpismeretek
Digitális írástudás kompetenciák: IT alpismeretek PL-5107 A továbbképzés célja: A program az alapvető számítógépes fogalmakban való jártasságot és a számítógépek alkalmazási területeinek ismeretét nyújtja
RészletesebbenMagas szintű adatmodellek Egyed/kapcsolat modell I.
Magas szintű adatmodellek Egyed/kapcsolat modell I. Ullman-Widom: Adatbázisrendszerek. Alapvetés. 4.fejezet Magas szintű adatmodellek (4.1-4.3.fej.) (köv.héten folyt.köv. 4.4-4.6.fej.) Az adatbázis modellezés
RészletesebbenBGF. 4. Mi tartozik az adatmodellek szerkezeti elemei
1. Mi az elsődleges következménye a gyenge logikai redundanciának? inkonzisztencia veszélye felesleges tárfoglalás feltételes függés 2. Az olyan tulajdonság az egyeden belül, amelynek bármely előfordulása
RészletesebbenAdatbázis-kezelés az Excel 2013-ban
Molnár Mátyás Adatbázis-kezelés az Excel 2013-ban Magyar nyelvi verzió Csak a lényeg érthetően! www.csakalenyeg.hu Csak a lényeg érthetően! Microsoft Excel 2013 Kimutatás készítés relációs adatmodell alapján
RészletesebbenAdatbázisok I 2012.05.11. Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés
Adatbázisok I Szemantikai adatmodellek Szendrői Etelka PTE-PMMK Rendszer és Szoftvertechnológiai Tanszék szendroi@pmmk.pte.hu Adatmodellek komponensei Adatmodell: matematikai formalizmus, mely a valóság
RészletesebbenFeladataink, kötelességeink, önkéntes és szabadidős tevékenységeink elvégzése, a közösségi életformák gyakorlása döntések sorozatából tevődik össze.
INFORMATIKA Az informatika tantárgy ismeretkörei, fejlesztési területei hozzájárulnak ahhoz, hogy a tanuló az információs társadalom aktív tagjává válhasson. Az informatikai eszközök használata olyan eszköztudást
RészletesebbenTestLine - balla tesztje-03 Minta feladatsor
10.g adatbázis dattábla létrehozható--- (1 helyes válasz) 1. Átméretezéssel. Word dokumentum segítségével. Importálással. Törléssel. ccess adatbázis kezelő rendszer: (1 helyes válasz) 2. lkalmazás létrehozása
RészletesebbenMŰSZAKI KÖVETELMÉNYEK, A KÖRKERESŐ SZOFTVER SPECIFIKÁCIÓJA, KÖLTSÉGVETÉS. A) Műszaki követelmények
1. sz. melléklet MŰSZAKI KÖVETELMÉNYEK, A KÖRKERESŐ SZOFTVER SPECIFIKÁCIÓJA, KÖLTSÉGVETÉS A) Műszaki követelmények A körkereső szoftvernek (a továbbiakban Szoftver) az alábbi követelményeknek kell megfelelnie
RészletesebbenPodoski Péter és Zabb László
Podoski Péter és Zabb László Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök előnyeit és hiányosságait Kidolgoztunk egy saját megjelenítő
RészletesebbenA FileZilla program beállítása az első belépés alkalmával
6. A záróvizsga-jegyzőkönyv készítése A záróvizsga-jegyzőkönyveketa Karok többsége a jegyzőkönyvkészítésre Dr. Tánczos László által kifejlesztett Access alkalmazás használatával készíti el. A záróvizsga-jegyzőkönyv
RészletesebbenAdatbázis kezelés Delphiben. SQL lekérdezések
Adatbázis kezelés Delphiben. SQL lekérdezések Structured Query Language adatbázisok kezelésére szolgáló lekérdező nyelv Szabályok: Utasítások tetszés szerint tördelhetők Utasítások végét pontosvessző zárja
RészletesebbenINFORMATIKA TANMENET SZAKKÖZÉPISKOLA 9.NY OSZTÁLY HETI 4 ÓRA 37 HÉT/ ÖSSZ 148 ÓRA
MINŐSÉGIRÁNYÍTÁSI ELJÁRÁS MELLÉKLET Tanmenetborító Azonosító: ME-III.1./1 Változatszám: 2 Érvényesség kezdete: 2013. 09. 01. Oldal/összes: 1/6 Fájlnév: ME- III.1.1.Tanmenetborító SZK- DC-2013 INFORMATIKA
RészletesebbenTELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS
TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS Hartung István BME Irányítástechnika és Informatika Tanszék TEMATIKA Cloud definíció, típusok, megvalósítási modellek Rövid Azure cloud bemutatás
RészletesebbenA fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása
A fordítóprogramok szerkezete Forrásprogram Forrás-kezelő (source handler) Kódoptimalizálás Fordítóprogramok előadás (A,C,T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus
RészletesebbenGENERIKUS PROGRAMOZÁS Osztálysablonok, Általános felépítésű függvények, Függvénynevek túlterhelése és. Függvénysablonok
GENERIKUS PROGRAMOZÁS Osztálysablonok, Általános felépítésű függvények, Függvénynevek túlterhelése és Függvénysablonok Gyakorlatorientált szoftverfejlesztés C++ nyelven Visual Studio Community fejlesztőkörnyezetben
RészletesebbenINFORMATIKAI ALAPISMERETEK
Informatikai alapismeretek középszint 0621 ÉRETTSÉGI VIZSGA 2007. május 25. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ OKTATÁSI ÉS KULTURÁLIS MINISZTÉRIUM
RészletesebbenINFORMATIKA ÉRETTSÉGI VIZSGAKÖVETELMÉNYEK AZ ÉRETTSÉGI VIZSGA RÉSZLETES TEMATIKÁJA
A témakörök előtt lévő számok az informatika tantárgy részletes vizsgakövetelménye és a vizsga leírása dokumentumban szereplő témaköröket jelölik. KÖVETELMÉNYEK 1.1. A kommunikáció 1.1.1. A kommunikáció
RészletesebbenMS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1
SZE INFORMATIKAI KÉPZÉS 1 ADATBÁZIS-KEZELÉS MS ACCESS 2010 A feladat megoldása során a Microsoft Office Access 2010 használata a javasolt. Ebben a feladatban a következőket fogjuk gyakorolni: Adatok importálása
Részletesebben