Project Overview
The goal of the course project is to have you explore in greater detail some
aspect of the design or use of database systems. The choice of project is
yours, but it does need to be approved. You may work individually or in pairs.
The project may be primarily experimental -- the implementation and evaluation
of some technique -- or it may be primarily in-depth literature research of the state-of-the-art of an area within databases.
Here are some suggestions. You may choose one or use them as guides to
specifying your own project.
- In past offerings of COS425, the same project was done by all
students. It was the implementation and evaluation of
the main query optimization algorithm. A detailed specification of
that project can be found in the
COS 425 spring 2001 project description.
- Implement the main file organizations and index structures that we
have studied: sorted files,
B+ trees, linear hashing and extensible hashing. Design workloads of
inserts, deletes and searches to study the performance of these
organizations in detail. This project involves determining how
one should model workloads as well as getting data on the performace of
the storage and indexing methods.
- Implement an application that requires database support. Implement the
user interface, the application interface to the database and the database.
This application needs to have some complexity in functionality, constraint
maintenance, reliability or user interface. The application should be
something in which you are interested and for which you can obtain or
generate a reasonable set of interactions and data for testing.
(See Chapters 6 and 7 of our text (Raghu Ramakrishnan and Johannes Gehrke, Database
Management Systems, Third Edition), for a discussion
of "application development".)
- Extensible Markup Language(XML) is being promoted
as more than an enhanced markup language. It can indicate structure and
semantics for a document. A lot of work is being done which considers
XML as specifying
a semistructured data model and develops query languages for XML
documents. This is presented in Chapter 27 of our text, which we will
discuss in class.
However, many details are not covered in the text. Explore some aspect of
XML as a database language. Possibilities:
- Read the current research papers on XML models and query languages.
Compare and constrast techniques. What are the performance gains and losses
over using a conventional relational model?
- Choose one XML query languages and show how to develop a specific
application where information is contained in XML documents and accessed using
queries in the language chosen. Develop specific sets of queries and
document sets to illustrate your application. Ideally, you could find
free software implementing the query language. Short of this, you can
create the documents and simulate the results of a general implementation of
the query language.
- Database techniques and systems exist for special kinds of data.
For example, Chapter 28 of our text presents techniques for spacial (geometric)
data. Your project may focus on techniques for a special kind of
data. Possibilities include:
- Select an example of a special kind of data other than spacial
data and write a review
paper describing the important techniques and issues, with references.
- Implement and evaluate an important method for specialized data,
e.g. multidimensional indexing (see Section 28.3 of our text).
Important note:If you are a graduate
student and wish to satisfy your programming requirement with the
COS 425 project, you must choose an implementation project, and you must
notify me in advance that you want to use the project to satisfy the
requirement.
Requirements
Each individual or pair must submit by Dean's date
a report that describes
your project. This must
include the goals of the project, your methodology and the results. If it
is an experimental project, you need to describe what was implemented,
the major implementation decisions, how you designed the experiments,
and the experimental results. Your code should
be in an appendix. If it is a literature-based project, you need
to describe the major issues under study, summarize the major techniques
and experiments and critically analyze the results. You
must have a bibliography that includes recent research.
Each individual or pair must meet with Professor LaPaugh after the project
report is submitted for a project demonstration (where applicable) and
discussion.
Projects will be graded on thoroughness and depth of analysis. Difficulty
will be taken into consideration.
Keep in mind that evaluation is an important part of any
project. Be clear on the goals of your project and how you demonstrate or
measure success.
A.S. LaPaugh
Thu Mar 27 17:51:12 EST 2003