Databases and advanced data techniques

By taking this module, you will gain a data science skillset. With these skills, you will be able to Databases and data services form the basis of many of the computer systems we use today.

This module builds on data concepts and skills from previous modules, providing advanced level knowledge about working with data in computers. computer programs that can read, process and analyse textual and numerical data. 

Credits

15 (150 hours)

Topics covered

  • Open data sources: different data formats
  • Gathering and cleaning data
  • The ethics of working with data
  • SQL: advanced data representation
  • SQL: advanced queries and linking 
  • NoSQL and document stores
  • NoSQL and data pipelines
  • Speeding up queries with indexes
  • Audio and video data
  • Data security

The topics listed here are indicative and may be slightly revised.

Learning outcomes

  • Devise and explain an appropriate representation of data in an SQL RDBMS
  • Write advanced SQL queries to read and write data from an SQL database
  • Write data to a NoSQL database and selectively read data from a NoSQL database using filters
  • Read data from various file formats and databases and prepare it for use in a computer program using data processing techniques
  • Discuss key issues relating to the ethics of working with data and data security
  • Understand the challenges of working with audio and video data

Assessment

  • Coursework (50%)
  • Examination (50%)

The coursework comprises four assignments, each designed to take 6-7 hours to complete. The assignments will be a mixture of theoretical questions and short programming exercises.

The exam will be 2 hours long, computer-based and consist of a mixture of quiz questions with short answers and longer questions that may require discursive answers and/or some amount of programming.