|
From: Doug C. <cu...@ap...> - 2008-02-28 23:00:32
|
Yonik Seeley wrote: > Now if we addded 100 nodes (virtual nodes) per host in order to even > key distribution, only a single host will have all of the keys for a > node (defined as all of it's virtual nodes). > > HostA: indexA, big mix, big mix > HostB: indexB, big mix, big mix > HostC: indexC, big mix, big mix > HostD: indexD, big mix, big mix I'm assuming a 1:1 mapping between index and node. So if a host has 100 nodes on it, then it would have 100 indexes. I'm also imagining more like 4 nodes/indexes per host, not 100. Does that address your concern? A related issue is that we don't want to place nodes with overlapping ranges on the same host, since that would defeat the purpose of replication. The master must assign new nodes to the ring with this restriction. It should generally split the largest interval that's also distant from other intervals assigned to that host. On a tiny cluster it might refuse to add ranges if that would result in overlapping ranges on the same host, however this still might occur if hosts fail. Doug |