jeremiah.peschka at gmail.com
Tue Mar 22 13:49:20 EDT 2011
As an aside about RAID 10:
If you have a decent RAID controller, you may get reads that are 2x as fast because the controller will read from both stripes at the same time. It's not just a redundancy issue: it's also fast. Like a cheetah. On meth.
RAID 10 will really improve performance if you're doing a lot a map reduce queries that iterate across an entire bucket. Not sure if it makes any difference, but RAID 10 is the best practice for drive configuration in the data warehouse world for that very reason: scans become stupidly fast.
Microsoft SQL Server MVP
MCITP: Database Developer, DBA
On Tuesday, March 22, 2011 at 10:10 AM, Greg Nelson wrote:
> Thanks for all the responses!
> Regarding RAID 10, I think for now that's out because we can't afford to cut storage capacity in half when we're already using 2-3x for Riak level redundancy. And adding more redundancy at the RAID layer just seems... incorrect.
> Running multiple instances on each box is probably not an option either since -- as Luke pointed out -- we risk storing N replicas of an object on one machine. And given that we're considering something like 12 or even 24 disks per machine, we can't realistically make N larger than that.
> RAID 5 seems like it may be a decent option, as we'd only lose out on the capacity of one drive. e.g., if we had 12 1TB disks per machine we'd get 11TB of capacity per machine. Of course, we need to consider the failure rates with that many disks in RAID 5 and whether that sufficiently addresses the problem of exposing each machine to a higher surface of failure. But again, we can lose a node -- that's what Riak is for! We also need to investigate the write performance of such a setup; that said, even though we have a write-heavy application, we'll probably not be that write-heavy.
> Joseph: your patch looks interesting, as that's exactly what I first thought of. I figured the directories under the main storage dir corresponded to partitions. I'll definitely give your code a looksy. One thing that immediately jumped out at me is: what happens when a disk fails? Does the handoff mechanism really work seamlessly there? Or is the assumption that a failure can only happen at the node layer (rather than subsets of vnodes within a node) baked into the fundamental design of Riak?
> On Tuesday, March 22, 2011 at 8:53 AM, Alexander Sicular wrote:
> > Ya, my original message just highlighted the standard 0,1,5 that most people/hardware should know/be able to support. There are better options and 10 would be one of them.
> > @siculars on twitter
> > http://siculars.posterous.com
> > Sent from my iPhone
> > On Mar 22, 2011, at 8:43, Ryan Zezeski <rzezeski at gmail.com> wrote:
> > >
> > >
> > > On Tue, Mar 22, 2011 at 10:01 AM, Alexander Sicular <siculars at gmail.com> wrote:
> > > > Save your ops dudes the headache and just use raid 5 and be done with it.
> > > >
> > >
> > > Depending on the number of disks available I might even argue running software RAID 10 for better throughput and less chance of data loss (as long as you can afford to cut your avail storage in half on every machine). It's not too hard to setup on modern Linux distros (mdadm); at least I was doing it 5 years ago and I'm no sys admin.
> > >
> > > -Ryan
> > _______________________________________________
> > riak-users mailing list
> > riak-users at lists.basho.com
> > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> riak-users mailing list
> riak-users at lists.basho.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the riak-users