UWT/TCSS 509C- ADVANCED DABASE SYSTEMS.
Autumn 2011

Instructors: Mohamed Ali, Ph.D.
Location: PNK 131
Class sessions:
Thursday - 5:00- 9:20 pm

Course Overview:

This course is an advanced level course in database systems. The course has two main themes: First, the course covers some of the internals of a database system. Second, the course explores some of the current topics or trends in database research. The objective of the course is to give the student a first step towards a career in database systems programming and to broaden the scope of the student to appreciate the importance and the impact of newly emerging database trends.

Prerequisites:

TCSS 445 or equivalent database systems design experience at work or at internships. You should be proficient in basic database system implementation techniques. We also recommend that all students have prior experience with programming languages such as C/C++/C#/Java. Students with no programming experience should not take this course.

Readings:

The class mainly adopts the following textbook:

“Readings in database systems By Michael Stonebraker” [4th edition]

Also, links to supplementary readings will be made available on Moodle during the term. Please bring your readings to each class session so that you can refer to them during discussion. We will use a set of research papers. Your mentors or instructor may assign specific readings to individual students.

 

Course Content:

Week #

Topic

Paper/ Project presentation

1

Data Models and DBMS Architecture

Data Models

 

 

Anatomy of a Database System

 

 

 

2

Query Processing

Access Path Selection in a Relational Database Management System

 

 

Join Processing in Database Systems with Large Main Memories

 

 

Parallel Database Systems: The Future of High Performance Database Systems

 

 

 

3

Distributed Query Optimization

Encapsulation of Parallelism in the Volcano Query Processing System

 

 

R* Optimizer Validation and Performance Evaluation for Distributed Queries

 

Data Storage and access methods

The R*-tree: An Efficient and Robust Access Method for Points and Rectangles

 

 

Multidimensional indexing demo http://donar.umiacs.umd.edu/quadtree/

 

 

 

4

 

Operating System Support for Database Management

 

 

The Five-Minute Rule Ten Years Later, and Other Computer Storage Rules of Thumb

 

Transaction management

Granularity of Locks and Degrees of Consistency in a Shared Data Base

 

 

On Optimistic Methods for Concurrency Control

 

 

 

5

 

A Case for Redundant Arrays of Inexpensive Disks (RAID)

 

 

Efficient Locking for Concurrent Operations on B-Trees

 

 

The Dangers of Replication and a Solution

 

Extensibility

Inclusion of New Types In Relational Data Base Systems

 

 

Visualization of various query optimizations and query plan alternatives using the SQL Server management studio

 

 

 

6

Extensibility

Generalized Search Trees for Database Systems

 

Data Evolution

AutoAdmin “What-if” Index Analysis Utility

 

 

Applying Model Management to Classical Meta Data Problems

 

 

The Predator object relational system

 

 

 

7

Data Warehousing

An Overview of Data Warehousing and OLAP Technology

 

 

Improved Query Performance with Variant Indexes

 

 

DataCube: A Relational Aggregation Operator Generalizing Group-By, Cross-Tab, and Sub-Totals

 

 

An Array-Based Algorithm for Simultaneous Multidimensional Aggregates

 

Data mining

Tutorial of the Microsoft SQL Server Analysis Services

 

 

 

8

 

BIRCH: An Efficient Data Clustering Method for Very Large Databases

 

Web Services and Databases

Combining Systems and Databases: A Search Engine Retrospective

 

 

Querying Semi-Structured Data

 

 

No SQL Databases

 

 

Tutorial of the Microsoft SQL Server Spatial Library

 

 

 

9

Stream-based systems

An Overview of Data Stream Query Processing

 

 

An overview of Database Security

 

 

An Overview of Microsoft StreamInsight  Input Adapter/ Output Adapter/ Query Language/ Extensibility model and Event Flow Debugger

 

 

 

10

Cloud based databases

Towards a Benchmark for the Cloud

 

 

Building a database on S3

 

 

Incorporating Partitioning and Parallel Plans into the SCOPE Optimizer

 

 

Map Reduce Architecture

Project list:

Category A: Deep dive in a research paper

1.       Join Processing in Database Systems with Large Main Memories, Leonard D. Shapiro

2.       Granularity of Locks and Degrees of Consistency in a Shared Data Base

3.       DataCube: A Relational Aggregation Operator Generalizing Group-By, Cross-Tab, and Sub-Totals

4.       No SQL Datbases

5.       An overview of Database Security

6.       Map Reduce Architecture

                Category B: Technology demo

1.       Visualize various query optimizations in the SQL Server management studio

2.       Multidimensional indexing demo http://donar.umiacs.umd.edu/quadtree/

3.       The Predator object relational system: http://www.cs.cornell.edu/Info/Projects/PREDATOR/predator.html

4.       Tutorial of the Microsoft SQL Server Analysis Services

5.       Tutorial of the Microsoft SQL Server Spatial Library

6.       An Overview of Microsoft StreamInsight  Input Adapter/ Output Adapter/ Query Language/ Extensibility model and Event Flow Debugger