Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Masterat
Domeniul: Informatica
Programul de studii: Optimizarea modelelor informatice - în limba maghiară
Limba de predare: Maghiară

SYLLABUS

I. Általános adatok
Kód	Tantárgy neve	
MIH1008	Optimizarea interogării bazelor de date	

Félév	Órák: C+S+L	Kategória	Típus	
3	2+1+0	specialitate	obligatorie	

II. Foállásban az  Egyetem  oktatói
Név	Tudományos	Oktatói	Tanszék	Tevékenység	
	fokozat	státus		E	Sz	L	
VARGA Viorica	Dr. 	Conf.	Sisteme Informatice	*			

Társult oktatók
Név	Tudományos	Intézmény	Állás	Tevékenység 	
	fokozat		típusa	E	Sz	L	
							
III. A tantárgy célkitűzései
A lekérdezés optimalizálás részletes tanulmányozása az osztott relációs adatbázisok, objektum-orientált adatbázisok és féligstrukturált adatok esetén, az „Adatbáziskezelő rendszerek megvalósítása” előadás folytatásaként. 
Félév végére a saját feljesztésű osztott ABKR-t kell a diák készítsen egy objektum-orientált programozási nyelvben, mely optimalizálási technikát is implementál.	

IV. A tantárgy tartalma
- Osztott adatbázis fogalmak, adatok tárolása osztott adatbázisban, fizikai adatbázis szerkezete, osztott adatbázis katalógusának szerkezete, tárolása. 
- Osztott lekérdezés feldolgozásának fázisai, költség modellje. Adatok lokalizálása az osztott lekérdezés feldolgozása során.
- Algoritmusok az osztott lekérdezés optimalizálására. Lekérdezés optimalizálás az R * rendszer esetén.
- Optimalizálás a féligstrukturált adatok lekérdezése esetén. A féligstrukturált adatok lekérdezésének feldolgozása esetén használt index technikák. XQuery lekérdezések optimalizálása..
- Egy sztochasztikus modell az osztott lekérdezés optimalizálására, mely nemlineáris programozási feladathoz vezet. A nemlineáris programozási feladat megoldása numerikus és evolutív módszerrel.
- Objektum-orientált adatbázisok esetén használt index technikák. Lekérdezés feldolgozás és optimalizálás objektum-orientált adatbázisok esetén.
Labor: Saját fejlesztésű osztott adatbáziskezelő rendszer megvalósítása. 	

V. Könyvészet
1. S. Abiteboul: Quering Semi-Structured Data, ICDT ’97, Lecture Notes in Computer Science, Springer-Verlag, 1997.
2. S. Abiteboul, R. Hull, V. Vianu: Foundations of Databases, Addison-Wesley Publishing Company, 1995.
3. B. F. Cooper, N. Sample, M. J. Franklin, G. R. Hjaltason, M. Shadmon: A Fast Index for Semistructured Data, Proc. of 27-th VLDB Conference Roma, (2001)  
4. P. E. Drenick, E. J. Smith: Stochastic Query Optimization in Distributed Databases, ACM Trans. on Database Systems Vol. 18 Nr. 2, pp. 262-288, 1993.
5. S. Chaudhuri: An Overview of Query Optimization in Relational Systems, 1998 
6. H. Garcia-Molina, J. D. Ullman, J. Widom: Database System Implementation, Prentice Hall Upper Saddle River, New Jersey, 2000.
7. Y. Ioannidis: Query Optimization, ACM Computing Surveys, 1996
8. Q. Li, B.Moon: Indexing and Querying XML Data for Regular Path Expressions, Proc. of 27-th VLDB Conference Roma, 2001,
9. H.T. Ozsu, P. Valduriez, Principles of Distributed Database Systems, Prentice Hall, 1997.
10. M. Stonebraker: Object-Relational DBMSs, Morgan Kaufmann Publishers, San Fransisco, 1996.
11. D. D. Straube, M. T. Ozsu: Query Optimization and Execution Plan Generation in Object-Oriented Data Management Systems, IEEE Trans.on Knowledge and Data Engin. Vol.7 No.2, pp. 210-227, 1995.
12. V. Varga, D. Dumitrescu, C. Grosan: Solving Stochastic Optimization in Distributed Databases using Genetic Algorithms, Advances in Databases and Information Systems, LNCS3255, 8th East-European Conference, ADBIS 2004, Budapest, Hungary, September 2004, Springer, pp. 259-274.
13. V. Varga, Interogarea bazelor de date distribuite, Casa Cărţii de Ştiinţă, Cluj-Napoca, 2006. 
14. G. Wang, M. Liu: Query Processing and Optimization for Regular Path Expressions, CAiSE 2003 LNCS 2681, pp. 30-45, Springer-Verlag Berlin.  	

