Go to:
Logótipo
You are here: Start > M.EIC032

Non-Relational Databases

Code: M.EIC032     Acronym: BDNR

Keywords
Classification Keyword
OFICIAL Information Systems

Instance: 2022/2023 - 1S Ícone do Moodle

Active? Yes
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Master in Informatics and Computing Engineering

Teaching language

Portuguese
Obs.: Suitable for English-speaking students.

Objectives

The BDNR curricular unit aims to prepare students to know, understand, design and develop solutions based on non-relational database paradigms and technologies to support information systems.

Specific objectives: know and understand the main concepts and paradigms of non-relational databases; enable students to analyze, design, implement and evaluate non-relational databases; design the storage and interrogation component of systems based on non-relational models.

Learning outcomes and competences

Upon completion of the curricular unit, the student should be able to:

  • Recognize the situations in which relational databases are not the adequate solution for the storage and interrogation of data;
  • Identify and describe the different models of non-relational databases and the typical situations of use of each one of them;
  • Design, implement and interrogate databases built according to different non-relational approaches;
  • Analyze the challenges associated with complex large-scale scenarios (big data), propose solutions based on non-relational models and understand the limits of each one of them;
  • Combine relational and non-relational models in information systems.

Working method

Presencial

Pre-requirements (prior knowledge) and co-requirements (common knowledge)

Programming: knowledge and practice with programming languages ​​for application development.

Databases: knowledge and practice of data modeling in UML, relational model, SQL language.

Program

Non-relational databases:

  • Introduction and motivation;
  • Current data challenges: size, variability, different paradigms;
  • ACID properties and limits of relational databases;
  • Historical perspective of database management systems.

Properties of non-relational databases:

  • The CAP theorem and design choices;
  • BASE properties;
  • Consistency and distribution techniques;
  • Joint treatment.

Selection of different application cases, one for each group of students.

Study each of the selected paradigms according to the following guide:

  • Introduction and motivation;
  • Model;
  • Main solutions;
  • Data access and manipulation;
  • Usage scenarios;
  • Implementation of application cases.

Paradigms:

  • Key-value databases;
  • Column-oriented databases;
  • Document databases;
  • Graph databases;
  • XML and triple databases;
  • Hybrid model databases.

Comparison of various paradigms.

Mandatory literature

Dan Sullivan; NoSQL For Mere Mortals, Addison-Wesley, 2015. ISBN: 978-0-13-402321-2
Sadalage, PJ, & Fowler, M.; NoSQL Diftered: A Brief Guide to the Emerging World of Polyglot Persistence, Pearson Education, 2013

Complementary Bibliography

Wilfried Lemahieu; Principles of database management. ISBN: 978-1-107-18612-5
Perkins, L., Redmond, E., & Wilson, J.; Seven databases in seven weeks: a guide to modern databases and the NoSQL movement, Pragmatic Bookshelf, 2018
Robinson, I. Webber, J., & Eifrem, E.; Graph Databases, O'Reilly, 2013
Guy Harrison; Next Generation Databases, Apress, 2015. ISBN: 978-1-4842-1330-8

Teaching methods and learning activities

The program topics are exposed in a series of tutorial sessions (theoretical presentation and laboratory work). Each group of students defines and carries out a project throughout the semester, with part of the development, monitoring and evaluation, carried out in class.

Project: each group selects a medium-sized application case from a diverse set of situations; for each paradigm studied, each group implements its case, including modeling, configuring a distributed architecture, creating and interrogating the database, and presents a report with conclusions about the adequacy of the paradigm to the case.

Exam: multiple choice test, including open-ended questions.

Software

Cassandra
Git
Neo4j
Redis
PostgreSQL
Docker
MongoDB

Evaluation Type

Distributed evaluation with final exam

Assessment Components

Designation Weight (%)
Exame 40,00
Trabalho prático ou de projeto 60,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Elaboração de projeto 84,00
Estudo autónomo 39,00
Frequência das aulas 39,00
Total: 162,00

Eligibility for exams

The development of the project will be monitored during the theoretical-practical classes, and evaluated based on monitoring, a technical report, and in the final presentation.

Theoretical concepts are assessed through a final exam, with multiple choice questions, including open-ended questions.

Approval in the course is subject to obtaining an individual assessment of 40% in both assessment components (project and exam).

Calculation formula of final grade

The final grade is calculated using the formula

Grade: 60% Project + 40% Exam

The final grade of the project may vary from element to element of the same group, by plus or minus 3 values, based on the opinion of the teachers and in self-assessment and hetero-assessment to be carried out internally in each group.

Students who fail to pass the unit must repeat the two assessment components (Project and Exam) in a new application.

Examinations or Special Assignments

There are no exams or special assignments.

Special assessment (TE, DA, ...)

The distributed assessment, carried out during the semester in which the course unit operates, is required for all students, regardless of the enrollment regime.

Student workers and their equivalents dismissed from classes must, at intervals to be agreed with the teachers, present the progress of their work, as well as present these, simultaneously with ordinary students, and carry out the theoretical tests for individual assessment provided for.

Classification improvement

The classification of the exam can be improved in the second season (appeal).

The classification of the project can be improved in the next occurrence of the curricular unit.

Recommend this page Top
Copyright 1996-2025 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2025-06-16 at 12:41:42 | Acceptable Use Policy | Data Protection Policy | Complaint Portal