To clear up this confusion, let me spell it out. The hash value of any 
bucket/key pair is the SHA1 of the serialized tuple of {Bucket, Key}. That is, 
{Bucket, Key} -> term_to_binary -> sha1.

The actual function that does the hashing:

https://github.com/basho/riak_core/blob/master/src/chash.erl#L140

The helper function that most riak_core applications use:

https://github.com/basho/riak_core/blob/master/src/riak_core_util.erl#L160

An example of usage in the Get FSM:

https://github.com/basho/riak_kv/blob/master/src/riak_kv_get_fsm.erl#L70

Sean Cribbs <[email protected]>
Developer Advocate
Basho Technologies, Inc.
http://basho.com/

On Jan 10, 2011, at 7:36 AM, Jeremiah Peschka wrote:

> I believe that keys hare hashed using a combination of bucket name and key 
> name. The bucket+key string is then run through SHA1. Don't take that as 
> gospel, though. I searched my mailing list archive and couldn't find it, but 
> this also could have happened on the IRC channel. Hopefully someone who knows 
> the source can point you in the right direction.
> 
> Until then, you can safely assume that the hashed key is the result of 
> SHA1(bucket_name + key_name). You should be able to determine if they're on 
> the same node by hashing both bucket/key combos and then looking at the ring. 
> Take a look at 
> http://wiki.basho.com/Replication.html#Routing-an-object-to-a-set-of-partitions
>  for more info on looking at the state of the ring.
> 
> Jeremiah Peschka
> Microsoft SQL Server MVP
> MCITP: Database Developer, DBA
> 
> 
> On Mon, Jan 10, 2011 at 3:42 AM, 吴磊 <[email protected]> wrote:
> Hi, guys
> 
> I'm a newbie to Riak,  I have the question. Will the objects, which in
> different buckets but have the same key, be stored in the same vnode
> and be managed by this vnode?
> 
> Best regards,
> 
> _______________________________________________
> riak-users mailing list
> [email protected]
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> 
> _______________________________________________
> riak-users mailing list
> [email protected]
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to