Presentation is loading. Please wait.

Presentation is loading. Please wait.

What is OceanStore? - 10^10 users with 10.000 files each - Goals: Durability, Availability, Enc. & Auth, High performance - Worldwide infrastructure to.

Similar presentations


Presentation on theme: "What is OceanStore? - 10^10 users with 10.000 files each - Goals: Durability, Availability, Enc. & Auth, High performance - Worldwide infrastructure to."— Presentation transcript:

1 What is OceanStore? - 10^10 users with 10.000 files each - Goals: Durability, Availability, Enc. & Auth, High performance - Worldwide infrastructure to give access to persistent data - Assumptions - Always online, fast connections (not a demand) - The network is untrusted (malicious hosts) - Hosts / routers can fail arbitrarily - Hosts constantly entering / leaving

2 What does Tapestry do for OS? Routing messages to nodes and objects Locating nodes and objects Publishing objects

3 OS Data Model - AGUID: Hash of name + owner’s public key - BGUID: Hash of data block - Data blocks (leaves) are read-only and shared between object versions - Updates creates new versions which enables Time travel - Fundamental data unit: the object - Objects are either active or archived

4 OS Actions (on objects) An application using OS could want to: –Store –Read the latest version –Read a previous version –Update (create new version)

5 How a client stores an object ”Disco.mp3”B98C5D… + PUK = AGUID A1F39B… 75DD2E…

6 How a client stores an object (2) 11 11 Disco.mp3 RN ”Disco.mp3 _”AGUID… RN ”Disco.mp3 _ _”AGUID… RN ”Disco.mp3 _ _ _”AGUID… RN ”Disco.mp3”AGUID Primary Replicas / Primary Tier / Inner Ring is chosen by a Responsible Party

7 Why have a primary replica? AGUIDLatest VGUID - AGUID  VGUID mapping: - Serialize concurrent updates: PR 1 2 3 - Access control: PRACL Reads: decryption key Writes: signed certificate - Consistency protocol for updates (Byzantine Agreement Protocol): 11 11 3f + 1 servers O(n^2) messages

8 How a client reads the latest version of an object ”Disco.mp3” CRN1 AGUID  VGUID Transfer blocks to client B98C5D… + PUK = AGUID C RN 1 2/3 of PR servers....

9 How a client reads a previous version VGUID n-1 VGUID n-2 AGUID … Deep Archival Storage Fragments created via Erasure Coding ….. VGUID 1 Fragments

10 Deep Archival Storage (Erasure Coding) ”Disco.mp3” m = 4n = 8 ….. Reconstruct block using m arbitrary fragments Rate of encoding r = m/n Increase in storage space: 1/r Tradeoff between performance and durability

11 Deep Archival Storage (2) Example: 1 million machines, 10% down, p = probability of finding a document: Replication p = 0.99 EC, m = 8, n = 16p = 0.99999 EC, m = 16, n = 32p = 0.9999999999…. (20000 nines)

12 Cached objects 11 11 2 2 2 22 2 C transfer - Old versions can also be cached - No consistency protocol - Soft state - Increase performance and avail., but only if the application requires a lesser degree of consistency - No serialization of concurrent updates - Known as Secondary Replicas

13 How a client updates an object

14 Example of an update

15 Example Applications Distributed backup –Extremely high durability –Time travel Groupware –Serialization of concurrent updates –Time travel Email –Serialization of concurrent updates –Encryption and authentication –No single point of failure –Caching of mails close to clients


Download ppt "What is OceanStore? - 10^10 users with 10.000 files each - Goals: Durability, Availability, Enc. & Auth, High performance - Worldwide infrastructure to."

Similar presentations


Ads by Google