Official course description:
AbstractThe course covers fundamental techniques for developing data management and data analytics applications.
DescriptionThe 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 a student has taken an introductory programming course (otherwise basic programming skills in Java are expected) and a discrete math course (or has knowledge of basic discrete math: logic and set theory).
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 SQL programming constructs 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.
Lectures cover the most important aspects of the curriculum, and also provide tools and methods for describing, creating and using databases. Weekly exercise sessions consist of assignments designed to further understand and apply the topics discussed in lectures. Mandatory homework assignments emphasise key aspects of the course.
The course has 4 mandatory assignments, that receive general and/or individual feedback. At least 3 of the assignments must be submitted and approved to be allowed to take the examination. Requirements for approval are minimal and approval will be communicated via LearnIT. Deadlines will be advertised during the course on LearnIT. The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
Principles of Database Management: The Practical Guide to Storing, Managing and Analyzing Big and Small Data - Wilfried Lemahieu, Seppe vanden Broucke, Bart Baesens Cambridge University Press; 1 edition (August 30, 2018)
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 45%
- Lectures: 12%
- Exercises: 14%
- Assignments: 19%
- Exam with preparation: 10%
Ordinary examExam type:
A: Written exam on premises, External (7-point scale)
A22: Written exam on premises with restrictions.
Written and printed books and notes
E-books and/or other electronic devices
- - e-books on laptops, iPads, and other e-book readers are permitted.
- Any course material (including Piazza discussions and old exams) can be accessed online or on your machine.
- Your own notes can be accessed in any form.
- - Students must use their own computer with the PostgreSQL database system and their database client of choice installed.
- Use of (online or local) drawing programs for ER diagram creation is permitted, but ER diagrams can also be hand-drawn and delivered to invigilators.
- Use of online documentation for PostgreSQL (https://www.postgresql.org/docs/), SQL (e.g., https://www.postgresqltutorial.com/ and https://www.w3schools.com/sql/) and Java (https://docs.oracle.com/en/java/index.html) is permitted.
Communication with others is strictly forbidden. This includes posting anything to the internet to sites such as stackexhange. Searching for information on the internet (“googling”) is forbidden.