Hi Jon,

Thanks for your response. Unfortunately it is not as simple as that... in this 
particular case, I have a large dataset of predefined objects (with ranges 
already defined). I then need to perform the lookups given specific values.

Unfortunately the ranges are not uniform e.g. domain object 1 may be from 
1000-2000, and domain object 2 may be from 2001 to 2002 etc. The ranges do not 
overlap, but the fact that they aren't uniform makes this problem
slightly more difficult (i.e. I cannot clamp / round my value down since I 
don't have a fixed / uniform difference. In some cases the differences between 
startval and endval may be 0 or 1 or as high as 50 million).


________________________________
 From: Jon Meredith <[email protected]>
To: Y N <[email protected]> 
Cc: "[email protected]" <[email protected]> 
Sent: Monday, August 19, 2013 5:34 AM
Subject: Re: 2i, search or something else for most efficient "range" lookup
 


How can you guarantee it's only a single object you'll find? 

If you know an event happens every X minutes but don't know the exact 
start/stop times, you could truncate the startVal/endVal to the level of 
precision you need, hit that directly first and probe either side if you don't 
find it.


If I went with a design like that I'd make it so that I could store an array of 
readings under the key to tolerate timing issues, or to allow you to update 
your collection rate.

Jon





On Fri, Aug 16, 2013 at 6:00 PM, Y N <[email protected]> wrote:

Hi,
>
>
>I have a question regarding the most efficient way to perform a search / 
>lookup for something. This isn't a typical range lookup (where you want to 
>find all objects given a specific range). In this case I want to find
>a specific object where a lookup value falls within that objects range.
>
>
>My use case is as follows.... I have the following domain object:
>
>
>MyObj
>startVal (long / number)
>endVal (long / number)
>..... (other data)
>
>
>I need to perform many lookups where I need to find a specific domain object 
>given a long value that falls within startVal & endVal (inclusive).
>
>
>What would be the most efficient way to do this in Riak? I can't think of a 
>way I could do this via directly lookup, so that only leaves me with 2i and 
>search as possible options. 
>They seem a bit like overkill, since in this case I am only interested in 
>getting back a single object... but there doesn't see to be any other way to 
>do this.
>
>
>Would 2i or search be the most efficient / least impactful way to perform this 
>type of search?
>
>
>
>Thanks.
>
>
>_______________________________________________
>riak-users mailing list
>[email protected]
>http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>
>


-- 
Jon Meredith
VP, Engineering
Basho Technologies, Inc.

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

Reply via email to