In this course we will study transactional processing in Information Systems. The essence of any transactional system is given by certain computational guarantees these systems provide. Well-known examples are the all-or-nothing-property (atomic commit) or the ability to recover from failures.
In the beginning of the course transactional techniques and synchronization methods of traditional database systems will be reviewed. In the second part we will concentrate on transactions in distributed and parallel environments. Mechanisms for keeping replica consistent as well as the architecture and usage of transaction managers will also be a topic. Finally the course will cover new techniques and applications of transactional processing in the context of web services, mobile environments and in other "beyond standard" situations.
There will be a 2 hours lecture per week as well as 2 hours practice. Practice will subsume an implementation project as well as theoretical assignements (homework).
This course is mandatory for those who want to specialize in Information Systems. Bachelors may take this course as an optional course if they want to learn more on database management and consider a Bachelor thesis in this area.
We will use Oracle 10g and the Postgres Database Management System.