0% found this document useful (0 votes)
10 views5 pages

Adavanced Database Course Outlie

The document outlines the course details for 'Advanced Database Systems' at Harambee University, including prerequisites, course objectives, and a comprehensive outline of topics covered such as query optimization, transaction management, and database security. It specifies evaluation methods, textbooks, and a laboratory course outline with weekly topics. The course aims to equip students with practical skills in database implementation and management.

Uploaded by

mikiwendiye92
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views5 pages

Adavanced Database Course Outlie

The document outlines the course details for 'Advanced Database Systems' at Harambee University, including prerequisites, course objectives, and a comprehensive outline of topics covered such as query optimization, transaction management, and database security. It specifies evaluation methods, textbooks, and a laboratory course outline with weekly topics. The course aims to equip students with practical skills in database implementation and management.

Uploaded by

mikiwendiye92
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

1

University: Harambee University


College/Faculty: Technology, Department of Computer Science
Course Title: Advanced Database Systems
Course Number (code): CoSc2042
Credit Hours: 3 ECTS: 5 Contact Hrs. 2hrs Laboratory: 3hrs Tutorial: 2hrs
Prerequisite: CoSc2041 Fundamentals of Database Systems

Year: III Semester I

Target Student List: Regular, Extension, and Weekend

Instructor: Elias M. (PhD candidate) Email: eliasmg664@gmail.com


Course description
this course deals with query optimization, transaction management, recovery and concurrency
control, database authorization, and security. Additional topics including object-oriented and
object-relational database systems, distributed databases, and integration may also be covered. A
major component of the course is a database implementation project using current database
languages and systems.

Course objectives
at the end of this course, students will be able to:
 Describe the main concepts of the OO model such as object identity, type constructors,
encapsulation inheritance, polymorphism, and versioning
 evaluate a set of query processing strategies and select the optimal strategy. Know the basics
of transaction management and concurrency control
 Understand database security
 Use different recovery methods when there is a database failure
 Design a distributed database system in homogenous and heterogeneous environments

1
2

Course outline
Chapter 1: Concepts for Object-Oriented Databases (2 hours)
1.1.Overview of Object-Oriented Concepts
1.2.Object Identity, Object Structure, and Type Constructors
1.3.Encapsulation of Operations, Methods, and Persistence
1.4.Type Hierarchies and Inheritance
Chapter 2: Query Processing and Optimization (4 hours)
2.1. Translating SQL Queries into Relational Algebra
2.2. Basic Algorithms for Executing Query Operations
2.3. Using Heuristic in Query Optimization
2.4. Using Selectivity and Cost Estimates in Query Optimization
2.5. Semantic Query Optimization
Chapter 3: Transaction Processing Concepts (6 hours)
3.1. Introduction
3.2. Transaction and System Concepts
3.3. Properties of Transaction
3.4. Schedules and Recoverability
3.5. Serializability of Schedules
3.6. Transaction Support in SQL
Chapter 4: Concurrency Control Techniques (6 hours)
4.1. Locking Techniques for Concurrency Control
4.2. Concurrency Control Based ON Timestamp Ordering
4.3. Multi-version Concurrency Control Techniques
4.4. Validation (Optimistic) Concurrency Control Techniques
4.5. Granularity of Data Items and Multiple Granularity Locking
4.6. Using Locks for Concurrency Control in Indexes
Chapter 5: Database Recovery Techniques (5 hours)
5.1. Backup and Recovery Concepts
5.2. Recovery Concepts Based on Deferred Update
5.3. Recovery Concepts Based on Immediate Update
2
3

5.4. Shadow Paging


5.5. The ARIES Recovery Algorithm
5.6. Recovery in Multi-Database Systems
Chapter 6: Database Security and Authorization (5 hours)
6.1. Introduction to DB Security Issues
6.2. Discretionary Access Control Based on Granting /Revoking of Privileges
6.3. Mandatory Access Control for Multilevel Security
6.4. Statistical DB Security
Chapter 7: Distributed Database System (4 hours)
7.1. Distributed Database Concepts
7.2. Data Fragmentation, Replication, and Allocation Techniques for Distributed Database
Design
7.3. Types of Distributed Database Systems
7.4. Query Processing in Distributed Databases

Evaluation Schemes
(This may vary on the number of students per class, but the general evaluation scheme is as
below)
Quiz 10%
Mid Exam 30%(individual assignment 15% and 15% group assignment)
Lab Evaluation(lab exam), and Project Work 20%
Final Exam 40%
Textbooks and References:
Textbook:
1.Raghu Ramakrishnan, Johannes Gehrke. Database Management Systems, McGraw-Hill; 3rd
edition, 2002
2. Elmasri, R., & Navathe, S. Fundamentals of database systems (7th Edition). Pearson. (2017).
References
1. Osama Mustafa, Robert P. Lockard. (2019). Oracle Database Application Security, Apress,
Berkeley, CA.
2. C. J. Date. (2019). Database Design and Relational Theory. 2nd Edition. Apress, Berkeley,
CA.

3
4

3. Anthony Hack. (2019). SQL Computer Programming for Beginners. Independently published

Laboratory Course Outline


Week 1: Introduction and Software Installation
1.1. (Microsoft SQL Server or Oracle DB)
Week 2: Object-Oriented Database
2.1. Object Identity
2.2. Object Query Language (OQL)
Week 3: Query Processing and Optimization
3.1. Query Execution Plan
3.2. Query Optimization
Week 4: Transaction Management
3.3. Basic Syntax of Transactions
3.3.1. What are Transactions
3.3.2. Beginning Transaction
3.3.3. Committing or Rolling Back
3.3.4. Creating Named Transactions
Week 5: Transaction Management
3.4. Making Use of Transactions
3.4.1. Conditionally Committing or Rolling Back
3.4.2. Transactions with Error Handlers
Week 6: Transaction Management
3.4.3. Automatic Rollback
3.4.4. Nested Transactions
Week 7: Transaction Management
3.4.5. Using Save-points
3.4.6. Transactions in Stored Procedures
Week 8: Concurrency Control Techniques
4.1. Locking
4.2. Timestamping
Week 9: Concurrency Control Techniques
4.3. Multi-version Concurrency Control

4
5

4.4. Locks for Indexes


Week 10: Database Recovery Techniques
5.1. Backup and Recovery Concepts
5.2. Backup
5.3. Recovery
Week 11: Database Security and Authorization
6.1. List the different Types of Accounts in SQL Server or Oracle DB
6.2. Explain the use of Server Roles
6.3. Demonstrate how to Grant and Deny Permissions
6.4. Describe Database Roles
6.5. Describe How to Work with Database Permissions
Week 12: Distributed Database
7.1. Distributed Database Concepts
7.2. Data Fragmentation
7.3. Replication
7.4. Allocation Techniques
7.5. Query Processing in Distributed Databases
Week 13: Triggers
8.1. Triggers
Week 14: Stored Procedures
8.2. Stored Procedures

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy