MongoDB THE NOSQL DATABASE. Készítette: Hugyák Tamás v2.1.1

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "MongoDB THE NOSQL DATABASE. Készítette: Hugyák Tamás v2.1.1"

Átírás

1 MongoDB THE NOSQL DATABASE Készítette: Hugyák Tamás v2.1.1

2 Fontosabb információk Weboldal: MongoDB weboldala: Query és update selectorok:

3 A NoSQL világa...

4 Igények Mire van szüksége a világnak ma? rövid válaszidők magas rendelkezésre állás nagy mennyiségű adat feldolgozása horizontális skálázhatóság

5 Skálázhatóság Egy rendszer skálázható, ha: az erőforrásokat növelve a rendszer teljesítménye a hozzáadott erőforrásokkal arányosan nő. A teljesítmény lehet: egyszerre feldolgozható kérések száma, feldolgozott adathalmazok vagy adatelemek mérete, késleltetés, stb. Két fő típusa: vertikális skálázhatóság (scale up): a rendszer kiválasztott elemének bővítése új erőforrással (pl.: processzor, memória) horizontális skálázhatóság (scale out): a rendszer bővítése új számítógéppel (sok olcsó gépből nagy teljesítmény érhető el)

6 CAP-tétel A tételt 1999-ben Eric Brewer publikálta. A NoSQL rendszerek tervezését befolyásoló egyik legfontosabb eredmény az úgynevezett CAP-tétel, amely az elosztott rendszerek által nyújtott garanciákra ad formális korlátot. Egy elosztott rendszer a CAP rövidítésben szereplő konzisztencia (consistency), rendelkezésre állás (availability) és partíció tolerancia (partition tolerance) tulajdonságok közül egyidejűleg legfeljebb kettőt garantálhat teljesen.

7 CAP-tétel - konzisztencia Egy elosztott rendszer akkor konzisztens, ha bármely időpillanatban egy adategység értékét bármely csomóponttól lekérdezve ugyanazt az értéket kapjuk. Fontos megjegyezni, hogy az elosztott rendszerek konzisztenciája nem egyezik meg a tranzakciókezelésnél használt ACID tulajdonságokban definiált konzisztenciával, ezért NoSQL-ben az atomi (atomic) kifejezést használják rá. Definíció szerint atomi konzisztencia esetén az elosztott rendszernek külső szemlélő számára úgy kell tűnnie, mintha a műveleteit egy csomóponton sorban egymás után hajtotta volna végre azok átlapolódása nélkül. Ehhez léteznie kell a műveletek egy olyan teljes sorrendezésének, ahol a külső szemlélő számára úgy tűnik, hogy minden művelet egy pillanat alatt végrehajtódott.

8 CAP-tétel - rendelkezésre állás Egy elosztott rendszer rendelkezésre áll, ha minden működő csomóponthoz érkező kérésre válaszol, tehát a csomópontokon futtatott algoritmusoknak véges idő alatt be kell fejeződniük. A formális definíció nem korlátozza a futási időt, viszont gyakorlati alkalmazások során a késleltetésnek kiemelt szerepe van. A rendelkezésre állás százalékban kifejezhető érték, amely megmutatja, hogy az adott rendszer X időtartamból mekkora Y időtartamban tudott válaszokat szolgáltatni, azaz volt elérhető.

9 CAP-tétel - partíció tolerancia Egy hálózat egyik csomópontjából a másikba küldött üzenetekből tetszőleges számú elveszhet. Egy nem összefüggő hálózatban a hálózat egyik komponenséből a másikba küldött minden üzenet elveszik. Minden üzenetvesztési szekvencia modellezhető a hálózat ideiglenes partíciójával, majd újraegyesülésvel. A partíció oka lehet a hálózat hibája, valamint a csomópontok hardveres vagy szoftveres hibái. A patíció tolerancia a másik két tulajdonság tükrében értelmezhető: Konzisztencia követelményhez szükséges, hogy a rendszer műveletei akkor is atomiak legyenek, amikor az azokat megvalósító algoritmusok üzeneteiből tetszőleges elveszhet. Rendelkezésre álláshoz azt kell biztosítani, hogy a csomópontok minden, a kliensektől érkező kérésre érvényes választ adjanak annak ellenére, hogy tetszőlegesen sok üzenet elveszhet.

10 CAP-tétel - partíció tolerancia folyt. Egy rendszer tehát akkor partíció toleráns, ha a kérésre hálózati partíció esetén is helyes választ ad (helyes válasz: a rendszer végrehajtja a kért írást vagy olvasást; a művelet atomicitásának garantálása nem kötelező). Ha egy rendszer nem pratíció toleráns, akkor a hálózat partíciója esetén semmilyen garanciát nem nyújt a konzisztenciára és a rendelkezésre állásra. Amikor a hiba megszűnik, és a partíciók újra egyesülnek, a rendszernek képesnek kell lennie az adatokat szinkronba hozni, hogy megszakítás nélkül folytatható legyen az adatbázis működése. A partíció tolerancia elengedhetetlen a nagyméretű elosztott rendszerekben.

11 CAP-tétel - példa C+A: A konzisztenciát és a hozzáférhetőséget tartják szem előtt ezek a rendszerek, a hálózat szétesése esetén működésképtelenné válnak. (MySQL, PostgreSQL, MariaDB) A+P: Ezek a rendszerek a lehetőségekhez képest mindig elérhetőek, és jól működnek a hálózat szétesése esetén is, cserébe feladják a konzisztens működést. (Cassandra, CouchDB, Riak) C+P: Konzisztens működés várható el ezektől a rendszerektől, és a hálózat elválása esetén is működnek, de cserébe romlik a hozzáférhetőség. (BigTable, Hbase, MongoDB, Redis)

12 NoSQL Not only SQL adatbázis szoftverek gyűjtőneve ismérveik: elsősorban nem táblázatokban tárolják az adatokat nem SQL nyelvet használnak lekérdezésre kevés műveletet támogatnak nagyobb sebesség, jobb skálázhatóság ACID működést nem feltétlenül tudnak Mikor használatosak? gyakran módosuló adatszerkezeteknél eltérő entitásokkal rendelkező adatstruktúráknál

13 NoSQL adatbázisok fajtái 1. kulcs-érték tárolók (key-value stores) kulcsok és hozzájuk rendelt értékek tárolása attribútum-attribútumérték párok a kulcsok szabadon választhatóak vagy adatbázis által generálhatóak legegyszerűbb adatmodell korlátozott lekérdezések: jellemzően csak kulcs szerint adatok tárolása a memóriában -> nagyon gyors működés különbség a cache rendszerekhez képest: az adatokat háttértáron is eltárolják Pl.: Memcached, Redis, Riak, Berkeley DB

14 NoSQL adatbázisok fajtái 2. oszlopcsaládok oszlopalapú relációs adatbázisok (column-based, column-oriented) egyes attribútumok különböző értékei egy fizikai szervezésben kevés oszlopot és sok sort érintő elemzések hatékonyabbak az egyes csoportokban (blokkokban) azonos típusú adatokat tárolnak oszlopcsaládok (column families) hierarchikus nem relációs adatmodell logikailag oszlopalapon szervezett adatok kulcs-érték párokból álló sorok kulcs -> érték tárolás, ahol kulcs az elsődleges kulcs, míg érték az oszlopnevekkulcsaik párosai Pl.: BigTable, HBase, Cassandra (Facebook)

15 NoSQL adatbázisok fajtái 2. oszlopcsaládok folytatás... oszlopalapú relációs adatbázisok: oszlopalapú NoSQL adatbázisok (oszlopcsaládok):

