Project Proposal
DUE WEDNESDAY, OCTOBER 2 AT 11:59PM.
Table of contents
Overview
The course project offers an opportunity to gain hands-on database experience aligned with your interests and background. The projects typically fall into one of the following categories:
- Novel database applications
- Implementation and improvement of some aspects of a database system
- Benchmarking of database management systems or components
Use the LaTeX template for the proposal here.
Team Composition
You will work in teams of 3-4 people. Smaller or larger teams require instructor approval. Use Piazza to form groups early.
Evaluation Criteria
The project will be evaluated based on the following criteria:
- Overall effort
- Project difficulty and approach
- Completeness of design and implementation
- Novelty and exploration of new database techniques
The team-size will be considered in setting the expectations.
Important Notes
- You are highly encouraged to discuss project ideas with the instructor and/or TAs before submission.
- Your project proposal is a starting point and not binding.
- The project must have a substantial database component. Using a public dataset + some ML libraries would not be sufficient.
- Choose a challenging project that showcases your skills and ambition. An underscoped project could negatively affect your grade.
Example Projects
We have provided some example project ideas to get you started. You can also find a sample of past projects under “Files->Sample Projects” on canvas.
Application Projects
Note that for all application projects, we expect meaningful interaction with the database, such as CRUD operations, complex queries, or transactions.
- Medical or bioinformatics applications using a DBMS
- An engineering information system prototype application using mechanical, electrical or architectural design data
- Analytical applications using graph DBMS (e.g., Neo4j)
- Analytical applications combining multiple sources (e.g., Twitter, product data, geographic data, weather data, political data)
Database and Component Projects
- Implementing ideas from a published paper (e.g., query optimization, indexing schemes).
- File access or indexing schemes for specialized databases (temporal, image, text)
- Databases for virtual reality with appropriate functionality
- Implementing some aspect of a geographic data management system – e.g., a path finder with multiple constraints linked to a map
- Image databases with content-based or descriptor-based querying
- Web-based unstructured data querying engine
- Software documentation, annotation, and change management systems
- Query translation between different database models/systems
- Mini-DBMS implementation with restricted capabilities or high-level interface to relational DBMS (students have done this to implement the EER model, or to make it easy to write SQL queries, etc.)
Benchmark Projects
- Replicate some results from a benchmark paper. For example,
- Comparative study of NoSQL database systems (e.g., REDIS, MongoDB, Cassandra)
- Comparative study of autonomus (self-driving) databases
- Comparative study of vector database systems (e.g., pinecone, Milvus, pgvector)
Note: For suggestions on implementing ideas from published papers or replicating benchmark results, please consult with the instructors or TAs.
Submission and Grading
Submit a PDF with your project proposal on canvas. Only one submission is required per group.
This assignment is worth 5% of your grade. We will evaluate on the basis of clarity of this report, completeness of the design and overall description of the approach taken.