cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thorvaldsson Justus <justus.thorvalds...@svenskaspel.se>
Subject SV: Help with getting Key range with some column limitations
Date Thu, 19 Aug 2010 06:42:07 GMT
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.lura@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">
        <ColumnFamily Name="Location"
        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

Mime
View raw message