|
CS6492 Advanced Database Systems
Part I Course Duration: One semester Credit Units: 3 Level: P6 Medium of Instruction: English Prerequisites: CS3402 Database Systems or CS3462 Introduction to Database System or Any equivalent database course at undergraduate level Precursors: Nil Equivalent Courses: Nil Exclusive Courses: Nil Part II Course Aims This course has two objectives. First, it aims to enhance students’ understanding of relational databases, especially on index structures, query algorithms and optimization. The second objective is to introduce the fundamental techniques of various types of databases, and to discuss selected topics in database research. Course Intended Learning Outcomes (CILOs) Upon successful completion of this course, students should be able to: No. | CILOs | Weighting (if applicable) | 1. | develop in-depth understanding of relational databases that allows them to optimize database performance in practice;
| | 2. | identify the objective of each type of databases, and the applications where they are most useful;
| | 3. | communicate advanced concepts in database systems to other professionals;
| | 4. | apply the taught methodology to design fast algorithms for solving practical database problems;
| | 5. | develop basic understanding of research topics in database.
| |
Teaching and Learning Activities (TLAs) (Indicative of likely activities and tasks designed to facilitate students’ achievement of the CILOs. Final details will be provided to students in their first week of attendance in this course)
Teaching pattern: Suggested lecture/tutorial/laboratory mix: 2 hrs. lecture; 1 hr. tutorial. CILO No. | TLAs | Hours/week (if applicable) | CILO 1, CILO 2 | Lecture: The instructor will explain the course material in detail. Lectures support ILOs 1 and 2.
| | CILO 1, CILO 2, CILO 4 | Assignment: Each student is required to independently work on 2-3 assignments. Each assignment contains several questions designed to help students consolidate the concepts/algorithms learned. This learning method supports ILOs 1, 2 and 4.
| | CILO 3 | Case Study: In tutorials, some problem cases will be given to the student. The student will be required to give a presentation that explains her/his solution to the problem case. The instructor will guide the discussion during the presentation. This method supports ILO 3 and encourages communication among students and class participation.
| | CILO 3, CILO 5 | Surveying Study: The student will be required to do a guided study in database. The instructor will help the student to select some papers in database research to read. The student will then conduct a surveying of the selected topic. The student will submit a report and give a presentation at the end. The surveying study supports ILO 3 & 5. The study gives student a basic understanding of the research problem in database. Moreover, it gives student an opportunity to present his idea and improve his communication skill.
| |
Assessment Tasks/Activities (Indicative of likely activities and tasks designed to assess how well the students achieve the CILOs. Final details will be provided to students in their first week of attendance in this course)
Examination duration: 2 hours Percentage of coursework, examination, etc.: 30% CW; 70% Exam The course CILOs are assessed using the following approaches: CILO No. | Type of Assessment Tasks/Activities | Weighting (if applicable) | Remarks | CILO 1 | Develop in-depth understanding of relational databases that allows them to optimize database performance in practice. Coursework: The questions in assignments will test students’ understanding about the topics covered in the course. These questions may request a student to compute the cost of particular execution plans, identify the best plan, and analyze how it can be further improved. Exam: Students may be required to design an execution plan for processing a query, such that the cost of the plan does not exceed a certain threshold. The design may need to take into account the available indexes and data statistics.
| | | CILO 2 | Identify the objective of each type of databases, and the applications where they are most useful. Coursework: Students may be given various practical scenarios, and required to identify the best type of databases for each scenario. In case a scenario can be implemented with different types of databases, students may also be requested to explain the advantages/disadvantages of each implementation.
| | | CILO 3 | Communicate advanced concepts in database systems to other professionals; Coursework: The communication skill of a student will be assessed based on the quality of her/his presentation. The quality concerns primarily the clarity of the presentation.
| | | CILO 4 | Apply the taught methodology to design fast algorithms for solving practical database problems. Exam: The final exam will contain 1-2 difficult problems that require a student to perform sophisticated and creative analysis using the taught knowledge. These problems usually concern issues in practice that cannot be solved efficiently using the existing utilities in a commercial database system. The student is expected to work out alternative solutions with lower cost.
| | | CILO 5 | Develop basic understanding of research topics in databases Coursework: The student’s understanding of the research topic in database will be assessed based on the quality of her/his surveying study. The quality is measured by the technical merit of his study.
| | |
Grading of Student Achievement: Refer to Grading of Courses in the Academic Regulations Grading pattern: Standard (A+, A, A-…F) For a student to pass the course, at least 30% of the maximum mark for the examination must be obtained. Part III Keyword Syllabus: Advanced indexes. Query algorithm and optimization. Recovery. Object-oriented database. Object-relational database. Distributed database. Parallel database. Spatial database. Selected research topic. Syllabus | 1. | Introduction (review of fundamental database knowledge) Relational concepts: Row, column, primary key, foreign key. SQL. Disk organization. | | 2. | Advanced indexes Dense/sparse primary/non-primary index. Dynamic hashing. R-tree. | | 3. | Query algorithm. External sort. Block nested loop. Indexed nested loop. Sort merge join. Hash join. | | 4. | Query optimization. Query cost analysis. Pipelining. Cost-based optimization. Histogram. Sampling. | | 5. | Object-oriented and object-relational databases. Advanced data structures. Inheritance. Data definition language. Extended SQL. | | 6. | Distributed database Horizontal/vertical partitioning. Commit protocol. Distributed concurrency control. Semi-join. | | 7. | Parallel database Data partitioning: round robin, hash partition, range partition. Inter-query parallelism. Intra-query parallelism. | | 8. | Spatial database (geographic information system) Range search. Nearest neighbor retrieval. Spatial join. Closest pair search. | | 9. | Research topic A selected topic that is currently being actively investigated worldwide. |
Related Links
Department of Computer Science
|