David Manura

CSE-498 (Adv Networks)

2003-01-28

 

OceanStore: An Architecture for Global-Scale Persistent Storage—A Review

 

The paper “OceanStore: An Architecture for Global-Scale Persistent Storage” proposes an architecture for a global, durable, and highly available persistent storage network composed of untrusted servers.  Data can migrate and replicate to where it is most needed, thereby having similar benefits to caching.  For security, all stored data in encrypted.  A type of routing mechanism is needed on top of IP to locate OceanStore data, and this is achieved by two methods: an attenuated Bloom filter (i.e. a vector of Bloom filters per node, where each element locates objects at a given graph distance) and, if the previous method fails, a highly redundant version of the Plaxton scheme. Various error-correcting schemes are also used.  The network supports a type of introspection, in which the network can automatically tune itself to network conditions.  In addition to providing local access to global data, the system is a guard against natural disasters and denial-of-service (DOS) attacks.

 

The solution proposed is based on many previous ideas such as the Bayou system, but extensions and aggregations of ideas are provided.  The so-called “deep archival storage” is indeed one way to provide the redundancy much desired by network providers and consumers of today.  However, on the downside, the provided solution is rather complication and unproven.

 

Performance is essentially unproven.  Little evidence is provided that the system can perform efficiently, and this is especially a problem given that performance is one problem that the system is intended to solve.  It is unclear whether the added load on the network caused by the routing and redundancy will overshadow the benefits of local data.  Broder and Mitzenmacher,2 in their review of Bloom filter applications, indicate that there is a major challenge in keeping such Bloom filters up-to-date without generating excessive network traffic.

 

The economic model is unconvincing as defined.  The authors suggest that a collection of companies will host OceanStore servers, and consumers will buy capacity (not unlike web-hosting of today).  However, user data can be stored anywhere, and companies will also buy and sell capacity among themselves.  The mechanism for doing this is not given.  Can anyone host a OceanStore server?

 

Security issues remain.  What if a key is compromised?  Since information is globally accessible, not under local physical control, such a breach might not be easy to extinguish.  Local logs of data access cannot be maintained either—one never knows who is accessing one’s data.

 

Finally, this model apparently is best for distributing static, not dynamically generated data, and data consistency presents problems.

 

In summary, the paper presents an interesting combination of ideas, and a similar solution could prove useful, but these ideas have yet to be demonstrated effective on a significant scale.

 

[1] Kubiatowicz, J. et al.  “OceanStore: An Architecture for Global-Scale Persistent Storage.”  In Proceedings of the Ninth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2000).

 

[2] Broder, A., Mitzenmacher, M.  “Network Applications of Bloom Filters: A Survey.”  http://www.arl.wustl.edu/~lockwood/class/cs6812/network-applications-of-bloom.pdf