[tahoe-dev] [tahoe-lafs] #316: add caching to tahoe proper?
tahoe-lafs
trac at allmydata.org
Mon Aug 31 10:00:32 PDT 2009
#316: add caching to tahoe proper?
--------------------------+-------------------------------------------------
Reporter: warner | Owner: somebody
Type: task | Status: new
Priority: major | Milestone: undecided
Component: code | Version: 0.7.0
Keywords: vdrive cache | Launchpad_bug:
--------------------------+-------------------------------------------------
Comment(by swillden):
I think caching would be very valuable, even if only for immutable files.
If figuring out how to handle caching for mutable files would delay
implementation of immutable caching, I'd say to defer the mutable caching.
OTOH, caching of dirnodes would really be nice, if it could be done
safely. I think a cache with a fast timeout, as originally suggested,
would accomplish this almost as effectively and much more simply than a
pubsub mechanism, especially with a small adjustment: Don't delete the
"timed out" mutable caches. Instead, just make Tahoe check them by
looking to see if there's a newer version. For small mutable files,
that's probably not a big win over retrieving the latest, but it might
help a little, and would be a win for larger mutable files.
One other thought: You could trade off a little performance for some
security and, perhaps simplicity of implementation, by caching the file
shares under the SID, rather than the reassembled and decrypted file. You
could use a structure similar (identical?) to that used by storage servers
to store shares, and, in fact, the cache could even be a secondary source
for the storage server to get shares from, and even to deliver to other
peers that request them.
With that approach, retrieval of any file involves looking for shares
first in the local cache and storage directories. If there's not enough
local data to reconstruct the file, retrieve enough additional shares from
remote peers, keeping the downloaded shares in the cache, which could use
a typical LRU policy for replacement when it gets full.
--
Ticket URL: <http://allmydata.org/trac/tahoe/ticket/316#comment:5>
tahoe-lafs <http://allmydata.org>
secure decentralized file storage grid
More information about the tahoe-dev
mailing list