Advanced Databases

Course info:

Semester: 6

Elective

ECTS: 6

Hours per week: 2

Professor: T.B.D.

Teaching style: Face to face, distance learning

Grading: Final written exam (60%), tutorial exercises (30%), groupwork presentation (10%)

Activity Workload
Lectures 26
Tutorials 13
Group work on Laboratory projects 48
Individual study 63
Course total 150

Learning Results

The aim of the course is to showcase the necessary concepts so that students are able to design and implement complex database systems using modern tools and techniques in an evolving competitive environment.

The material aims at a deeper understanding of the design and implementation of Database Systems (DBMS) and the use of Database Management Products so that students can apply the relevant technology and select and use appropriate DBMS for the design and implementation of complex applications. Emphasis is placed on the comparative presentation of transaction support and database management administrations that existing products offer, in order for the students to acquire an overall understanding of database management and the design and implementation of transactions in the DBMs. In this sense, the course is the basis on which specific methodologies and techniques for designing and developing database systems are applied in the design and development of applications using specific products.

The main objective of the course is to equip students with the necessary knowledge so that they are able to design databases and database systems and implement databases using existing products. Moreover, the aim of the course is he application of the theory to real-life problems when designing and implementing applications that are very likely to arise during the future professional activity of the students.

Upon successful completion of the course the student:

  • will have used basic tools of database technology and products,
  • be able to apply techniques for designing and implementing complex databases and use known products to implement complex database systems,
  • will have a good understanding of the differences between known DBMSs with respect to their support of transactions, as well as atabase administration,
  • will have a good understanding of how to use views in database system applications,
  • be able to analyze business rules to design complex databases,
  • will be able to choose the DBMS that will be appropriate for any real-life problem,
  • will have collaborated with his / her classmates to create and present a plan in a case study project for designing and implementing a database system.

Skills acquired

  • Individual work
  • Group work
  • Project design and management
  • Decision making
  • Conceptual data modeling, extended Entirtiy-Relationship model, Extended relation model, object-oriented database model, non-relational (noSQL) database models,
  • System development using SQL, application development and prototype interfaces using JDBC,
  • Oracle Technology (PL/SQL, triggers, stored procedures etc.),
  • Opensource DBMSs,
  • Comparative evaluation of database products with repect to transaction processing,
  • Συγκριτική παρουσίαση Προϊόντων Διαχείρισης Βάσεων Δεδομένων σε θέματα Διαχείρισης Βάσεων Δεδομένων (Database Administration),
  • Database backup and recovery,
  • Concurrency control in multi-user environments,
  • Indexing and query optimization,
  • Distributed databases,
  • New topics in the area of databases: noSQL databases, temporal databases, Spatial databases, Multimedia databases, Databases and the World Wide Web, Semi-structured databases, XML databases, Datawarehouses and OLAP systems, etc.
  • Case-study project presentation.
  1. Hector GarciaMolina, Jeffrey Ullman, Jennifer Widom, Database Systems: The Complete Book, 2008, ISBN: 978-0131873254, Pearson; 2nd edition.
  2. Elmasri Ramez, Navathe Shamkant, Fundamentals of Database Systems, 2016, ISBN: 978-0133971118, Pearson; 7th edition.
  3. Ramakrishnan Raghu, Gehrke Joahannes, Database Management Systems, 2012, ISBN: 978-0072465631, McGraw-Hill; 3rd edition.
  4. Silberschatz A., Korth H.F., Sudarshan S., Database System Concepts, 2010, ISBN: 978-0073523323, McGraw-Hill; 6th edition.
  5. Subrahmanian V.S., Principles of Multimedia Database Systems, Morgan Kaufmann
  6. Gray J., Reuter A., Transaction Processing: Concepts and Techniques, Morgan Kaufmann
  7. Theriault M., Henney W., Oracle security, O’Reilly
  8. Gennick J., Teach yourself Oracle PL/SQL in 21 days, SAMS Publishing
  9. O’Neil B. (Ed.), Oracle data warehousing unleashed, SAMS
  10. Dorsey P., Hudicka J., Oracle design using UML & object modeling, Oracle Press
  11. AbramsonI., Abbey M., Corey M., Oracle Database 12c Install, Configure & Maintain Like a Professional, Oracle Press, McGraw-Hill
  12. Meloni J., Teach Yourself PHP, MySQL and Apache, SAMS
  13. Davies A., Fisk H., MySQL Clustering, MySQL Press
  14. Bell C.A., Expert MySQL, Apress
  • Research papers and technical reports from projects, chapters from diploma theses, review papers and other publications in hot topics withing the area of databases and their techniques.

