Skip to main content

Data and Knowledge Management


  • Credit value: 15 credits at Level 7
  • Convenor and tutor: Richard Brownlow
  • Assessment: a 1500-2000-word programming task and report (20%) and two-hour examination (80%)

Module description

In this module we cover the principles and application of data and knowledge management technologies and languages including SQL. We will study the use of these in leading commercial database management systems as well as emerging approaches to data management.

Indicative syllabus

  • Database management software: origins and objectives
  • The relational model: algebraic and logical foundations
  • Relational algebra
  • 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
  • Non-relational DBMS, NoSQL databases
  • Databases and the Web, JDBC, alternative persistence frameworks
  • Database research topics

Learning objectives

By the end of this module, you will:

  • understand the origins and objectives of database management systems
  • understand the algebraic and logical foundations of the Relational Model
  • be able to write database queries using SQL
  • understand the principles of database transaction management, including recovery and concurrency
  • be able to apply the principles of relational database theory to database design
  • understand the principles of query optimisation
  • understand the applications of enhanced database capabilities, including procedural extensions to SQL and database triggers
  • have an awareness of non-relational database technologies.