incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aaron morton <aa...@thelastpickle.com>
Subject Re: Partial composite result limit possible?
Date Wed, 15 Aug 2012 21:02:05 GMT
You cannot do that in a single query. 

The order of columns in output is the order they are stored in. And the API can only return
a contiguous range of columns.  

In this case I would get the larger slice and then discard columns client side. Or build a
second row that has the order of the columns reversed so you can select from (0, null) to
(2, null).

http://pycassa.github.com/pycassa/assorted/composite_types.html?#fetching-compositetype-data

Hope that helps. 

-----------------
Aaron Morton
Freelance Developer
@aaronmorton
http://www.thelastpickle.com

On 15/08/2012, at 4:10 PM, David Turnbull <david@broodax.net> wrote:

> Hi, I have a CF with a composite type (LongType, IntegerType) with some data like this:
> 
> RowKey: hihi
> => (column=1000:1, value=616263)
> => (column=1000:2, value=6465)
> => (column=1000:3, value=66)
> => (column=1000:4, value=6768)
> => (column=2000:1, value=616263)
> => (column=2000:2, value=6465)
> => (column=2000:3, value=66)
> => (column=2000:4, value=6768)
> 
> I want to query from (1000,0 to 2000,2) such that I get 1000:1, 1000:2, 2000:1 and 2000:2
back.
> Is this possible?
> 
> In pycassa, I can do cf.get('hihi', column_start=(1000,0), column_finish=(2000,2) but
that gives me 1000:1-4 and 2000:1-2.
> Specifying a limit of 2 columns for the query just applies to the total results, i.e.
only 1000:1 and 1000:2.
> 
> I could specify the composite columns fully in the query, but I'm hoping to query over
at least 300 columns, which seems bad.
> 


Mime
View raw message