If you doing geo stuff you may want to take a look at the geo extension for 
couch db 
http://github.com/vmx/couchdb

Sounds like it may give you many if the features your thinking about out of the 
box. 

Aaron

On 20 Aug 2010, at 20:54, Jone Lura <jone.l...@ecc.no> wrote:

> Thank you for your effort.
> 
> Im pretty sure I will make it work.
> 
> Have a nice weekend!
> 
> On 20/08/2010 10:48, Thorvaldsson Justus wrote:
>> 
>> If you only want to check the last 5 min, make time a part of your key
>> And make a customized sort and sort by the time. Remember sort is made when 
>> inserting data. http://www.sodeso.nl/?p=421
>> Or make a range check that understands the time limit, should work I think 
>> from the top of my head.
>>  
>> But you don’t want a lot of small rows and also not to fat rows so..
>> Perhaps there is some time limit that could be rowed
>> And sc is long&lat and you can figure a way to make a range check on one of 
>> them if they arnt to many perhaps It would work.
>> /J
>> There are so many opportunities to model that you probably want to make 
>> several and test them
>>  
>> Från: Jone Lura [mailto:jone.l...@ecc.no] 
>> Skickat: den 20 augusti 2010 10:37
>> Till: user@cassandra.apache.org
>> Ämne: Re: SV: SV: Help with getting Key range with some column limitations
>>  
>> Thanks! Read your blog a few times, but it's hard to get rid of sql thinking.
>> 
>> So if I create a new standard ColumnFamily with a rowId and geohash a 
>> lat/lon into a UTF8Type, I could geohash the boundingbox, and query for all 
>> matching columns. Or do I always need to know the rowId to do a slicerange? 
>> I also need to only get the columns that are modified within last 5 minutes.
>> 
>> Jone
>> 
>> 
>> On 20/08/2010 10:05, Thorvaldsson Justus wrote:
>> I think you should try to do it some other way than iterate, it sounds super 
>> suboptimal to me. Also the plugin option he was thinking of I think is 
>> changing Cassandra sourcecode, kind of hard when Cassandra is changing so 
>> fast but very possible. I think you should look at 
>> http://blip.tv/file/4015273 and perhaps my blog post about the same thing at 
>> www.Justus.st Cassandra post 4 more on Data model
>>  
>> Exampel code in java, start and end key, next iteration the end should be 
>> the last key that you collected, depends how you made you model
>> //Keyrange is for what row key, you can specify what row startkey,endkey and 
>> how many rows
>> KeyRange keyRange = new KeyRange(700);
>> keyRange.setStart_key(rowId);
>> keyRange.setEnd_key(rowId);
>>  
>>  //Specify what supercolumns you want to get
>> SliceRange sliceRange = new SliceRange();
>> sliceRange.setStart(new byte[] {});
>> sliceRange.setFinish(new byte[] {});
>>  
>> /J
>>  
>> Från: Jone Lura [mailto:jone.l...@ecc.no] 
>> Skickat: den 20 augusti 2010 08:53
>> Till: user@cassandra.apache.org
>> Ämne: Re: SV: Help with getting Key range with some column limitations
>>  
>> Thanks for you suggestions.
>> 
>> I tried to iterate them, however I could not get it to work (pretty sure its 
>> my code). Im still not to familiar with Cassandra, so could you provide a 
>> small example?
>> 
>> The key count could be up to atleast 20k and maybe more, and users should 
>> not wait for more than 10 seconds for their map, so I also want to 
>> investigate the plugin suggestion. Does the plugin exist? or do I have to 
>> develop it myself? Are there any documentation on plugin development for 
>> Cassandra?
>> 
>> Best regards
>> 
>> Jone
>> 
>> 
>> On 19/08/2010 08:42, Thorvaldsson Justus wrote:
>> You should iterate through them, get 200 then go get the next 200 and so on.
>> Also if checking a bounding box to another.. perhaps try sorting them so you 
>> could start looking at both ends, perhaps make the iteration smaller until 
>> match somehow?
>> Just my simple coins, also upgrading will probably be needed to iterate 
>> through RP because of bugs. But that should be simple enough to 6.4
>> /Justus
>>  
>> Från: Jone Lura [mailto:jone.l...@ecc.no] 
>> Skickat: den 18 augusti 2010 20:32
>> Till: user@cassandra.apache.org
>> Ämne: Help with getting Key range with some column limitations
>>  
>> Hi,
>>  
>> We are trying to implement Cassandra to replace one of our biggest SQL 
>> tables, and so far we got it working.
>>  
>> However, for testing I'm using Cassandra 0.6.2, Java and Pelops. (Pelops not 
>> that important for my question) and need suggestions on how to solve a 
>> problem retrieving a key range based on the following.
>>  
>> <Keyspace Name="AIS">
>>       
>> 
>> 
>> 
>>         ColumnType="Super"
>>         CompareWith="LongType"
>>         KeysCached="100%"
>>         CompareSubcolumnsWith="UTF8Type" />
>>      ...
>>     </Keyspace>
>>  
>> The super column got columns for longitude and latitude.
>>  
>>  1. Need to get get max long number for key
>>  2. The key should also have supercolumns latitude and longitude column 
>> intersecting (inside) with a given boundingbox.
>>  
>> Currently I'm doing like this
>>  
>>  
>>         KeyRange keyRange = new KeyRange();
>>         keyRange.setStart_key("");
>>         keyRange.setEnd_key("");
>>         keyRange.setCount(700);
>>  
>> And checking every row in db if it match my bounding box.
>>  
>> But there are a lot more than 700 keys.. and if i set a higher count, the 
>> get_range_slice get a Timeout Exception.
>>  
>> Any ideas?
>>  
>> Best Regards
>> Jone
>>  
>>  
> 

Reply via email to