CS 505                                 Final Exam Review
Spring, 2002

1. Relational Database Management Systems Fundamentals
Data Models (ER-model and Relational model)
Relational DBMS System Structure
Data Definition Language (Oracle PL/SQL)
Data Manipulation Language (Oracle PL/SQL)
Transaction Management
Relational Database Design (Assignment 1)
Relational Database Integrity and Security

2. Advanced Relational Database Query using Oracle PL/SQL (Assignment 2)
Advanced data queries using
    GROUP BY, HAVING, ORDER BY, Oracle built-in aggregate functions,
    user-defined functions, string operations, nested subqueries, table rename operations,
    set operations (UNION/INTERSECT/EXCEPT), double NOT EXISTS,
    cursor variables and loop statements, transaction operations (COMMIT/ROLLBACK/SAVEPOINT),
    and triggers.
Embedded SQL using Pro*C and Java (JDBC)

3. Relational Database Query Process
Basic query Steps (Parsing, Relational algebra expressing, Optimizing, Execution planning, and evaluating)
Measures of query cost (Selection and Join Operations only)
    Cost estimation (Block access)
    Query optimization
        Size estimation
        Equivalent expressions
        Transformation of relational expressions
        Heuristic optimization

4. Transactions and Concurrent process
ACID properties (Atomicity, Consistency, Isolation, Durability)
Transaction state diagram (Active, Partially committed, Failed, Aborted, Committed)
Concurrent schedule
Serializability (conflict serializability, view serializability)
Test for serializability
Concurrency control (Lock-Based Protocols - Two-Phase Locking)
Deadlock handling (Deadlock prevention and detection)

5. Other Database Systems
Object-oriented and Object-based databases
    Persistent-programming-language-based OODBs (Persistence of Objects)
    Object-relational systems (Nested Relations, Large Object Types)
Distributed databases (Homogeneous Databases)
    Replication and fragmentation
    Distributed transactions (two-phase commit protocol)
    Concurrency control (Distributed Lock Manager -Primary Copy, Majority Protocol,
                                    Biased Protocol, Quorum Consensus Protocol)
    Distributed query process (Semijoin Strategy)
Parallel databases
    Partitioning techniques (Round-robin, Hash partitioning, Range partitioning
    Interquery Parallelism (Cache coherency protocol)
    Intraquery Parallelism
        Intraoperation Parallelism (Fragment-and-Replicate Joins)
        Interoperation Parallelism (Pipelined parallelism)

6. Advanced Querying and Information Retrieval (Assignment 3)
XML (basic concepts)
OLAP (basic concept)
Data Warehousing (basic concept)
Data Mining (basic concept)