Databases

lingi2172  2018-2019  Louvain-la-Neuve

Databases
6 credits
30.0 h + 30.0 h
Q2
Teacher(s)
Language
English
Main themes
  • Les systèmes de gestion de bases de données (objectifs, exigences, l'architecture).
  • Le modèle de données relationnel (théorie formelle, logique du premier ordre, contraintes).
  • Les modèles conceptuels (entité-relation, modélisation rôle objet).
  • Conception de base de données logique (formes normales et normalisation, ER-relationnel)
  • Conception de bases de données physiques et stockage (tables et clés, index, structures de fichiers).
  • Interrogation de bases de données (algèbre relationnelle, calcul relationnel, structures de données optimisation de requêtes, SQL)
  • Propriétés ACID (atomicité, cohérence, isolation, durabilité), contrôle d'accès concurrentiel, techniques de récupération.
  • programmation d'applications de bases de données (JDBC, curseurs de bases de données, Object-Relational Mapping).
  • Tendances récentes ou plus avancées dans le domaine des bases de données (bases de données orientées objet, Big Data, NoSQL, NewSQL)
Aims

At the end of this learning unit, the student is able to :

1

Eu égard au référentiel AA du programme « Master ingénieur civil en informatique », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :

  • INFO1.1-3
  • INFO2.1-4
  • INFO4.1-4
  • INFO5.1-5
  • INFO6.1, INFO6.4

Eu égard au référentiel AA du programme « Master [120] en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :

  • SINF1.M2
  • SINF2.1-4
  • SINF4.1-4
  • SINF5.1-5
  • SINF6.1, SINF6.4

Eu égard au référentiel AA du programme « Master [60] en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :

  • 1SINF1.M2
  • 1SINF2.1-4
  • 1SINF4.1-4
  • 1SINF5.1-5
  • 1SINF6.1, 1SINF6.4

Les étudiants qui terminent avec succès ce cours seront capables de :

  • expliquer les scénarios dans lesquels utiliser une base de données est plus pratique que la programmation avec des fichiers de données ;
  • expliquer les caractéristiques de l'approche utilisant des bases de données , d'où viennent-elles et les comparer avec les tendances actuelles dans le domaine des bases de données
  • identifier et décrire les principales fonctions d'un système de gestion de bases de données ;
  • classer les modèles de données conceptuels, logiques et physiques sur la base des concepts qu'ils fournissent pour décrire la structure de bases de données ;
  • comprendre les grands principes et la théorie mathématique de l' approche relationnelle de gestion de bases de données ;
  • concevoir des bases de données en utilisant une approche systématique , à partir d'un modèle conceptuel par un niveau logique ( c'est à dire un schéma relationnel ) jusqu'à un modèle physique ( c.-à- tables et les index ) ;
  • utiliser SQL ( DDL ) pour mettre en oeuvre un schéma des bases de données relationnelles et distinguer des installations SQL par rapport à la distinction logique vs  physique.
  •  interroger les bases de données relationnelles en utilisant SQL ( DML )  et comparer SQL avec la théorie relationnelle.
  • optimiser le fonctionnement d'une base de données.
  • comprendre les avantages et désavantages des bases de donées NoSQL.
  • utiliser des bases de données relationnelles , soit directement ou à partir d'un langage de programmation classique .
 

The contribution of this Teaching Unit to the development and command of the skills and learning outcomes of the programme(s) can be accessed at the end of this sheet, in the section entitled “Programmes/courses offering this Teaching Unit”.
Content
  • Introduction au modèle entité-association
  • Bases du modèle relationnel: structures de données et algèbre.
  • Langages relationnels de définition et de manipulation basés sur la logique.
  • Etude critique du langage SQL.
  • Programmation d'applications de bases de données.
  • Fonctions et architecture des logiciels de gestion de bases de données.
  • Gestion des accès simultanés aux bases de données et techniques associées de récupération en cas de panne.
Teaching methods
The objectives are organized along three main axes:
  • Understand: both the historical context, and recent challenges and developments in the database field; relational theory, why is has been invented and how it fits in practice; implementation techniques and major algorithms for data organization, query and transaction processing.
  • Design: from conceptual modeling (e.g. Entity-Relationship, UML) down to physical database tuning (e.g. indexes, query plans), through logical database design (e.g. functional dependencies, normal forms, normalization algorithms) and reasoning (relational algebra, views and constraints).
  • Use: installing and configuring database management systems, creating and tuning databases, using query languages in practice (e.g. SQL), connecting to databases (e.g. call interfaces, ORMs), integrating database systems in software designs.
Theory and practice are acquired by students along those three axes as follows:
  • Theory is dispensed in the traditional way, through two-hours auditorium sessions during the second quarter. The theoretical course follows Elmasri & Navathe's textbook [EN10].
  • Practice is acquired by students through projects of 2-3 weeks each. Some missions are achieved by groups of four students.
  • Both theory and pratical missions are dispensed in English.
Evaluation methods
Final grade following a 75% / 25% rule (final written exam / participation and grade obtained to practical missions during the semester). 25% from practical missions applies in september too.
Other information
Préalables:
  • LSINF1225 : connaissances de base en gestion de bases de données,
  • LSINF1121 : bonne compétences en programmation.
Bibliography
  • Ramez Elmasri and Shamkant Navathe Fundamentals of Database Systems. Addison-Wesley Publishing Company, USA, 7th edition, 2010.
  •  Chris J. Date. An Introduction to Database Systems. Pearson Addison-Wesley, Boston, MA, 8 edition, 2004.
  •  Hugh Darwen, An Introduction To Relational Database Theory, 3th Edition, Bookboon, 2009
  •  Jean-Luc Hainaut, Bases de Données, Concepts, Utilisation et Développement, 2e Edition, Dunod, 2012
  •  T.M. Connolly and C.E. Begg. Database Systems: A Practical Approach to Design, Implementation, and Management. Number v. 1 in International computer science series. Addison-Wesley, 2005.
Faculty or entity


Programmes / formations proposant cette unité d'enseignement (UE)

Title of the programme
Sigle
Credits
Prerequisites
Aims
Master [120] : ingénieur civil en science des données
6

Master [120] : ingénieur civil en informatique
6

Master [120] : bioingénieur en sciences et technologies de l'environnement
6

Master [60] en sciences informatiques

Master [120] : ingénieur civil biomédical
6

Master [120] en sciences informatiques
6

Master [120] : ingénieur civil en mathématiques appliquées
6

Master [120] en science des données, orientation statistique
6

Master [120] en science des données, orientation technologies de l'information
6