VI. Az oktatói tevékenység heti tematikája
1. előadás: Osztott adatbázis fogalmak átismétlése, adatok tárolása osztott adatbázisban. 
2. előadás: Fizikai adatbázis szerkezete, állományok szervezése, osztott adatbázis katalógusának szerkezete, tárolása.
3. előadás: Osztott lekérdezés feldolgozásának fázisai, költség modellje.
4. előadás: Adatok lokalizálása az osztott lekérdezés feldolgozása során.
5. előadás: Algoritmusok az osztott lekérdezés optimalizálására. 
6. előadás: Lekérdezés optimalizálás a System R és R * rendszerek esetén.
7. előadás: Optimalizálás a féligstrukturált adatok lekérdezése esetén.
8. előadás: A féligstrukturált adatok lekérdezésének feldolgozása esetén használt index technikák. 
9. előadás: XQuery lekérdezések optimalizálása..
10. előadás: Egy sztochasztikus modell az osztott lekérdezés optimalizálására, 2 csomópont és 2 reláció join műveletének optimalizálása. 
11. előadás: A sztochasztikus modell 3 csomópont és 3 reláció join műveletének optimalizálása esetén, mely nemlineáris programozási feladathoz vezet.
12 . előadás: A nemlineáris programozási feladat megoldása numerikus és evolutív módszerrel.
13 . előadás: Objektum-orientált adatbázisok esetén használt index technikák.
14 . előadás: Lekérdezés feldolgozás és optimalizálás objektum-orientált adatbázisok esetén.

Labor: Félév végéig a következő projektet kell elkészíteni:

Saját fejlesztésű osztott adatbáziskezelő rendszer megvalósítása. A töredékeket, relációkat XML dokumentumokban tároljuk.
I. Osztott katalógus, relációk, töredékek implementálása. Beszúrás, törlés művelet, illetve a a másolás megvalósítása, 
II. Az osztott SELECT-SQL művelet processzálása. 
III. Az osztott SELECT művelethez szükséges adatok lokalizálása.
IV. Egy optimalizálási technika megvalósítása, XML dokumentum indexelését felhasználva.
1-3 labor: Projekt I pont.
4-6 labor: Projekt II pont.
7-8 labor: Projekt III pont
 9. labor: Index technikák implementálása XML dokumentum esetén. 
10. labor: Lekérdezés optimalizálás tesztelés XQuery esetén.
11-13. labor: Projekt IV pont
14. labor: Projekt végleges formájának leadása.	

VII. Alkalmazott didaktikai módszerek
Az előadás vetítés formájában történik, Power Pointos bemutatók segítségével. Ez lehetőséget ad több példa bemutatására és beszélgetésre, problémák felvetésére. 
Oracle és MS SQL Serverben implementált osztottság követése futás közben.
XQuery feldolgozás bemutatása MS SQL Server 2005-ben, mely az előadó laptopján futás közben is követhető.	

VIII. Értékelés
1. Labor 			75 pont ( 50 pont projekt) 
2. Előadási tevékenység	25pont	

IX. Kiegészítő könyvészet
http://www.cs.mcgill.ca/~cs577; http://www.iks.inf.ethz.ch/education/ss06/PDDBS	

Dékán,						Tanszékvezető,
	Prof. dr. Tâmbulea Leon				Prof. dr. Boian Florin

	Dátum,						Előadás felelőse,
	26 szeptember 2009					Conf. dr. VARGA Viorica