[Announcements | Schedule and Readings | Assignments and Quizzes | Syllabus/Policies ]

Reading Questions, Lecture 16 (11/8)

Papers: Combining Systems and Databases: A Search Engine Retrospective, Data Management in Application Servers"

These papers talk about how databases relate to two commonly used systems on the Web: search engines and application servers. The papers should be easy reading and present an interesting overview of the novel issues involved in Internet services, highlighting the ways in which the traditional database ideas we have studied do and do not address those issues.

As you read the papers, consider the following questions:

  1. In the "Search Engine Retrospective", what features of database systems does the author recommend that designers of search engines adopt? Why?
  2. What does he claim are the primary differences between search engines and databases? What issues do search engine designers not have to worry about that database designers often focus on?
  3. What is the CAP theorem?
  4. In the "Application Servers" paper, what does the author describe as the role of the database system in a web service? Is all system state stored in the database? Why or why not?
  5. What is the purpose of the "Application Server Persistence Layer" described in Section 5?
  6. Both of these papers talk about fault-tolerance as a core component of their systems. How do the approaches for providing fault tolerance differ? What kinds of failures can the two systems tolerate? What consistency guarantees are provided in the face of failures?

Samuel Madden (madden at csail dot mit dot edu)
Last modified: Sat Nov 6 18:21:24 EST 2004