DistOS 2014W Lecture 14
OceanStore
What is the dream?
- High availabitility, universally available.
- Utility managed by multiple parties
- Highly redundant, fault tolerant
- Basic assumption was that servers would NOT be trusted.
- Highly persistent
- Effective archival
- Everything saved, nothing deleted. "Commits"
- Service was untrusted
- Held opaque data.
- Would be used for more than files. DB's, etc.
Why did the dream die?
Technology
- The trust model is the most attractive feature which ultimately killed it.
- The untrusted assumption was a huge burden on the system. Forced technical
limitations Made them uncompetitive.
- It is just easier to trust a given system
- Every system is compromisable despite this mistrust
- Pub key system reduces usability
- If you loose your key, you're S.O.L.
Use Cases
- Subset of the features already exist
- Black berry. Google.
- Current services owned by one company, not many providers.
- Can not sell back your services as a user.
- ex. Can not sell your extra storage back to the utility.
Pond: What insights?
- They actually built it.
- Can't assume the use of any infrastructure, so they rebuild everything!
- Built over the internet.
- Tapestry
- GUID for object indentification. Object naming scheme.
Benchmarks
- Really good read speed, really bad write speed.
Storage overhead
- How much are they increasing the storage needed to implement their storage model.
- Factor of 4.8x the space needed (you'll have 1/5th the storage)
- Expensive, but good value (data is backed up, replicated, etc..)
Update performance
- No data is mutated. It is diffed and archived.
- Creating a new version of an object and distributing that object.
Other stuff
- Byzantine fault tolerance
- Assuming certain actors are malicious