|
Learning outcomes |
This course has two main goals: 1) consolidate the knowledge acquired in an introductory course of “Databases”, from a first cycle course, particularly, advanced aspects of the SQL programing and the Relational Database Management Systems technologies; and 2) introducing the non-relational databases and preparing students to understand, design and develop computer solutions using NoSQL databases.
Upon completion of the teaching-learning process, the students should know and understand: - The differences between a relational database and a non-relational database. - The concepts of replication, distribution, sharding, and resilience. - How to choose a suitable database for an application and infer its performance when subject to different data overloads.
In resume, after the course, students will have a critical understanding of the strategies and problems associated with the database systems and be able to propose new solutions.
|
|
Main Bibliography |
Main: Feliz Gouveia, “Bases de Dados – Fundamentos e Aplicações”, 2ª Edição, FCA, 2021, ISBN: 978-972-722-901-7.
1) Thomas Connolly, Carolyn Begg. “Database Systems, A Practical Approach to Design, Implementation and Management”, 6th Edition, 2015. Pearson, ISBN: 978-1-292-06118-4.
2) Sadalage, P. J., & Fowler, M. (2013). “NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence”. Addison-Wesley Professional, ISBN: 978-0321826626.
3) Tiwari, S. (2011). “Professional NoSQL”. John Wiley & Sons, Inc., Indianapolis, ISBN: 978-0-470-94334-6.
4) Redmond, E. & Wilson, J.R. (2012). “Seven Databases in Seven Weeks. A Guide to Modern Databases and the NoSQL Movement”. Pragmatic Bookshelf, ISBN: 978-1-93435-692-0.
|