Review - Lessons from Giant-Scale Services

From: Jesse Pool <jesse.pool_REMOVE_THIS_FROM_EMAIL_FIRST_at_utoronto.ca>
Date: Sun, 18 Sep 2005 19:52:05 -0400

Giant-scale services allow users to organize and access resources from a
centralized location anytime, and from anywhere. These services also benefit
from a variety of interfaces, upgrade simplicity and typically low cost.
Because of the potential to serve many simultaneous requests, these services
must be able to manage load, particularly under less then ideal conditions.

This article presents several useful metrics for defining availability.
Treating failure as certainty, Brewer evaluates his definitions for
determining the best user experience. He asserts that organizations are able
to achieve the best return on investment by optimizing the mean time for
recovery of a failed component. He also notes that the yield and harvest
during a failure are determined by the load balancing paradigm (replication
vs. partitioning). However, data returned per query multiplied by the
queries per second should be relatively consistent, even under load or
failure.

A key weakness of this paper is its continuous fall back on smart-client
techniques. Brewer does not fully elaborate on the implementation or
functionality of these clients, nor where they are located. Smart-clients
may not be desirable in practice if they are located on a client system.
Here the user machine would need special knowledge the web-service, and the
system could lose its portability.

The concepts laid out by Brewer are, for the most part, simple, intuitive
and insightful. While scientific work is necessary in order to validate
these claims, his emphasis on measurable and predicable availability is
clear.
Received on Sun Sep 18 2005 - 19:52:16 EDT

This archive was generated by hypermail 2.2.0 : Sun Sep 18 2005 - 20:32:38 EDT