16 NoSQL adatbázisok fajtái 3. dokumentumtárolók (document stores) szemistrukturált adatok (JSON, XML) szemistrukturált (félstrukturált) adatok: Ha az adatok tárolása által meghatározott struktúra nem jól illeszkedik az adatok információtartalma által meghatározott struktúrához. laza módon strukturált adathalmazok tárolása a dokumentumok kulcs-érték párokból épülnek fel a dokumentumok bármilyen strukturával rendelkezhetnek Pl.: CouchDB, MongoDB, Elasticsearch

17 NoSQL adatbázisok fajtái 4. gráf adatbázisok (graph databases) gráfok hatékony tárolása (komplex, sok összefüggést tartalmazó adathalmazok) gráfokműveletek gyors végrehajtása tulajdonsággráfokat tárolnak: a csomópontokhoz és élekhez tulajdonságok köthetőek, rendszerint kulcs-érték párok formájában kevésbé skálázhatóak a gazdag adatmodell miatt Pl.: Neo4j, Infinite Graph

18 Mi is az a MongoDB?

19 Mi is valójában a MongoDB? Egy NoSQL (Not Only SQL), dokumentum-orientált DBMS, mely a relációs és a kulcs-érték alapú adatbázisok legjobb feature-jeit egyesíti. A dokumentum-alapú adatmodell gazdag és hierarchikus adatstruktúrát reprezentál különböző több táblás join-ok végrehajtása nélkül. Az év adatbázisa, (

20 Mi is valójában a MongoDB? Document Database kulcs-érték alapú, JSON-stílusú adattárolás, mely egyszerű és extrém gyors sokrétű adatstruktúrával rendelkezik flexibilis, dynamic schema, "schemaless" beágyazott dokumentumok és tömbök kulcs-érték alapú lekérdezések, manipulációk, CRUD dokumentumok tárolása "collection"-ben

21 Mi is valójában a MongoDB? High Performance a beágyazás gyors írást és olvasást tesz lehetővé indexelés bármely attribútumon vagy beágyazott dokumentum attribútumán "fire-and-forget": nincs eredmény az írás (beszúrás, frissítés) sikerességéről adatok a memóriában és a diszken

22 Mi is valójában a MongoDB? Scalability & High Availability replikáció a szerverek között (master-slave vagy primary-secondary) automatikus failover kezelés load balancing (terheléselosztás) horizontális skálázás aka sharding automatikus "sharding" (az elosztott collection-ök között) lehetővé teszi a cluster skálázását lineárisan (új szerver hozzáadása)

23 Features Document-Oriented Storage (JSON-style documents) Full Index support (index on any attributes) Replication & High Availability (scalability) Querying (rich, document-based queries) Fast In-Place Updates (atomic modifiers) Map/Reduce (flexible aggregation & data processing) GridFS (store files of any size in database) GeoJSON (coordinates in 2d) Aggregation Framework Ease of use :)

24 A MongoDB-ről részletesen

25 Terminológia database table Relációs adatbázisok database collection MongoDB row column index Table joins primary key aggregation document or BSON document field index embedded documents and linking primary key aggregation pipeline

