Data and Knowledge Management
This module covers the principles and application of data and knowledge management technologies and languages including SQL. Students study the use of these in leading commercial database management systems as well as emerging approaches to data management.
To study the principles and application of data and knowledge management technology.
- Database management software: origins and objectives.
- The relational model: algebraic and logical foundations.
- Relational algebra and calculus.
- SQL: data manipulation, host language support for SQL.
- Transaction management, recovery, concurrency.
- Relational database theory: dependencies, normal forms.
- SQL data definition, other features.
- DBMS architectures and implementations.
- DBMS storage and indexing.
- Query optimisation.
- Enhanced database capabilities: procedural extensions to SQL, database triggers, deductive databases.
- Non-relational DBMS, object databases, NoSQL databases.
- Distributed databases, distributed architectures and connectivity.
- Databases and the Web, Java database programming - JDBC, SQLJ, databases and XML.
- Database research topics.
No formal prerequisite, but a strong aptitude for programming is essential.
All dates and timetables are listed in the programme handbooks of individual programmes.
AssessmentBy 2-hour written examination and practical coursework, weighting 90% and 10% respectively.
- Raghu Ramakrishnan and Johannes Gehrke, Database Management Systems Third Edition, McGraw Hill, 2003, ISBN 0072465638
- Students will also be directed to Web resources on the subject.