Learning Results - Skills acquired

Learning Results

The aim of the course is to showcase the necessary concepts so that students are able to design and implement complex database systems using modern tools and techniques in an evolving competitive environment.

The material aims at a deeper understanding of the design and implementation of Database Systems (DBMS) and the use of Database Management Products so that students can apply the relevant technology and select and use appropriate DBMS for the design and implementation of complex applications. Emphasis is placed on the comparative presentation of transaction support and database management administrations that existing products offer, in order for the students to acquire an overall understanding of database management and the design and implementation of transactions in the DBMs. In this sense, the course is the basis on which specific methodologies and techniques for designing and developing database systems are applied in the design and development of applications using specific products.

The main objective of the course is to equip students with the necessary knowledge so that they are able to design databases and database systems and implement databases using existing products. Moreover, the aim of the course is he application of the theory to real-life problems when designing and implementing applications that are very likely to arise during the future professional activity of the students.

Upon successful completion of the course the student:

  • will have used basic tools of database technology and products,
  • be able to apply techniques for designing and implementing complex databases and use known products to implement complex database systems,
  • will have a good understanding of the differences between known DBMSs with respect to their support of transactions, as well as atabase administration,
  • will have a good understanding of how to use views in database system applications,
  • be able to analyze business rules to design complex databases,
  • will be able to choose the DBMS that will be appropriate for any real-life problem,
  • will have collaborated with his / her classmates to create and present a plan in a case study project for designing and implementing a database system.

Skills acquired

  • Individual work
  • Group work
  • Project design and management
  • Decision making
Course content
  • Conceptual data modeling, extended Entirtiy-Relationship model, Extended relation model, object-oriented database model, non-relational (noSQL) database models,
  • System development using SQL, application development and prototype interfaces using JDBC,
  • Oracle Technology (PL/SQL, triggers, stored procedures etc.),
  • Opensource DBMSs,
  • Comparative evaluation of database products with repect to transaction processing,
  • Συγκριτική παρουσίαση Προϊόντων Διαχείρισης Βάσεων Δεδομένων σε θέματα Διαχείρισης Βάσεων Δεδομένων (Database Administration),
  • Database backup and recovery,
  • Concurrency control in multi-user environments,
  • Indexing and query optimization,
  • Distributed databases,
  • New topics in the area of databases: noSQL databases, temporal databases, Spatial databases, Multimedia databases, Databases and the World Wide Web, Semi-structured databases, XML databases, Datawarehouses and OLAP systems, etc.
  • Case-study project presentation.
Recommended bibliography
  1. Hector GarciaMolina, Jeffrey Ullman, Jennifer Widom, Database Systems: The Complete Book, 2008, ISBN: 978-0131873254, Pearson; 2nd edition.
  2. Elmasri Ramez, Navathe Shamkant, Fundamentals of Database Systems, 2016, ISBN: 978-0133971118, Pearson; 7th edition.
  3. Ramakrishnan Raghu, Gehrke Joahannes, Database Management Systems, 2012, ISBN: 978-0072465631, McGraw-Hill; 3rd edition.
  4. Silberschatz A., Korth H.F., Sudarshan S., Database System Concepts, 2010, ISBN: 978-0073523323, McGraw-Hill; 6th edition.
  5. Subrahmanian V.S., Principles of Multimedia Database Systems, Morgan Kaufmann
  6. Gray J., Reuter A., Transaction Processing: Concepts and Techniques, Morgan Kaufmann
  7. Theriault M., Henney W., Oracle security, O’Reilly
  8. Gennick J., Teach yourself Oracle PL/SQL in 21 days, SAMS Publishing
  9. O’Neil B. (Ed.), Oracle data warehousing unleashed, SAMS
  10. Dorsey P., Hudicka J., Oracle design using UML & object modeling, Oracle Press
  11. AbramsonI., Abbey M., Corey M., Oracle Database 12c Install, Configure & Maintain Like a Professional, Oracle Press, McGraw-Hill
  12. Meloni J., Teach Yourself PHP, MySQL and Apache, SAMS
  13. Davies A., Fisk H., MySQL Clustering, MySQL Press
  14. Bell C.A., Expert MySQL, Apress
  • Research papers and technical reports from projects, chapters from diploma theses, review papers and other publications in hot topics withing the area of databases and their techniques.