26 Embedded documents Fajtái: subdocument { "_id" : ObjectId("..."), "name" : { "first" : "Péter", "middle" : "István", "last" : "Kovács }, //... }

27 Embedded documents array of embedded documents { "_id" : ObjectId("..."), "title : Halálos iramban, release_date : 2009, actors" : [ { name" : Vin Diesel }, { name" : Paul Walker }, { name" : Michelle Rodriguez }, ], //... }

28 MongoDB főbb komponensei mongod: adatbázis szerver, kezeli az adat kéréseket (CRUD) és adatformákat, ill. a háttérfolyamatokat menedzseli mongo: adatbázis kliens, interaktív JavaScript shell a MongoDB számára, lehetővé teszi az adatok lekérdezését és manipulációját, ill. szerver oldali szkriptelést mongodump: adatbázis adatok exportálása bináris fájlba mongorestore: bináris adatbázis adatok importálása mongoexport: az adatbázisban tárolt adatok exportálása JSON vagy CSV formátumban mongoimport: lehetővé teszi JSON, CSV vagy TSV fájlok importálását az adatbázisba

29 Exportálás, importálás JSON, CSV, TSV: mongoimport --db <db_name> --collection <coll_name> --file <file_path> mongoexport --db <db_name> --collection <coll_name> --out <file_name> Binary files: mongorestore --db <db_name> --collection <coll_name> <file_name> mongodump --db <db_name> --collection <coll_name>

30 Adattípusok double: 23.8 integer: 69 string: "Hello World" object: {"name" : "Zoltán"} array: [ ] Object id (MongoID): ObjectId("507f1f77bcf86cd ") boolean: true, false date: new Date('Jun 23, 1954') vagy ISODate() NULL: null undefined regular expression: /^a.*$/i

31 Példa dokumentum { "_id": ObjectID("4bd9e8e17cefd bb"), "title": "Adventures in Databases", "url": " "author": "msmith", "tags": ["databases", "mongodb", "indexing"], "comments": [ { "user": "bjones", "text": "Interesting article!" }, { "user": "blogger", "text": "Another related article is at..." } ] } ObjectID avagy MongoID

32 MongoID 12 bájt hosszú, 24 karakter automatikusan generálódik alapértelmezetten minden egyes dokumentumnál az _id mezőt képezi, automatikusan generálódik dokumentum beszúrásakor primary key (elsődleges kulcs) unique (minden egyes érték csak egyszer fordulhat elő) indexelt (gyors elérés) létrehozása: new ObjectId() => automatikusan generálja az értékét érték kinyerése (2.2-es verzió óta): objidvaltozo.valueof() => "507f1f77bcf86cd "

33 MongoDB a gyakorlatban

34 MongoDB letöltése

35 Alapvető shell parancsok show dbs (adatbázisok kilistázása) use <db_name> (<db_name> nevezetű adatbázisba belépés vagy <db_name> nevezetű adatbázis létrehozása) show collections (collection-ök kilistázása az aktuális adatbázisban) db (az aktuális adatbázis nevének kiiratása) db.<collection>.* (* lekérdezés vagy CRUD futtatása a <collection> nevezetű collection-ön) pl.: db.users.find() db.createcollection("<coll_name>") (<coll_name> nevezetű collection létrehozása az aktuális adatbázisba) db.<collection>.drop() (<collection> törlése) help exit (kilépés)

36 CRUD

37 CRUD Az adattárolás 4 alapvető műveletének összefoglaló neve. Create (írás) Read (olvasás) Update (frissítés) Delete (törlés)

38 CRUD - Create db.<collection>.insert( <document> ) a <document> egy JSON dokumentum vagy egy tömb, mely JSON dokumentumokat tartalmaz a "_id" ObjectId-t nem kötelező megadni, automatikusan generálja az adatbázis példa: db.products.insert({ "item" : "pen", "qty" : 50 }); db.products.insert([ { "item" : "pen", qty" : 50 }, { "item" : "eraser", "qty" : 100 }, { "item" : "pencil", "qty" : 20 } ]); ha nem ObjectId elsődleges kulcsot szeretnénk: db.products.insert({ "_id" : 15, "item" : "pen", "qty" : 50 });

39 CRUD - Read db.<collection>.find( <criteria>, <projection> ) <criteria>: opcionális, ha nincs megadva, akkor a collection összes dokumentumát visszaadja, az SQL-es WHERE feltételnek felel meg egy JSON tömböt kell megadni feltételnek, melyre az összes megadott mező-érték párra illeszkedő doc-okat szűri ki eredményül cursor-t ad vissza példa: db.users.find({ "first_name" : "Péter", "age" : 18}); // az összes olyan JSON objektumot szolgáltatja vissza, // ahol a keresztnév "Péter" ÉS a kor 18 db.users.find({}); // a collection összes felhasználóját adja vissza

40 CRUD - Read Query Selectors $gt: > {"age" : {'$gt' : 18}} $gte: >= $in: minden egyes érték szerepel a tömbben, {"field" : {'$in' : [<value1>, <value2>,...]}} $lt: < $lte: <= $ne:!= {"qty" : {'$ne' : 300}} $nin: a megadott értékek nem szerepelnek a tömbben, {"age" : {'$nin' : [5, 15] }} $in: a megadott érték(ek) szerepel(nek) a tömbben, { likes" : { $in' : [ futni"] }} $or: a tömbben megadott elemek legalább egyike illeszkedik a doc megfelelő mezőinek értékére, {'$or' : [ {"qty" : {'$lt' : 20}}, {"sale" : true} ]} $and: a tömbben megadott összes elemre illeszkedik a doc megfelelő mezőinek értékei, {'$and' : [ {"qty" : {'$lt' : 20}}, {"sale" : true} ]}

41 CRUD - Read Projection: db.<collection>.find( <criteria>, <projection> ) az adott doc-nak vagy doc-oknak mely mezőit adja vissza SQL-ben a SELECT záradéknak felel meg 1 vagy true: csak a megadott mezőt vagy mezőket adja vissza az _id attribútummal 0 vagy false: a megadott mezőt vagy mezőket nem tartalmazva adja vissza az adatokat példa: db.user.find({"age" : 20}, {" " : 1, "name" : true}); // eredmény: { "_ id" : ObjectId(...), " " : "jani@fre .hu", "name" : "Jani" }

42 CRUD - Read Cursor iterátornak tekinthető, a visszaadott dokumentumok bejárására szolgál pl.: var users = db.users.find(), user ; while( users.hasnext() ){ user = users.next(); print("kor: " + user.age); } db.users.find().foreach( function( doc ) { print("név: " + doc.name); } );

43 CRUD - Read db.<collection>.findone( <criteria>, <projection> ) csak egy JSON objektumot ad vissza eredményül több találat esetén a legelsőt szolgáltatja vissza pl.: db.users.findone({" " : "tamas.hugyak@outlook.com"}, {"name" : 1});

44 CRUD - Read db.<collection>.count( <criteria> ) A megszámlálás függvénye. a <criteria>-nak megfelelő doc-ok számát adja vissza pl.: db.users.count({"age" : 21}); // => 3

45 CRUD - Read sort( <sort> ) <sort>: JSON doc, melyben a megadott mezők a rendezés alapját adják, az érték pedig a rendezés módját, mely lehet A-Z vagy Z-A a find() függvény meghívása után használjuk, cursor függvény { "field" : 1 }: ASC rendezés, ascending { "field" : -1 }: DESC rendezés, descending pl.: db.users.find({"age" : {$gt : 18}}).sort( { " name.first" : 1, "age" : -1} );

46 CRUD - Read limit( <value> ) <value>: egy integer érték, mely azt adja meg, hogy hány eredmény dokumentumot adjon vissza a lekérdezés pl.: db.users.find({"age" : {$gt : 18}}).limit( 5 ); // csak az első 5 user-t adja vissza

47 CRUD - Read skip( <value> ) <value>: egy integer érték, melynek megfelelő első <value> dokumentumot nem adja vissza eredményül lapozáshoz használjuk pl.: db.users.find(). skip( 5 ). limit( 15 ); // 15 felhasználót listáz ki az 5-től

48 CRUD - Update db.<collection>.update( <criteria>, <update>, <params> ) a <criteria>-nak megfelelő doc-ot vagy doc-okat frissíti az <update> JSON-ban megadott adatokkal <criteria>: opcionális, lehet {} is Alapértelmezetten csak az első kritéria találatot frissíti!!! <params>: { "upsert" : true } esetén ha nincs találat a keresett kritériára, akkor egy új doc-ot szúr be a collection-be { "multi" : true } esetén az összes kritériának megfelelő doc-ot frissít az adatbázis pl.: db.users.update( {"age" : 18}, {'$inc' : {"points" : 1}}, {"multi" : true} )

49 CRUD - Update Update Operators $inc: megnöveli vagy csökkenti az adott mezőt, { $inc : { "points" : -5 } } $set: adott mező értékét módosítja, { $set : { "name" : "Julcsi" } } $unset: adott mezőt vagy mezőket törli a dokumentumból, { $unset : { " name" : "", "gender" : "" } $pull: a megadott mezőt vagy mezőket törli a tömbből, { $pull : { "votes" : 7 } } $push: a megadott értéket a tömbbe helyezi, { $push : { "scores" : 89 } } $: a kritériának megfelelő doc-ok embedded array első elemét módosítja, { $set : { "grades.$" : 82 } }

50 CRUD - Delete db.<collection>.remove( <criteria>, <justone> ) a <criteria>-nak megfelelő doc-ot vagy doc-okat törli a collection-ből <criteria>: opcionális, JSON object <justone>: opcionális, ha 1 vagy true az értéke, akkor csak a kritériának megfelelő legelső találatot törli pl.: db.users.remove( { "name.first" : /^G/ } ) // ahol a name embedded JSON first mezőjének értéke G betűvel kezdődik

51 Példa feladatok Kérdezd le az összes, 18 éves vagy annál idősebb felhasználót. db.users.find({ "age" : { $gte : 18 } }) Kérdezd le az összes olyan kutyát, amely hímnemű és a neve B betűvel kezdődik. db.dogs.find({ "gender" : "male", "name" : /^B/ }) Kérdezd le az összes olyan felhasználót, akinek van Cirmi nevezetű macskája. (user obj.: {..., "cats" : ["Cirmi","Mirci"],...}) db.users.find({ "cats" : { $in : ["Cirmi"] } }) Kérdezd le azoknak a felhasználóknak a nevét, akik nem szeretik a csokit.(user obj.: {..., "likes" : ["csoki","mozi"],...}) db.users.find({ "likes" : { $nin: ["chocolate"] } }, { "name" : 1 }) Kérdezd le az első három legtöbbet eladott termék árát és nevét. db.products.find({},{ "name" : 1, "price" : 1 }). sort({ "sales" : -1 }).limit( 3 )

52 Példa feladatok Kérdezd le azon egereket, melyeknek a genotípusa X35K86-os vagy a szemük színe piros. db.mice.find({ $or : [ { "genotype" : "X35K86" }, { "eye_color" : "red" } ] }) Kérdezd le azt az elemet, melynek az azonosítója: 507f1f77bcf86cd és az azonosítóján kívül kérd le az összes mezőjét. db.items.findone({ "_id " : ObjectId("507f1f77bcf86cd ") }, { "_id" : 0 }) Minden 1992-ben született felhasználónak növeld meg a pontszámát 3-mal. db.users.update({ "birth.year" : 1992 }, { $inc : { "points" : 3 } }, { "multi" : true } ) Módosítsd az ffgaba@gmail.com című felhasználó jogosultságát adminra, nullázd le a pontjait és hagyj neki üzenetet, hogy: "Admin vagy!". db.users.update( { " " : "ffgaba@gmail.com" }, { $set : { "role" : "admin", "points" : 0 }, $push : { "messages" : [ "Admin vagy!" ] } } )

53 Példa feladatok Növeld meg Magyarországon Veszprém megye lakosainak számát 13 fővel a születések száma miatt. db.countries.update( { "country_name" : "Magyarország", "counties.county_name" : "Veszprém" }, { $inc : { "counties.$.population" : 13 } } ) Hány 1992-ben született férfi felhasználó szereti a kézilabdát? db.users.count({ "birth.year" : 1992, "gender": "male", "likes" :{ $in : [ "handball" ] } }) Töröld ki az összes inaktív felhasználói fiókot az adatbázisból. db.users.remove({ "active" : false }) Töröld ki az összes spam üzenetet a spam_messages collection-ből. db.spam_messages.remove()

54 Group by

55 Group by db.data.group({ key: { Airport : 1 }, cond: { Temperature : { $gt : 30 } }, reduce: function( curr, result ) { result.total++; }, initial: { total : 0 } }); SELECT Airport, COUNT(*) as total FROM data WHERE Temperature > 30 GROUP BY Airport;

56 Adatmodellezés

57 Adatmodellezés flexibilis séma -> dokumentum szerkezeteket nem írjuk le kulcs koncepciók: az alkalmazásnak mire van szüksége adatbázis motor teljesítmény karakterisztikája adatelérési minták alkalmazás adathasználata (queries, updates) dokumentum struktúra: az alkalmazás hogyan reprezentálja az adatok közti kapcsolatokat adatok közti kapcsolatok reprezentálásának 2 fajtája: referenciák (references) beágyazott dokumentumok (embedded documents)

58 Embedded data a kapcsolatok egyetlen egy dokumentumban tárolhatóak denormalizált adatmodell: egyetlen egy adatbázis műveletként lehetővé teszi az összefüggő adatok lekérdezését és manipulációját lehetővé teszi, hogy az összetartozó információ darabkák ugyanazon adatbázis rekordban legyenek tárolva a dokumentumok írása (módosítása) egyetlen egy atomi művelet dokumentumok növekedése: ha a lemezen tárolt dokumentum módosításkor a számára lefoglalt tárterületet túllépi, akkor a háttértáron a MongoDB új helyet foglal a számára, s az előző pozícióját felszabadítja adathasználat és teljesítmény: gyakori adatbeszúrás (insert) esetén ajánlott a capped collection a beágyazás olvasás esetén jobb teljesítményt nyújt

59 Adatmodellezés beágyazással denormalizált adatmodell

60 References a normalizált adatmodellek referenciák segítségével írják le a dokumentumok közötti kapcsolatokat akkor használatos, ha: a beágyazás adat-duplikációt eredményezne, így nem szolgál az olvasás művelet előnyére komplex sok-sok kapcsolat reprezentálása hatalmas hierarchikus adathalmazok elkerülése érdekében nagyobb flexibilitást nyújtanak a beágyazásokhoz képest hátránya, hogy a lekérdezések és manipulációk több adatbázis műveletet igényelnek

61 Adatmodellezés referenciával normalizált adatmodell

62 One-to-One relationships Beágyazással: { } _id: "joe", name: "Joe Bookreader", address: { street: "123 Fake Street, city: "Faketon", state: "MA", zip: "12345 }

63 One-to-Many relationships I. Beágyazással: { } _id: "joe", name: "Joe Bookreader", addresses: [ { street: "123 Fake Street", city: "Faketon", state: "MA", zip: "12345 }, { street: "1 Some Other Street", city: "Boston", state: "MA", zip: "12345 } ]

64 One-to-Many relationships II. Referenciával: { name: "O'Reilly Media", founded: 1980, location: "CA", books: [ , ,...] } { { _id: , title: "MongoDB: The Definitive Guide", author: [ "Kristina Chodorow", "Mike Dirolf" ] } _id: , title: "50 Tips and Tricks for MongoDB Developer", author: "Kristina Chodorow }

65 Many-to-Many relationships Kapcsoló collection-nel: felhasznalok collection egy dokumentuma: { _id : ObjectId( A ), nev : Eleonóra, taj : AAABBB111, } autok collection egy dokumentuma: { _id : ObjectId( 123 ), tipus : M6, gyarto : BMW, szin : fehér } felhasznalok autok kapcsoló collection egy dokumentuma: { _id : ObjectId( 4af9f23d8ead0e1d ), _id felhasznalo : ObjectId( A ), _id auto : ObjectId( 123 ) }

66 Indexelés

67 Indexelés lekérdezések hatékony végrehajtása indexelés nélkül: collection scan (a collection összes dokumentumának átfésülése) az indexek B-fa struktúrát használnak a collection adathalmazának kis porcióját tartalmazzák valamely mezőnek vagy mezőknek az értékét tárolja, a mező értéke alapján rendezett módon covered query: ha a kritéria és a projekció csakis az indexelt mező(ke)t tartalmazza, akkor az eredmény az index-ből kerül ki, nem lesz keresés (find)

68 Indexelés működése

69 Indexek típusai _id single field (embedded field, embedded document) compound index (multiple fields) multikey index (arrays) geospatial index (geo koordináták) text index Indexek tulajdonságai: unique (duplikált értékek nem fordulhatnak elő) sparse (csak azon doc-ok indexelése, melyek rendelkeznek az indexelt mezővel) TTL (doc-ok automatikus törlése a collection a megadott idő letelte után)

70 Indexek típusai Multikey index

71 Indexek típusai Compound index

72 Index létrehozása db.<collection>.createindex( <attributes>, <options> ) <attributes>: JSON, melyben az attribútum-rendezés kulcs-értékek vannak felsorolva egyszerre akár több attribútum is megadható ertékként az 1 (ASC) vagy a -1 (DESC) adható options JSON: {sparse : true} : csak azon dokumentumokat indexeli, amelyek rendelkeznek az <attributes>-ban megadott attribútumokkal {expireafterseconds : <secs>} : a megadott másodperc letelte után automatikusan törlődnek a dokumentumok a collection-ből {unique : true} : az <attributes>-ban megadott kulcsok értékei csakis egyediek lehetnek (alapértelmezetten false az értéke)

73 Index törlése db.<collection>.dropindex( <attributes> ) <attributes>: JSON, melyben az indexelt attribútumok vannak felsorolva a sorrendbe rendezésük típusával együtt

74 Indexek létrehozása Példák: db.cars.createindex( { gyarto : 1 } ); db.users.createindex( { name.first : 1 } ); db.users.createindex( { taj : 1, szuletesi_datum : -1 } ); db.users.createindex( { 1 }, { unique : true } );

75 Aggregation Framework

76 Aggregation Framework aggregációk: olyan műveletek, amelyek az adatokon valamilyen folyamatot hajtanak végre, majd visszaadja a számított eredményt. Aggregation Pipeline: a dokumentumok több szakaszú csővezetéken mennek keresztül, amelyben aggregált eredménnyé transzformálódnak alapvető szakaszai: filters: lekérdezésekként működnek document transformations: módosítják a kimeneti dokumentumok formáját a gazdag adat aggregáció natív műveletekkel hajtódik végre Map-Reduce is a része az Aggregation Framework-nek

77 Működése

78 Aggregation Pipeline Map-Reduce alternatívaként szolgál az aggregációs feladatokat hivatott megoldani abban az esetben, ha a mapreduce számára túl komplexek lennének szakaszokból épül fel -> minden egyes szakasz transzformálja a rajta átmenő dokumentumokat a szakaszok mindig csak az aktuális dokumentumhoz férnek hozzá optimalizálási szakasszal is rendelkezik, mely megkísérli átalakítani a pipeline-t a jobb teljesítmény érdekében eredményül egy szimpla dokumentumot ad, mely hibaleírást és az eredményt tartalmazza (16MB méret korlát!!)

79 Aggregation Pipeline használata db.<collection>.aggregate( [ { <stage1> }, { <stage2> },... ] ) szakaszok: $project: projekcióként szolgál (1 vagy -1 érték) $match: a find()-nál megszokott kritéria, szűrést valósít meg $redact: különleges állatfajzat, említésre méltó csak jelen esetben $limit, $skip: darabszám limitálása, kihagyása $unwind: tömbökbe beágyazott dokumentumok külön dokumentumokként való megjelenítése $group: csoportosítást valósít meg $sort: újrarendezi a dokumentum streamet adott kulcs alapján $out: ezzel a névvel egy új collection-t hoz létre, s ebbe helyezi az eredményt

80 Hasznos információk dokumentáció: GUI Mongohoz: Node.JS alapon webes GUI MongoDB-hez: cheatsheet: e-learning:

MySQL kontra MongoDB programozás. SQL és NoSQL megközelítés egy konkrét példán keresztül

MySQL kontra MongoDB programozás. SQL és NoSQL megközelítés egy konkrét példán keresztül MySQL kontra MongoDB programozás SQL és NoSQL megközelítés egy konkrét példán keresztül Kardos Sándor sandor@component.hu Miről lesz szó? Miért érdemes őket összehasonlítani? MySQL általános jellemzői

Részletesebben

Adatbázis-kezelő rendszerek alkalmazása. MongoDB beadandó feladat 2016. Programtervező informatikus szak

Adatbázis-kezelő rendszerek alkalmazása. MongoDB beadandó feladat 2016. Programtervező informatikus szak Adatbázis-kezelő rendszerek alkalmazása MongoDB beadandó feladat Programtervező informatikus szak 2016. Tartalomjegyzék A feladat... 3 Az elkészítés menete... 3 Leadási határidő... 3 Honoráció, érdemjegy...

Részletesebben

Adatbázis-kezelés. Harmadik előadás

Adatbázis-kezelés. Harmadik előadás Adatbázis-kezelés Harmadik előadás 39 Műveletek csoportosítása DDL adat definiálás Objektum létrehozás CREATE Objektum törlés DROP Objektum módosítás ALTER DML adat módosítás Rekord felvitel INSERT Rekord

Részletesebben

SZERVER OLDALI JAVASCRIPT. 8. hét MongoDB, séma tervezés, performancia kérdések

SZERVER OLDALI JAVASCRIPT. 8. hét MongoDB, séma tervezés, performancia kérdések SZERVER OLDALI JAVASCRIPT 8. hét MongoDB, séma tervezés, performancia kérdések ADATBÁZISOK Model - View - Controller (vagy MW vagy bármi) TRADICIONÁLIS SQL Adatot tárol perzisztens módon (CRUD) Előre meghatározott

Részletesebben

BEVEZETÉS Az objektum fogalma

BEVEZETÉS Az objektum fogalma BEVEZETÉS Az objektum fogalma Program (1) Adat (2) Objektum Kiadványszerkesztés Word Táblázatkezelés Excel CAD AutoCad Adatbáziskezelés Access 1 Program (1) Adat (2) Objektum Adatmodell (2) A valós világ

Részletesebben

Adatbázisok* tulajdonságai

Adatbázisok* tulajdonságai Gazdasági folyamatok térbeli elemzése 4. előadás 2010. 10. 05. Adatbázisok* tulajdonságai Rendezett, logikailag összefüggő és meghatározott szempont szerint tárolt adatok és/vagy információk halmaza Az

Részletesebben

NoSql, Document Store, MongoDB. Gombos Gergő

NoSql, Document Store, MongoDB. Gombos Gergő NoSql, Document Store, MongoDB Gombos Gergő Tematika NoSql Elosztott rendszerek konzisztenciája CAP, ACID, BASE MongoDB Koncepció JSON, BSON Adattárolás Replica, sharding Mongo CRUD Aggregation framework

Részletesebben

Tematika. MongoDB koncepció JSON Schemaless logika Replicaset képzés Sharding Aggregate framework

Tematika. MongoDB koncepció JSON Schemaless logika Replicaset képzés Sharding Aggregate framework MONGODB Tematika MongoDB koncepció JSON Schemaless logika Replicaset képzés Sharding Aggregate framework Koncepció párhuzamosítás: hardver infrastruktúra adta lehetőségeket kihasználni (sok szerver, sok

Részletesebben

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai: 8. Gyakorlat SQL SQL: Structured Query Language; a relációs adatbáziskezelők szabványos, strukturált lekérdező nyelve SQL szabványok: SQL86, SQL89, SQL92, SQL99, SQL3 Az SQL utasításokat mindig pontosvessző

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY / MONEY 8

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE TINIINT 1 byte 12 SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY

Részletesebben

B I T M A N B I v: T 2015.03.01 M A N

B I T M A N B I v: T 2015.03.01 M A N Adatbázis Rendszerek MSc 2. Gy: MySQL Táblák, adatok B I v: T 2015.03.01 M A N 1/41 Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítások DCL utasítások 2/41 Az SQL jellemzése Az SQL a relációs

Részletesebben

ADATBÁZISKEZELÉS ADATBÁZIS

ADATBÁZISKEZELÉS ADATBÁZIS ADATBÁZISKEZELÉS 1 ADATBÁZIS Az adatbázis adott (meghatározott) témakörre vagy célra vonatkozó adatok gyűjteménye. - Pl. A megrendelések nyomon követése kereskedelemben. Könyvek nyilvántartása egy könyvtárban.

Részletesebben

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto Eötvös Loránd Tudományegyetem Informatikai Kar Eseményvezérelt alkalmazások fejlesztése II 12. előadás Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2014.

Részletesebben

Adatok szűrése, rendezése

Adatok szűrése, rendezése Adatok szűrése, rendezése Célkitűzések Szűrést kifejező lekérdezések végrehajtása A lekérdezés eredményének rendezése &változó használata isql*plus-ban futási időben megadható feltételek céljából A lista

Részletesebben

Adatbázis használata PHP-ből

Adatbázis használata PHP-ből Adatbázis használata PHP-ből Adatbázis használata PHP-ből...1 Nyílt forráskódú adatbázisok...1 A mysql függvények...2 A mysqli függvények...4 Bináris adatok adatbázisban való tárolása...8 Adatbázis csatoló

Részletesebben

mongodb gyakorlat 2013. április.

mongodb gyakorlat 2013. április. mongodb gyakorlat 2013. április. Áttekintés nosql.ppt http://www.wrox.com/wileycda/wroxtitle/professional-nosql.productcd-047094224x.html A mongodb előnyei beépített replikáció: replica sets, több (páratlan

Részletesebben

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István Java objektumok leképzése relációs adatbázisokra -vel Viczián István (viczus@freemail.hu) Előszó E cikk olyan haladó programozóknak nyújt segítséget, kik tisztában vannak a Java nyelvvel, és többször is

Részletesebben

II. év. Adatbázisok és számítógépek programozása

II. év. Adatbázisok és számítógépek programozása II. év Adatbázisok és számítógépek programozása A programozási ismeretek alapfogalmai a) algoritmus b) kódolás c) program a) algoritmus: elemi lépések sorozata, amely a következı tulajdonságokkal rendelkezik:

Részletesebben

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben? Adatbázis modellek 5. téma XML DB Az adatkezelés és XML kapcsolata Miért fontos az XML használata az adatbázis kezelésben? Adattárolás alapformái: - strukturált - szabad-szöveges - szemi struktúrált -

Részletesebben

NoSQL technológiák. NoSQL Fórum Budapest, 2016. március 23. Diasablon: http://www.slidescarnival.com/ - a fotók sajátok :)

NoSQL technológiák. NoSQL Fórum Budapest, 2016. március 23. Diasablon: http://www.slidescarnival.com/ - a fotók sajátok :) NoSQL technológiák az -nál NoSQL Fórum Budapest, 2016. március 23. Diasablon: http://www.slidescarnival.com/ - a fotók sajátok :) ! Ó L L E H Nádai Gábor avagy Mefi Lead dev az ingatlan.com Frontend csapatában

Részletesebben

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5. IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere

Részletesebben

Adatbázis-kezelés ODBC driverrel

Adatbázis-kezelés ODBC driverrel ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...

Részletesebben

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Adatbázisok I SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés

Részletesebben

Adatbázis-kezelés, információs-rendszerek

Adatbázis-kezelés, információs-rendszerek Adatbázis-kezelés, információs-rendszerek 3. Ea: Eskúel (2011) Structured Query Language v: 2011.09.05 Szűcs Miklós - ME, ÁIT. 1.o Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítás DCL utasítások

Részletesebben

2012.05.11. Adatbázisok I A relációs algebra

2012.05.11. Adatbázisok I A relációs algebra Adatbázisok I A relációs algebra 2 3 4 1 Feladatok Tantárgy tkód cím kredit oktató Oktató oktkód név tanszék fizetés Feladatok 1. Az átlagos kreditpontszám: Γ avg(kredit) (Tantárgy) 2. A Matematika tanszéken

Részletesebben

Alternatív adatbázisok Gráfadatbázisok

Alternatív adatbázisok Gráfadatbázisok Alternatív adatbázisok Gráfadatbázisok Adatbázis típusok Relációs PostgreSQL, Oracle, MySQL, stb. Dokumentum MongoDB, CouchDB, OrientDB Gráfadatbázis Neo4J, OrientDB, ArangoDB, InfiniteGraph Key-value

Részletesebben

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.4. Relációs algebra (áttekintés) 5.1.

Részletesebben

Adatbázisok I 2012.05.11. Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés

Adatbá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észletesebben

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet 1 2 Adatbáziskezelő-szerver Általában dedikált szerver Optimalizált háttértár konfiguráció Csak OS + adatbázis-kezelő szoftver Teljes memória az adatbázisoké Fő funkciók: Adatok rendezett tárolása a háttértárolón

Részletesebben

Riak. Pronounced REE-ahk. Elosztott adattároló eszköz. Molnár Péter molnarp@ilab.sztaki.hu

Riak. Pronounced REE-ahk. Elosztott adattároló eszköz. Molnár Péter molnarp@ilab.sztaki.hu Riak Pronounced REE-ahk Elosztott adattároló eszköz Molnár Péter molnarp@ilab.sztaki.hu Mi a Riak? A Database A Data Store A key/value store A NoSQL database Schemaless and data-type agnostic Written (primarily)

Részletesebben

GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN

GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN INFORMATIKAI PROJEKTELLENŐR 30 MB Szendi-Varga János ÚJ GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN 2016. 12. 31. MMK- Informatikai projektellenőr képzés 2016. 12. 31. MMK-Informatikai projekt

Részletesebben

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2 Tartalomjegyzék Tartalomjegyzék 1 Az SQL nyelv 1 Az SQL DDL alapjai 2 Adatbázis parancsok 2 Táblaparancsok 2 A táblázat létrehozása 2 A táblázat módosítása 3 A tábla törlése 3 Indextábla létrehozása 3

Részletesebben

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján Vektoros grafikát tároló adatbázisok Katona Endre Térképi adatbázisok diasorozata alapján Vektoros adatábrázolás Kép = rajzelemek sorozata, koordinátageometriai leírással. CAD rendszerekre jellemző (pl.

Részletesebben

MPP Adattárház Teradata alapokon

MPP Adattárház Teradata alapokon MPP Adattárház Teradata alapokon Tanulmány az Adatbázisok haladóknak c. tárgyhoz Lévai Ákos PRISE Kft. 2012/2013 tanév I. félév Tartalomjegyzék BEVEZETÉS...3 ELŐZMÉNYEK...3 AZ MPP ADATTÁRHÁZ...3 ADATTÁRHÁZAKRÓL

Részletesebben

Adatbázisok I. Az SQL nyelv

Adatbázisok I. Az SQL nyelv Adatbázisok I Az SQL nyelv SQL (Structured Query Language) Deklaratív nyelv, 1974-ben publikálták Halmaz orientált megközelítés, a relációs algebra műveleteinek megvalósítására Előzménye a SEQUEL (IBM)(Structured

Részletesebben

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,

Részletesebben

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai 4. tétel Az egyed-kapcsolat modell 1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai 1.1. Adatbáziskezelÿ rendszer (DBMS - DataBase Management System) A DBMS komplex SW-HW rendszer, mely

Részletesebben

Adatbáziskezelı-szerver SQL. Relációs adatbázis-kezelık. Relációs adatszerkezet. Házi feladat 2012.03.05.

Adatbáziskezelı-szerver SQL. Relációs adatbázis-kezelık. Relációs adatszerkezet. Házi feladat 2012.03.05. 1 2 Adatbáziskezelı-szerver Általában dedikált szerver Optimalizált háttértár konfiguráció Csak OS + adatbázis-kezelő szoftver Teljes memória az adatbázisoké Fő funkciók: Adatok rendezett tárolása a háttértárolón

Részletesebben

Adatbázisok biztonsága

Adatbázisok biztonsága Adatbázisok biztonsága 13 1 Célkitőzések 1. Titoktartás (Secrecy): olyan felhasználó, akinek nincs joga, ne férjen hozzá az információkhoz. pl. egy diák ne láthassa más diák kreditjeit. 2. Sértetlenség

Részletesebben

Gartner: Hype Cycle for Big Data NoSQL Database Management Systems

Gartner: Hype Cycle for Big Data NoSQL Database Management Systems NOSQL RENDSZEREK Szárnyas Gábor szarnyas@mit.bme.hu 2014. március 3. Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika

Részletesebben

Lekérdezések az SQL SELECT utasítással

Lekérdezések az SQL SELECT utasítással Lekérdezések az SQL SELECT utasítással Célok Az SQL SELECT utasítás lehetőségeinek bemutatása A megjelenítendő oszlopok kiválasztása Elemi SELECT utasítások végrehajtása Az SQL utasítások és az isql*plus

Részletesebben

Vizuális programozás gyakorlat

Vizuális programozás gyakorlat Vizuális programozás gyakorlat A gyakorlat célja az entitás modell készítésének és az MS SQLEXPRESS használatának gyakorlása. A gyakorlat során egy könyvtári szoftver adatmodelljét tervezzük meg, valamint

Részletesebben

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Adatbá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észletesebben

LEKÉRDEZÉSEK SQL-BEN. A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek

LEKÉRDEZÉSEK SQL-BEN. A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek LEKÉRDEZÉSEK SQL-BEN A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek RELÁCIÓS ALGEBRA A relációs adatbázisokon végzett műveletek matematikai alapjai Halmazműveletek:

Részletesebben

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal. Adatbázis létrehozása Adatleíró műveletek CREATE DATABASE "tan1" WITH ENCODING= LATIN2 ; vagy parancssorból a terminál alatt $ createdb tan1 E=latin2 Kapcsolódás az adatbázishoz $ psql tan1 Adattábla létrehozása

Részletesebben

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI) Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek emelt szint 0911 ÉRETTSÉGI VIZSGA 2011. október 17. INFORMATIKAI ALAPISMERETEK EMELT SZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

RDBMS fejlesztési irányok. Ferris Wheel (óriáskerék) Jim Gray törvényei. Elosztott adatbázisok problémái. Elosztott adatbázisok

RDBMS fejlesztési irányok. Ferris Wheel (óriáskerék) Jim Gray törvényei. Elosztott adatbázisok problémái. Elosztott adatbázisok 1 RDBMS fejlesztési irányok Column store Tömb adatmodell JIT fordító és vektorizált végrehajtás Ferris wheel (óriáskerék) Elosztott adatbázisok Ferris Wheel (óriáskerék) Optimalizált scan műveletek Table

Részletesebben

SZERVER OLDALI JAVASCRIPT. 3. hét Javascript nyelvi elemek

SZERVER OLDALI JAVASCRIPT. 3. hét Javascript nyelvi elemek SZERVER OLDALI JAVASCRIPT 3. hét Javascript nyelvi elemek NYELVI ALAPOK: Ez sajnos igen száraz anyag, Viszont a megértékhez és a nyelv elsajátításához kell. Próbáljuk meg random gifekkel feldobni. MIRŐL

Részletesebben

MapReduce paradigma a CAP-tétel kontextusában. Adatb haladóknak. Balassi Márton Adatbázisok haladóknak 2012.

MapReduce paradigma a CAP-tétel kontextusában. Adatb haladóknak. Balassi Márton Adatbázisok haladóknak 2012. MapReduce paradigma a CAP-tétel kontextusában Balassi Márton balassi.marton@gmail.com 2012. október 30. Adatbázisok haladóknak 2012. 2012. október 30. Miről lesz szó? Elosztott adatfeldolgozásról általában

Részletesebben

Az Oracle rendszer komponensei

Az Oracle rendszer komponensei Az Oracle rendszer komponensei Célok Az Oracle szerver felépítésének és fő komponenseinek megismerése Annak bemutatása, hogy egy felhasználó Oracle példányhoz (instance) kapcsolódása hogy történik A következő

Részletesebben

ArcGIS 8.3 példa 1. Dr. Iványi Péter

ArcGIS 8.3 példa 1. Dr. Iványi Péter ArcGIS 8.3 példa 1. Dr. Iványi Péter Megjegyzések Ez a segédlet egy térinformatikai analízist mutat be. Nem minden lépés látható az oldalakon, de az előző segédletek megtanulása után nem szabad hogy problémát

Részletesebben

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére SQL PÉLDATÁR készült a PTE TTK Iskolai informatika III. kurzus teljesítésére PTE TTK Czimmermann Gergely MA matematika informatika tanár szakos hallgató 2017 Tartalomjegyzék 1. Adatleíró műveletek... 3

Részletesebben

S z á m í t ó g é p e s a l a p i s m e r e t e k

S z á m í t ó g é p e s a l a p i s m e r e t e k S z á m í t ó g é p e s a l a p i s m e r e t e k 10. előadás Ami eddig volt Számítógépek architektúrája Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Shell script Windows adminisztráció

Részletesebben

SQL 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 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észletesebben

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása DBMS spektrum Excel ODBC-ADO API Tevékenységpontok: - DBMS telepítés - ODBC driver telepítése - DSN létrehozatala -Excel-ben ADO bevonása - ADOConnection objektum létrehozatala - Open: kapcsolat felvétel

Részletesebben

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20.

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20. ADATBÁZISOK I. Szerkesztette: Bókay Csongor Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20. Ez a Mű a Creative Commons Nevezd meg! - Ne add el!

Részletesebben

XML adatkezelés. 11. témakör. Az XQuery nyelv alapjai. XQuery. XQuery célja egy imperatív lekérdező nyelv biztosítása. XQuery.

XML adatkezelés. 11. témakör. Az XQuery nyelv alapjai. XQuery. XQuery célja egy imperatív lekérdező nyelv biztosítása. XQuery. XML adatkezelés 11. témakör Az nyelv alapjai ME GEIAL dr Kovács Lászl szló célja egy imperatív lekérdező nyelv biztosítása SQL XPath XSLT (nem XML) XDM Forrás XML processzor Eredmény XML 1 jellemzői --

Részletesebben

Programozás és adatbázis kezelés PHP ben

Programozás és adatbázis kezelés PHP ben Programozás és adatbázis kezelés PHP ben Készítette: Pető László I. A programozási környezet A PHP platformfüggetlen programozási nyelv. A szkriptek futtatása szerveroldalon történik. Ezt a szerepet leggyakrabban

Részletesebben

A könyv tartalomjegyzéke

A könyv tartalomjegyzéke A könyv tartalomjegyzéke Elıszó Bevezetés Adatbázis-kezelı rendszerek Adatmodellezés Alapfogalmak Egyedhalmaz, egyed Kapcsolat, kapcsolat-elıfordulás, kapcsolat típusa Tulajdonság, tulajdonságérték, értékhalmaz

Részletesebben

Szathmáry László Debreceni Egyetem Informatikai Kar

Szathmáry László Debreceni Egyetem Informatikai Kar Szathmáry László Debreceni Egyetem Informatikai Kar 1. Gyakorlat bevezető JSON telepítés (utolsó módosítás: 2018. szept. 12.) 2018-2019, 1. félév MongoDB https://www.mongodb.com/ A MongoDB egy nem-relációs,

Részletesebben

Szárnyas Gábor (BME) diáinak felhasználásával. https://www.db.bme.hu/targyak/adatbazisok-haladoknak

Szárnyas Gábor (BME) diáinak felhasználásával. https://www.db.bme.hu/targyak/adatbazisok-haladoknak Szárnyas Gábor (BME) diáinak felhasználásával https://www.db.bme.hu/targyak/adatbazisok-haladoknak Codd: A Relational Model of Data for Large Shared Data Banks, 1970 1970-es évek eleje: SEQUEL (Structured

Részletesebben

TABLE ACCESS FULL HASH CLUSTER BY INDEX ROWID BY USER ROWID BY GLOBAL INDEX ROWID BY LOCAL INDEX ROWID

TABLE ACCESS FULL HASH CLUSTER BY INDEX ROWID BY USER ROWID BY GLOBAL INDEX ROWID BY LOCAL INDEX ROWID Az eddigi pédákban szereplo muveletek (operation és option együtt) (Az összes létezo lehetoséget lásd -> Performance Tuning Guide 19.9 fejezet, 19.3. táblázat) TABLE ACCESS FULL HASH CLUSTER BY INDEX ROWID

Részletesebben

INDEXSTRUKTÚRÁK III.

INDEXSTRUKTÚRÁK III. 2MU05_Bitmap.pdf camü_ea INDEXSTRUKTÚRÁK III. Molina-Ullman-Widom: Adatbázisrendszerek megvalósítása Panem, 2001könyv 5.4. Bittérkép indexek fejezete alapján Oracle: Indexek a gyakorlatban Oracle Database

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. november 20. 10. El adás SQLite SQLite: Adatbázis kezel rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngész kben is használt Nehéz olyan programnyelvet

Részletesebben

Adatbázis másolás Slony-I segítségével

Adatbázis másolás Slony-I segítségével Adatbázis másolás Slony-I segítségével Akár a magas elérhetõség érdekében, akár mentésként vagy leállás nélküli verziófrissítés miatt van szükségünk másolatkészítésre, ez a rugalmas eszköz mindent szinkronban

Részletesebben

Webfejlesztés 4. alkalom

Webfejlesztés 4. alkalom Webfejlesztés 4. alkalom Adatbázis kezelés, SQL alapismeretek, MySQL és a PHPMyAdmin használata Adatbázis kezelési alapok Az adatbázisok alapvetően adatkiszolgálást, illetve különböző szűréi, szeparálási

Részletesebben

Adatbázis rendszerek I

Adatbá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észletesebben

Gazdasági informatika vizsga kérdések

Gazdasági informatika vizsga kérdések Gazdasági informatika vizsga kérdések 1. Mi az adatbázis? Adatbázisnak a valós világ egy részhalmazának leírásához használt adatok összefüggı, rendezett halmazát nevezzük. 2. Mit az adatbázis-kezelı rendszer?

Részletesebben

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázis-lekérdezés. Az SQL nyelv. Makány György Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési

Részletesebben

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Programozás I. 3. előadás Tömbök a C#-ban Metódusok C#-ban Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Szoftvertechnológia

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Adatbázisok II. 6 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A XQUERY 6 XQUERY jellemzői XML dokumentumok lekérdezésére szolgáló lekérdezőnyelv W3C szabvány 2007 óta; a böngészők és ABKR értik

Részletesebben

Indexek és SQL hangolás

Indexek és SQL hangolás Indexek és SQL hangolás Ableda Péter abledapeter@gmail.com Adatbázisok haladóknak 2012. 2012. november 20. Miről lesz szó? Történelem Oracle B*-fa Index Felépítése, karbantartása, típusai Bitmap index

Részletesebben

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók Oracle SQL*Plus SQL ORACLE Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható

Részletesebben

INFORMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

INFORMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ Informatika emelt szint 1121 ÉRETTSÉGI VIZSGA 2013. október 18. INFORMATIKA EMELT SZINTŰ GYAKORLATI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ EMBERI ERŐFORRÁSOK MINISZTÉRIUMA Bevezetés A feladatok

Részletesebben

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1. Táblakezelés: Open SQL Internal table Tarcsi Ádám: Az SAP programozása 1. OPEN SQL Tarcsi Ádám, ELTE SAP Excellence Center: SAP programozás oktatóanyag 2 Open SQL Az Open SQL kulcsszavai: SELECT INSERT

Részletesebben

Java és web programozás

Java és web programozás Budapesti Műszaki Egyetem 2015. 04. 08. 10. Előadás Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: Ami

Részletesebben

Tipp A Word makrók kimerítõ tárgyalását megtalálhatjuk az O Reilly gondozásában megjelent Writing Word Macros címû könyvben.

Tipp A Word makrók kimerítõ tárgyalását megtalálhatjuk az O Reilly gondozásában megjelent Writing Word Macros címû könyvben. 2. fogás Utazás a makrók birodalmába Gyorstalpaló tanfolyam, amelynek során meggyõzõdhetünk arról, milyen sokat segíthetnek a makrók a fárasztó és idõrabló feladatok automatizálásában. A Word 6-os és azutáni

Részletesebben

ADATBÁZIS-KEZELÉS ALAPOK I.

ADATBÁ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észletesebben

Statisztikai szoftverek Molnár Gábor József

Statisztikai szoftverek Molnár Gábor József Statisztikai szoftverek Molnár Gábor József SAS-ban megírt programok megvalósítása SQL-lel Bevezetés A SAS, statisztikai szoftver, egy önálló adatkezelési nyelvvel rendelkezik; ez a SAS BASE amely segítségével

Részletesebben

INFORMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

INFORMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ Informatika középszint 0622 ÉRETTSÉGI VIZSGA 2007. november 6. INFORMATIKA KÖZÉPSZINTŰ GYAKORLATI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ OKTATÁSI ÉS KULTURÁLIS MINISZTÉRIUM Bevezetés A feladatok

Részletesebben

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17 Adatbázisok 8. gyakorlat SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT 2015. október 26. 2015. október 26. Adatbázisok 1 / 17 SQL nyelv Structured Query Language Struktúrált lekérdez

Részletesebben

Készítette: Szabóné Nacsa Rozália

Készítette: Szabóné Nacsa Rozália Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu 1 Structured Query Language (Struktúrált lekérdező nyelv) Relációs adatbázisok kezelésére kifejlesztett szabvány 2 DIAKOK dkód vnév knév 1001 Kiss János

Részletesebben

54 481 01 1000 00 00 CAD-CAM

54 481 01 1000 00 00 CAD-CAM 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észletesebben

1. 2012. évi nyári olimpiai játékok

1. 2012. évi nyári olimpiai játékok F203-.foruló II. KATEGÓRIA. 202. évi nyári olimpiai játékok Ált. lapméret B5 (JIS) 82x257 mm tájolás fekvő mind a négy margó 30 pt (,06 cm +/-0,0 cm), kötésmargó fent 0,4 (,02 cm +/-0,0 cm sorköz szövegtörzsben,2x

Részletesebben

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); CREATE TABLE `dihunor`.`csapat` ( `ID` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'A csapat azonositoja',

Részletesebben

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2 Az indexelés újdonságai Oracle Database 12c R1 és 12c R2 Szabó Rozalinda Oracle adattárház szakértő, oktató szabo.rozalinda@gmail.com Index tömörítés fejlődése 8.1.3-as verziótól: Basic (Prefixes) index

Részletesebben

C# osztályok. Krizsán Zoltán

C# osztályok. Krizsán Zoltán C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC

Részletesebben

MDAC - Microsoft Data Access Components

MDAC - Microsoft Data Access Components MDAC - Microsoft Data Access Components 1 ODBC Open DataBase Connectivity ODBC software API adatbáziskezeléshez. Nyelvfüggetlen, Adatbázisfüggetlen Operációsrendszer-független Standard adathozzáférés SQL

Részletesebben

XmlGessünk 13. rész - Az XML Schema II.

XmlGessünk 13. rész - Az XML Schema II. XmlGessünk 13. rész - Az XML Schema II. Az elz részben láthattuk, hogyan kell közvetlen egymásba ágyazással, referenciákkal és típusok definiálásával egyszerbb sémákat szerkeszteni. Részletesen megnéztük

Részletesebben

Óravázlat. az ECDL oktatócsomaghoz. 5. modul. Adatbáziskezelés. Krea Kft. 1034 Budapest, Szőlő u 21. Tel/fax: 250-5570 / 387-2557 E-mail: krea@krea.

Óravázlat. az ECDL oktatócsomaghoz. 5. modul. Adatbáziskezelés. Krea Kft. 1034 Budapest, Szőlő u 21. Tel/fax: 250-5570 / 387-2557 E-mail: krea@krea. Óravázlat az ECDL oktatócsomaghoz 5. modul Adatbáziskezelés Krea Kft. 1034 Budapest, Szőlő u 21. Tel/fax: 250-5570 / 387-2557 E-mail: krea@krea.hu A vázlatot összeállította: Pintyőke László Lektorálta:

Részletesebben

Betekintés az SQL hangolásba Oracle környezetben

Betekintés az SQL hangolásba Oracle környezetben Debreceni Egyetem Informatikai Kar Betekintés az SQL hangolásba Oracle környezetben Témavezető: Dr. Juhász István Egyetemi adjunktus Készítette: Thurzó Ákos György Programtervező informatikus Debrecen

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

Egységes és objektumközpontú adatbázis-kezelés (2. rész) Egységes és objektumközpontú adatbázis-kezelés (2. rész) A folytatásában a bemutatjuk, hogyan kezelhetünk Qt rendszer alatt SQL sormutatót, és készíthetünk grafikus felületet programoknak a Qt Designer

Részletesebben

MailMasterPlus API. fejlesztői dokumentáció

MailMasterPlus API. fejlesztői dokumentáció MailMasterPlus API fejlesztői dokumentáció 1. Bevezetés A MailMasterPlus API (továbbiakban API) célja, hogy lehetővé tegye a MailMasterPlus (továbbiakban MMP) rendszer integrációját, oda vissza történő

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Adatbázisok II. 7 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Oracle XML 7 Oracle XML DB Az XML adatok kezelésére az Oracle egy külön komponenst készített, az Oracle XML DB-t. Az XML adatok tárolására

Részletesebben

SQL parancsok feldolgozása

SQL parancsok feldolgozása Az SQL nyelv SQL nyelv szerepe Sequental Query Language, deklaratív nyelv Halmaz orientált megközelítés, a relációs algebra műveleteinek megvalósítására Előzménye a SEQUEL (IBM) Algoritmus szerkezeteket

Részletesebben

Tranzakciók az SQL-ben

Tranzakciók az SQL-ben Tranzakciók az SQL-ben Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 6.6. Tranzakciók az SQL-ben (Gyakorlaton csak SAVEPOINT, COMMIT és ROLLBACK lesz. Ez

Részletesebben

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) 23/1 B IT v: 2018.10.31 MAN DML adatokon műveletet végző utasítások DML Data Manipulation Language Rekordok (sorok) beszúrása (felvitele) Mezők

Részletesebben