Comp150CPA: Clouds and Power-Aware Computing
Classroom Exercise 11
Service-Oriented Datastores
Spring 2011

group member 1: ____________________________ login: ______________

group member 2: ____________________________ login: ______________

group member 3: ____________________________ login: ______________

group member 4: ____________________________ login: ______________

group member 5: ____________________________ login: ______________

In class we have studied how to think of a cloud application as a service, including choices for front-facing cloud datastores. Let's explore that in more detail.

  1. What is the CAP class of a database server running on a single machine? Why?

  2. Is there a reasonable use for cloud datastores in CAP class CA? What might it be?
  3. I claimed in lecture that LinkedIn stores the results of a Pig job in a NoSQL datastore. For assignment 4, what is the key in this datastore, and what is the value?

  4. In Amazon Dynamo, the datastore key for shopping cart contents is the content of a cookie stored locally in your browser. Suppose that one user opens two instances of a shopping cart in two panes of the same browser, and proceeds to update each one by deleting a different item. Draw a picture showing why this is a conflict in the vector clock algorithm. Then describe what the vector clock algorithm might do to resolve this situation, to business advantage.

  5. (Advanced) A key feature of Amazon's Dynamo is what is called "business-logic based recovery". If a server is lost during a post, so that the database is in an inconsistent state, consistency is restored according to business rules rather than computer science concepts. What are the appropriate business rules for merging versions of a purchase transaction, or a return authorization? Why?