Advanced DB
Advanced DB
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 system, distributed databases,
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 Goals or Learning Outcomes: By the end of this course, students will be able to:
1. Describe the main concepts of the OO model such as object identity, type constructors,
Encapsulation inheritance, polymorphism, and versioning
2. Evaluate a set of query processing strategies and select the optimal strategy. Know the
basics of transaction management and concurrency control
3. Understand database security.
4. Use different recovery methods when there is a database failure
5. Design a distributed database system in homogenous and heterogeneous environments
Content:
Chapter One : Concepts for Object-Oriented Databases
1.1. Overview of Object-Oriented Database Concepts
1.2. Features of Object Oriented Database
1.3. Object Identity, Object Structure, and Type Constructors
1.4. Object oriented Vs ER model components
1.5. Object-Oriented Database Advantages and Disadvantage
Chapter Two: Query processing and Optimization
2.1. Basic Algorithms for Executing Query Operations
2.2. Translating SQL Queries into Relational Algebra
2.3.Techniques for implementing query optimization
2.3.1. Heuristic in Query Optimization
2.3.2. Semantic Query Optimization
2.4. Using Selectivity and Cost Estimates in Query Optimization
Chapter Three: Transaction Processing Concepts
3.1 Introduction
3.2 Transaction and System Concepts
3.3 Properties of Transaction
1|Page
3.4 Schedules and Recoverability
3.5 Serializability of Schedules
3.6 Transaction Support in SQL
2|Page