Course co-ordinator(s): Dr Santiago Chumbe (Edinburgh).
Aims:
• To provide a comprehensive introduction to database management systems
• To familiarise students with relational algebra and the theory, principles and applications of relational databases
• To gain competence in SQL to develop database applications, such as OLAP and OLTP applications
• To provide an understanding of non-relational alternatives, such as NoSQL databases
• To enable students to design real-world databases, embedded in and contextualised for their host companies
Detailed Information
Course Description: Link to Official Course Descriptor.
Pre-requisites: none.
Location: Edinburgh.
Semester: AY.
Syllabus:
Fundamental concepts of DBMS and types of databases. Relational Algebra. Relational Database Model. RDBMS design (e.g. identification of entities, attributes and relationships; E-R diagram; normalisation; OLTP and OLAP applications and; denormalisation). Relational queries (e.g. SQL DDL, DCL and DML commands including Boolean combinations of queries, aggregation, duplicate elimination, nested queries and CRUD queries). Transactions (e.g. ACID Properties, SQL TCL commands, concurrency control protocols). RDBMS query optimisation (e.g. data storage principles, indexing, query execution plans, physical database design). Big Data demands (e.g. database distribution, scalability, sharding, BASE properties). Non-relational database models (e.g. object, aggregated and graph stores). Emerging database trends. Work-based database project.
SCQF Level: 8.
Credits: 15.

