Module 7 · Beyond the relational core · Activity 25 of 32

Lecture 19: NoSQL

Lecture notes · Carlo Curino

Readings and discussion questions

Read:

Chang, Fay, et al. “Bigtable: A Distributed Storage System for Structured Data.” OSDI, 2006. (PDF)

Bigtable is a storage system for structured data; it is essentially a compressed, horizontally partitioned, column-oriented database with some interesting properties that allow it to reach “web scale”.

As you read the paper, consider the following questions:

  1. In what ways does Bigtable replicate the behavior of a relational database? How is it different?
  2. Could Google have built Bigtable using a relational system? Would that have been a good idea? Why or why not?
  3. What consistency guarantees does Bigtable provide in the face of failures?
  4. What is a distributed lock service?

Assigned by MIT for this session; links go to the papers where MIT linked them. Books: Readings in Database Systems (the Red Book, 4th ed.) and Ramakrishnan & Gehrke.

MIT OpenCourseWare, 6.830 Database Systems, Fall 2010, Prof. Carlo Curino and Prof. Michael Stonebraker. Licensed CC BY-NC-SA 4.0. Reorganized into modules by Sequence 106. No lecture videos were published for this course; each session is notes plus readings. Source · CC BY-NC-SA 4.0