The course goes beyond relational technologies to examine the range of different database technologies available today. It also introduces the basic concepts of information retrieval and discusses the design decisions behind modern information system architectures.
The goal of the course is to introduce students to the wide range of technologies in use today for data storage and retrieval. This will include extensions of relational database technologies, non-relational database systems and information retrieval systems. Through the use of a case study, students will also learn about modern information system architectures and the design decisions behind them.
The course follows on from an earlier course on relational database technologies by introducing other database paradigms and extensions to relational systems. Students will gain experience of working with object, NoSQL and XML databases and the course will examine the features of these systems in terms of their approaches to storage, querying and transaction management and how they compare to relational systems and each other. The course will also look at how relational systems have been extended to support specific types of data, for example spatial, temporal and text data. In the second half of the course, the students will be introduced to modern information system architectures that build on one or more database technologies and a case study will be used to examine the design decisions behind such architectures. The case study will also be used to introduce students to the problems and techniques associated with integration, data quality and evolution in systems for large-scale, long-term data management. The last part of the course will introduce the basic concepts of information retrieval systems, web search and web data extraction.
Database Management Systems, Raghu Ramakrishnan and Johannes Gehrke, 3rd edition, pub McGraw Hill, 2003.