Download presentation
Presentation is loading. Please wait.
Published byDevin Baulch Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.