From mboxrd@z Thu Jan 1 00:00:00 1970 To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> In-reply-to: Your message of "Thu, 17 Jul 2014 15:10:34 EDT." References: <2cd3d3a808e9d61fc89f920f0954745f@eonet.ne.jp> <1cd7faec083da0c4468343b048db7ddc@ladd.quanstro.net> <33E5CFC9-B6F3-49F4-90F6-2674A96745CE@bitblocks.com> <20140717190129.81607B827@mail.bitblocks.com> Date: Thu, 17 Jul 2014 12:26:43 -0700 From: Bakul Shah Message-Id: <20140717192643.113D7B827@mail.bitblocks.com> Subject: Re: [9fans] file server speed Topicbox-Message-UUID: 05318378-ead9-11e9-9d60-3106f5b1d025 On Thu, 17 Jul 2014 15:10:34 EDT erik quanstrom wrote: > > So long as a server returns a block corresponding to its SHA1 > > score, you (the client) don't care whether it is the same > > server you wrote the original block to or another (and you can > > always verify the returned block). This opens up some > > but this isn't unique to content-addressed storage. as long > as the block contents are the same, normal block storage can > be served from anywhere. But this is a much stricter requirement for normal block storage (every replica has to have the same content for a given block number N and if you have disks of different sizes, you either waste storage or have to add another mapping layer). With CAS you have much more freedom. > > interesting choices. For instance, you can multicast each read > > or write or you can set up a hierarchy of servers and switch > > to another one (or even get different blocks from different > > instances). How the writes are handled/replicated.stored is > > entirely upto the server (cluster). Or you can implement a > > bittorrent like facility on top of venti (I call it bitventi > > or b20). > > why not distributed hashing? distributed hashes have existing > fast implementations. venti does not. You can change implementations. Russ's "ventino" and Lucho's govt's "vtmm" server use different storage schemes from plan9's venti server. I am just playing with this stuff but if you want clustered, distributed storage you'd probably need some server side protocol to manage storage sanely. And add more complications if you want to improve performance.