<div>
                    Refresh my memory, does leveldb open new files for each bucket? I'm thinking there may be some file descriptor penalty for this many buckets.
                </div><div><br></div><div>Otherwise you could set your default bucket properties to what you would want for these user buckets and then change properties if need be for a handful of other buckets you may need in your application.</div><div><br></div><div>Cheers,</div>
                <div><div><br></div> <br>Alexander Sicular<div>@siculars</div><div>http://sicuars.posterous.com</div><div><br></div></div>
                 
                <p style="color: #A0A0A8;">On Tuesday, November 15, 2011 at 12:17 PM, Kresten Krab Thorup wrote:</p>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div><div><div><br></div><div>On Nov 15, 2011, at 5:07 PM, Izhar Ravid wrote:</div><div><br></div><div>Assuming I wish to store user information for some 200M users, and create a bucket per user. Each user bucket will contain several dozen objects.</div><div>- Will list-keys on such a user bucket be a reasonable action?</div><div><br></div><div>When using leveldb as the backend, list-keys is isolated to a bucket.  As far as I can see, list_keys is a "blocking operation" meaning that a vnode doing list_keys can not respond to other requests while it is processing.  So; in this case ... using leveldb and ~dozens of keys per bucket it does sound reasonable.</div><div><br></div><div>- Is list-keys isolated to a bucket?</div><div>- Is it reasonable to expect Riak to hold 200M buckets?</div><div><br></div><div>I'd say that it depends on your need to configure bucket properties.</div><div><br></div><div>Riak stores bucket properties in "the ring", which is a riak cluster's distributed state management.</div><div><br></div><div>The ring is not designed to have 200M entries as far as I know; and if you need to set bucket properties then the ring needs to hold those values (if you use the default properties it requires no state).</div><div><br></div><div>So, ... the answer is probably no in this case; 200M buckets is not reasonable, because you will likely eventually want to define properties for these buckets.</div><div><br></div><div>Kresten</div><div><br></div><div><br></div><div>Kind regards,</div><div>Izhar.</div><div><br></div><div>_______________________________________________</div><div>riak-users mailing list</div><div>riak-users@lists.basho.com<<a href="mailto:riak-users@lists.basho.com">mailto:riak-users@lists.basho.com</a>></div><div><a href="http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com">http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com</a></div><div><br></div><div><br></div><div>_______________________________________________</div><div>riak-users mailing list</div><div><a href="mailto:riak-users@lists.basho.com">riak-users@lists.basho.com</a></div><div><a href="http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com">http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com</a></div></div></div></span>
                 
                 
                 
                 
                </blockquote>
                 
                <div>
                    <br>
                </div>