Description
"Having lots of data is useless unless you know how to make sense of it and how to apply what you learn."
- Stephen Few
This course explores the internal design and construction of data management systems such as RDBMSes, Document Databases, and Consistent Data Stores. Students will be exposed to topics from the mathematical foundations of database theory, all the way through the implementation of those concepts in a practical setting.
By the end of the course students are expected to understand...
* ... the relational model, relational algebra, and the use of equivalencies to create a search space of potential query plans.
* ... the design and application of organizational datastructures including indexes, and paged files.
* ... the design and application of IO-aware algorithms and datastructures, including out-of-core and distributed data management techniques.
* ... techniques for data management in parallel and distributed settings.
- Stephen Few
This course explores the internal design and construction of data management systems such as RDBMSes, Document Databases, and Consistent Data Stores. Students will be exposed to topics from the mathematical foundations of database theory, all the way through the implementation of those concepts in a practical setting.
By the end of the course students are expected to understand...
* ... the relational model, relational algebra, and the use of equivalencies to create a search space of potential query plans.
* ... the design and application of organizational datastructures including indexes, and paged files.
* ... the design and application of IO-aware algorithms and datastructures, including out-of-core and distributed data management techniques.
* ... techniques for data management in parallel and distributed settings.
General Information
Project Management Site
Lecture Location
Knox 20; Monday/Wednesday 5:00-6:20
Academic Integrity Policy
You are expected to submit only work that you have performed yourself (or with your group for group projects).
You may **discuss** approaches, strategies, and techniques with classmates. Describing the general strategy that you/your group took to solve a problem is ok. Websites like Wikipedia, which discuss only concepts are ok.
You may **not** share solutions or code. Letting someone "look at your code" is not ok. Websites like StackExchange, where code is shared are not ok.
Violators will fail the class.
If a violation occurs on a group project, the entire group will be penalized. If someone else submits your work as their own, you will be penalized as well.
You may **discuss** approaches, strategies, and techniques with classmates. Describing the general strategy that you/your group took to solve a problem is ok. Websites like Wikipedia, which discuss only concepts are ok.
You may **not** share solutions or code. Letting someone "look at your code" is not ok. Websites like StackExchange, where code is shared are not ok.
Violators will fail the class.
If a violation occurs on a group project, the entire group will be penalized. If someone else submits your work as their own, you will be penalized as well.
Name | Office Hours | |
---|---|---|
Oliver Kennedy | When? Where? | |
Niccolo' Meneghetti | When? Where? | |
Shounak Gore | When? Where? | |
Vishrawas Gopalakrishnan | When? Where? |
Homework
Homework
Due Date
May 7, 2014
Apr 23, 2014
Apr 9, 2014
Mar 31, 2014
Mar 5, 2014
Feb 17, 2014
Feb 5, 2014