Official course description, subject to change:
AbstractThe course covers fundamental techniques for developing data management and data analytics applications.
The course covers fundamental techniques for developing data management and data analytics applications. The main part of the course deals with traditional relational database processing, including the theory and practice of modelling and querying a database. In the latter part of the course, the focus is on new developments for both traditional database applications and for modern data analytics applications.
This course assumes basic ability to use a computer. We also assume that students have taken an introductory programming course (otherwise basic programming skills in Python are expected) and a discrete maths course such as Discrete Mathematics for SD (or have knowledge of basic discrete maths: logic, set theory, and proofs).
Intended learning outcomes
After the course, the student should be able to:
- Write SQL queries, involving multiple relations, compound conditions, grouping, aggregation, and subqueries.
- Use relational DBMSs from a conventional programming language in a secure manner.
- Suggest a database design in the E-R model and convert to a relational database schema in a suitable normal form.
- Analyze/predict/improve query processing efficiency of the designed database using indices.
- Reflect upon the evolution of the hardware and storage hierarchy and its impact on data management system design.
- Discuss the pros and cons of different classes of data systems for modern analytics and data science applications.
Ordinary examExam type:
A: Written exam on premises, External (7-point scale)
A22: Written exam on premises with restrictions.