logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2015/2016
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 088958 - ADVANCED DATABASE AND WEB TECHNOLOGIES
Docente Comai Sara , Fraternali Piero
Cfu 10.00 Tipo insegnamento Corso Integrato

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (Mag.)(ord. 270) - CO (482) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA*AZZZZ088955 - DATABASE SYSTEMS 2
088948 - ADVANCED WEB TECHNOLOGIES
088958 - ADVANCED DATABASE AND WEB TECHNOLOGIES

Programma dettagliato e risultati di apprendimento attesi

This advanced database part aims at deepening the knowledge about the main issues of the modern architectures of the information systems, of the transactional systems, and of the advanced languages for databases.

1. Transactional systems. 

Relevance of transactional systems. Examples of classical transaction processing systems. Concept of transaction. Transaction properties: atomicity, consistency, isolation, durability. Theory of concurrency control. Notions of serializability and schedule equivalence. Two-phase locking. Hierarchical locking. Deadlock analysis and resolution. Introduction to other concurrency control techniques based on the use of timestamps. Database recovery techniques. Management of the system logs. Recovery protocols.

2. Internal architecture of a relational server. Notion of logical and phisical page. Buffer management policies. Research, management and data reorder techniques with: sequential, direct, and index organization. B-trees and B+-trees. Hashing. Access methods: scanning, sorting, join. Query optimization.

3. Distributed and parallel architectures. Applicative scenarios of databases in a distributed information system. Fragmentation and data allocation. Query distribution and optimization. Distributed transactions. Two- three- and four-phase commit. Interoperability standards: XOPEN-DTP. Parallelism. Transaction scale-up and speed-up. Management of replicated data.

4. Overview of Object-Oriented databases. Object-oriented and Object-relational systems and their evolution. 

5. Active databases. Description of the ECA (Event/Condition/Action) paradigm for active rules. Rules execution mechanisms. Analysis techniques for active rules. Triggers in relational systems. Applications of active databases.

6. XML databases. Query languages for XML: XPath, XQuery.

7. Advanced databases. No-SQL databases; Stream databases.  

Prerequisite topics can be covered with the following textbook

Atzeni, Ceri, Paraboschi, Torlone: Database Systems - Concepts, Languages and Architectures (Part I + Part II), available at http://dbbook.dia.uniroma3.it/ 

 

 

The advanced web technologies part of the course presents an overview of the modern architectures, technologies and development methodologies applied in the construction of multi-tier web applications.

Three main viewpoints are adopted: protocols, languages, architectures. These viewpoints are examined with an emphasis on architectures and requirements for real systems.

The following areas will be treated:

  • Protocols and distributed application architectural styles: SOAP and REST; both approaches are discussed in detail and compared
  • Languages and formats: JSTL, JPQL, WSDL; these languages are motivated and explained in the context of the architectural framework where they are applied. 
  • Architectures and systems: evolution and features of architectures of distributed applications

In particular, the following topics will be addressed:

  • Distributed architectures. history, evolution, present status, outlook 
  • Web architectures: definition, internal organization and essential elements 
  • Presentation tier
    • Model View Controller (MVC) and MVC2 
    • Web presentation frameworks and their design patterns
    • Examples of systems: Struts and Spring,
  • Business tier
    • J2EE, Enterprise Java Beans, JPA, Object Relational Mapping
  • Service Oriented Architectures
  • Cloud architectures: definition, models, architectural principles, examples of systems 

 The course is supported by a complete set of slides and web references that cover all the topics addressed.

 Prerequisite topics can be covered with the following textbooks

 

- S. Ceri, P. Fraternali et al, Designing Data Intensive Web Applications, Morgan Kauffman, 2003

- Lecture notes & exercises of the course Tecnologie Informatiche per il Web (in English) 

- Atzeni, Ceri, Paraboschi, Torlone: Database Systems - Concepts, Languages and Architectures


Note Sulla Modalità di valutazione

The exam consists of two parts, corresponding to the two submodules. The two parts are held separately. 

The first part of the exam (Advanced Database) consists in a written verification covering all the topics of the course. A typical exam structure comprises 4-5 exercises and an open question to be delivered in about 2,5 hours.

----

The second part of the exam (Advanced Web) will comprise the solution of written exercises. A typical exam structure comprises four questions (exercises/open questions) to be delivered in 2 hours.


One question is normally targeted to each area of the course:

1) Presentation tier technologies,

2) Business tier technologies,

3) Web Services,

4) Other specific topics taught in the current term.

The resolution of the questions at points 1-3 may require writing micro-applications using Spring or JSTL, definition of EJB descriptors, definition of WSDL or REST specifications, ecc…

The resolution of questions at point 4 may require answering in written form to  open questions on any topic covered in this class.

 

The exam also consists of a project assignment. The assigment replaces 50% of the written test (-2 question in one of the four areas)

The topic of the assignment is specified by the teacher, the work can be done individually on in group of 2 students.

The delivered result is anyhow reviewed individually in an oral examination.


The work must be completed and checked-in during the first exam session (motivated exceptions possible)


Bibliografia

Mix Forme Didattiche
Tipo Forma Didattica Ore didattiche
lezione
62.0
esercitazione
36.0
laboratorio informatico
8.0
laboratorio sperimentale
0.0
progetto
0.0
laboratorio di progetto
0.0

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT
25/02/2021