5 Course Materials Outline
5.1 Textbook Materials Outline
The following is a list of those chapters and sections which will be covered in the course. For each
chapter or section, a symbol is given which indicates the nature of coverage in the course. The
meaning of these symbols is provided in the table below.
|
|
✔ | Material will be covered in the course. |
|
|
✥ | Material will be covered partially or selectively. |
|
|
|
Note the following:
- If an entire chapter is covered, no section-by-section breakdown is given.
- Entries have not been provided for sections entitled “Summary” or the like.
- In general, omitted items will not be covered. However, the possibility that some covered
material may appear in an omitted chapter or section remains. In all cases, the lectures
and course notes should be taken to be the definitive statement for the course material.
-
1
- Databases and Database Users ✔
-
2
- Database System Concepts and Architecture ✔
-
3
- Data Modeling Using the Entity-Relationship Model ✔
-
5
- The Relational Data Model and Relational Database Constraints ✔
-
6
- The Relational Algebra and Relational Calculus ✔
-
7
- Relational Database Design by ER- and EER-to-Relational Mapping
-
7.1
- Relational Database Design Using ER-to-Relational Mapping ✔
-
8
- SQL-99: Schema Definition, Basic Constraints, and Queries ✔
-
9
- More SQL: Assertions, Views, and Programming Techniques
-
9.1
- Database Programming: Issues and Techniques ✔
-
9.2
- Embedded SQL, Dynamic SQL, and SQLJ ✥(SQLJ not covered)
-
9.3
- Database Programming with Function Calls: SQL/CLI and JDBC ✥(SQL/CLI only)
-
10
- Functional Dependencies and Normalization for Relational Databases ✔
-
11
- Relational Database Design Algorithms and Further Dependencies
-
11.1
- Properties of Relational Decompositions ✔
-
11.2
- Algorithms for Relational Database Schema Design ✔
-
13
- Disk Storage, Basic File Structures, and Hashing ✔
-
14
- Indexing Structures for Files ✔
-
15
- Algorithms for Query Processing and Optimization
-
15.1
- Translating SQL Queries into Relational Algebra ✔
-
15.2
- Algorithms for External Sorting ✔
-
15.3
- Algorithms for SELECT and JOIN Operations ✔
-
15.4
- Algorithms for PROJECT and SET Operations ✔
-
15.7
- Using Heuristics in Query Optimization ✥
-
15.8
- Using Selectivity and Cost Estimates in Query Optimization ✥
-
15.10
- Semantic Query Optimization ✥
-
16
- Physical Database Design and Tuning ✔
-
17
- Transaction Processing Concepts ✔
-
18
- Concurrency Control Techniques ✔
-
19
- Database Recovery Techniques
-
19.1
- Recovery Concepts ✔
-
19.2
- Recovery Techniques Based on Deferred Update ✔
-
19.3
- Recovery Techniques Based on Immediate Update ✔
-
19.4
- Shadow paging ✔
-
19.7
- Database Backup and Recovery from Catastrophic Failures ✔
-
20
- Concepts for Object-Oriented Databases ✔
-
21
- Object Database Standards, Languages, and Design
-
21.1
- Overview of the Object Model of ODMG ✔
-
21.2
- The Object Definition Language ODL ✔
-
21.3
- The Object Query Language OQL ✔
-
22
- Object Relational and Extended Relational Database Systems
-
22.1
- Overview of SQL and its Object-Relational Features ✔
-
22.2
- Evolution and Current Trends of Database Technology ✔
-
22.4
- Object-Relational Features of Oracle 8 ✥
-
22.5
- Implementation and Related Issues for Extended Type Systems ✥
-
22.6
- The Nested Relational Model ✥
-
23
- Database Security and Authorization ✔
5.2 Online Materials
There web site for the course is located at
The following materials may be found on these pages.
- This syllabus, in both PDF and HTML.
- The lecture slides for the course.
- Descriptions of the obligatory exercises.
- Information on auxiliary software, such as the Leap database system.
- Sample programs and other aids for ODBC.
- Miscellaneous links to database-related things.
- Some official documents required by the Department of Computing Science.