Kursusnavn (dansk): | Introduction to Database Design, BSc |
Kursusnavn (engelsk): | Introduction to Database Design, BSc |
Semester: | Forår 2017 |
Udbydes under: | Bachelor i softwareudvikling (bswu) |
Omfang i ECTS: | 7,50 |
Kursussprog: | Engelsk |
Kursushjemmeside: | https://learnit.itu.dk |
Min. antal deltagere: | 1 |
Forventet antal deltagere: | 0 |
Maks. antal deltagere: | 25 |
Formelle forudsætninger: | This course assumes basic ability to use a computer. We also assume that a student is taking an introductory programming course in parallel (otherwise basic programming skills in Java are expected) and following a discrete math course such as SGDM (or has knowledge of basic discrete math (logic, set theory and proofs)). |
Læringsmål: | * suggest a database design according to the relational model, and present it as an SQL schema, using the concepts key, type, and constraint.
* define a database design by E-R modelling, using the concepts entity, attribute, key, cardinality, and relationship.
* analyze and improve database designs using normal form theory
* write SQL queries, involving multiple relations, compound conditions, grouping, aggregation, and subqueries.
* find functional dependencies in a relation and perform decomposition to eliminate unwanted dependencies.
* decide if a given index is likely to improve performance for a given query.
* identify possible problems in transaction handling, related to consistency, atomicity, and isolation.
* analyze/predict/improve efficiency of the designed database using indices
* use SQL from other programming languages.
* suggest a conceptual and physical design of an OLAP system. |
Fagligt indhold: | The course gives an introduction to relational databases as well as an introduction to data analytics, both from a practical and theoretical point of view.
The main part of the course deals with relational databases, including theory and practice for modeling and quering a database. Towards the end of the course the focus will be on techniques for OLAP.
For relational databases the following topics will be covered:
• Programming in SQL, including all basic operations as well as some more advanced constructions (e.g. subqueries)
• Database design using E-R modelling
• Defining a database design using the relational model and SQL schemas
• Normalization of relations
• Use of different indexes, including hash indexes, B-tree indexes, non-clustered and clustered indexes
• Transaction handling
• Using SQL in applications, e.g. Java-applications
• Other basic concepts related to relational databases and SQL, such as triggers, views etc.
For data analytics the following topics will be covered:
• OLAP and data warehousing |
Læringsaktiviteter: | 12 forelæsninger og 12 øvelsesgange Weekly exercises are coding exercises, applying techniques and using them to analyze and improve designs. |
Obligatoriske aktivititer: | Der er ingen obligatoriske aktiviteter. Vær venlig KUN at ændre denne tekst når der er obligatoriske aktiviteter./
There are no mandatory activities. Please, change this text ONLY when there are mandatory activities. |
Eksamensform og -beskrivelse: | X: Eksperimentel eksamensform., (7-scale, external exam) There will be four homework assignments. Each will be graded. There will be a final written exam.
The final grade is computed 15% for each homework + 40% final exam.
The duration of the written examination on premises is 4 hours with following restrictions:
Restrictions:
1. You may use paper based books*.
2. You may use e-books* - To read those you may use laptops, ipads and other e-book readers.
3. The technical devices above must not be used for anything but reading e-books.
4. You must not use cell phones and technical advices apart from the above during the exam.
* the definition on books and e-book is: a book/e-book can be read independently of other input.
The reexam form will depend of the number registered for re-exam.
|
Litteratur udover forskningsartikler: | Database Management systems by Ramakrishnan and Gehrke |
| |