kpreid comments on Open thread, Mar. 23 - Mar. 31, 2015 - Less Wrong

6 Post author: MrMind 23 March 2015 08:38AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (181)

You are viewing a single comment's thread. Show more comments above.

Comment author: kpreid 06 April 2015 02:02:57PM 0 points [-]

Well, as iceman mentioned on a different subthread, a content-addressable store (key = hash of value) is fairly clearly a sort of naming scheme. But the thing about the names in a content-addressable store is that unlike meaningful names, they say nothing about why this value is worth naming; only that someone has bothered to compute it in the past. Therefore a content-addressable store either grows without bound, or has a policy for deleting entries. In that way, it is like a cache.

For example, Git (the version control system) uses a content-addressable store, and has a policy that objects are kept only if they are referenced (transitively through other objects) by the human-managed arbitrary mutable namespace of “refs” (HEAD, branches, tags, reflog).

Tahoe-LAFS, a distributed filesystem which is partially content-addressable but in any case uses high-entropy names, requires that clients periodically “renew the lease” on files they are interested in keeping, which they do by recursive traversal from whatever roots the user chooses.