KNOWLEDGE CONTROL

Fundamental concepts

  1. Background: sets
  • Define a set in intention and, in extension, illustrate with an example
  • Enumerate set operators, draw Venn Diagrams to illustrate their semantics
  • Define the notion of atomic DOMAIN type

2. Relational Model

  • Define the notion of RELATION SCHEMA in terms of a set expression. Give an example.
  • What is an integrity constraint? Enumerate the types of integrity constraints that define the semantics of a relation schema. Complete your previous example.
  • What is a relation key? What is a primary key?
  • Define a RELATIONAL DATABASE SCHEMA. Complete your example, including referential constraints.

3. Relational Database Design

  • Define the concepts of Mini-world, Conceptual Model and Data Model
  • Draw a figure describing a relational database design process from the Mini-world to the Conceptual Model and from the Conceptual Model to a Relational Database Schema using a data model.
  • What is SQL Data Definition Language? Which are the different languages SQL proposes, and what is their purpose?

4. Database querying: relational model operators

  • Which are the 5 basic operators of the relational algebra? What are the limits of the relational algebra regarding the expression of queries? Draw a Venn Diagram to specify the semantics of the operators.
  • Explain the notion of closure related to the relational algebra?
  • What is a query execution plan? What does it mean to use the operators properties for optimising a query?
  • What is an index and what is its purpose?
  • Which is the general expression of the SQL language for querying a database?

5. Execution model

  • Define the notion and purpose of a transaction and its properties? Illustrate the principle of having transactions when managing a relational database.
  • Which are the states of a transaction?

Technical concepts

  1. Database Management System (DBMS)
  • What is a DBMS? Draw the ANSI/SPARC architecture and describe the models associated to it.
  • What are the guarantees ensured by a relational DBMS?

2. Relational Database Application

  • What is a database relational application? What is its general architecture? Draw it.
  • What is the meaning of ETL and which is the process it denotes?
  • What are the management operators of a database