Subject: Implementation of Database Management Systems	Code: MI128	

Semester	 Hours: C+S+L	Type	 Section	
8	2+0+2	optional	Computer Science	
8	2+0+2	optional	Mathematics-Computer Science	

Teaching Staff in Charge	Assoc.Prof. VARGA Viorica, Ph.D., ivarga@cs.ubbcluj.ro	
Aims	The course objective is the presentation of storing data in databases, query processing and optimization techniques, transaction processing in database systems	
Content	1. The structure of physical database, file organizations, the structure of the database catalog.
2.	Index techniques (ISAM, hash, tree indexes, etc.). 
3.	The implementation of the SQL commands.
4.	Algorithms for the implementation of relational algebra operations: selection, projection, join (nested loop, indexed nested loop, merge join), etc.
5.	The phases of query processing in databases.
6.	The cost model for query processing evaluation, DBMS's statistics.
7.	Algorithms for query optimization. 
8.	Query optimization in System R.
9.	Algorithms for transaction processing. 
10.	Physical database design.
11.	Query optimization in MS SQL Server.
12.	Query optimization in Oracle.	
Selective References	C. J. Date: An Introduction to Database Systems, 8th Edition, Addison-Wesley Higher Education, 2004.
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.
S. Chaudhuri: An Overview of Query Optimization in Relational Systems, 1998 
H. Garcia-Molina, J. D. Ullman, J. Widom: Database System Implementation, Prentice Hall Upper Saddle River, New Jersey, 2000.
G. Graefe: Query Evaluation Techniques for Large Databases, ACM Computing Surveys, 25(2), 1993.
Y. Ioannidis: Query Optimization, ACM Computing Surveys, 1996
H.T. Ozsu, P. Valduriez, Principles of Distributed Database Systems, Prentice Hall, 1991.
R. Ramakrishnan: Database Management Systems, WCB McGraw-Hill, Boston, 1998.
P. Selinger et al: Access Path Selection in a Relational Database Management System, ACM SIGMOD 1979, 23-34. 
J. D. Ullman, J. Widom: A First Course in Database Systems, Prentice Hall Upper Saddle River, New Jersey, 1997.
V. Varga, Interogarea bazelor de date distribuite, Casa Cărţii de Ştiinţă, Cluj-Napoca, 
2006. 	
Assessment	100% - a collective project for implementing an own database management system
     or
50% from the final mark is the mark from a project for testing query optimization in Oracle or MS SQL Server
50% from the final mark is the mark from a written test.