You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Aaron Morton <aa...@thelastpickle.com> on 2010/07/22 02:58:07 UTC

Re: Is it possible to read from one row, several SuperColumns with all their Columns in one call?

Take a look at the  get_slice  function http://wiki.apache.org/cassandra/API

You could send one with a ColumnParent that only specifies the ColumnFamily and a SlicePredicate with a SliceRange where the start and finish values are empty strings. Set the count to an appropriate level to get them all (e.g. 1000) or make multiple calls.


Aaron


On 22 Jul, 2010,at 12:05 PM, Patricio Echagüe <pa...@gmail.com> wrote:

> Hi all, apologize before hand if this question sounds a bit dumb but I
> don't see what API I should use (if there is any)
>
> this is my model:
>
> row key A:
> SC_UUID_1:
> Col1, Col2, Col3
> SC_UUID_2:
> Col1, Col2, Col3
> SC_UUID_3:
> Col1, Col2, Col3
> SC_UUID_4:
> Col1, Col2, Col3
> SC_UUID_5:
> Col1, Col2, Col3
>
> SC_UUID(i) are random UUIDs.
>
> Is there any way to read in one call from row A, the SC 2,3,4 with all
> their columns? The amount of columns in every SuperColumn is not big
> at all. normally less than 20.
>
> Thanks
> -- 
> Patricio.-

Re: Is it possible to read from one row, several SuperColumns with all their Columns in one call?

Posted by Patricio Echagüe <pa...@gmail.com>.
Hey thanks Aaron. It finally worked. The API reference looked a bit
confusing to me.

I used (as you suggested):
                    ColumnParent parent = new ColumnParent(
<ColumnFamily name>);
                    SlicePredicate sp = new SlicePredicate();
                    sp.setColumn_names( <list of super column names>);

after calling get_slice() ....as result, i got the super columns I
passed in the list with ALLl their columns in one call.

so now, just IF I WANTED TO, would it be possible to get just a subset
of columns contained in those supercolumns instead of all of them
assuming that the amount of columns are lot and for performance issues
i want to avoid moving a lot of data over the network?

2010/7/22 Patricio Echagüe <pa...@gmail.com>:
> Hi Aaron, the problem I have is that those UUIDs are random numbers.
> 2,3,4 are not sequential unfortunately. I don't think there is an API
> like mutiget_slice for key but for Super Column names.
>
> Is there any other way to specify a list of super column names to read
> where those names are not sequential?
>
> thanks
>
>
> On Wed, Jul 21, 2010 at 5:58 PM, Aaron Morton <aa...@thelastpickle.com> wrote:
>> Take a look at the  get_slice  function http://wiki.apache.org/cassandra/API
>>
>> You could send one with a ColumnParent that only specifies the ColumnFamily
>> and a SlicePredicate with a SliceRange where the start and finish values are
>> empty strings. Set the count to an appropriate level to get them all (e.g.
>> 1000) or make multiple calls.
>>
>>
>> Aaron
>>
>>
>> On 22 Jul, 2010,at 12:05 PM, Patricio Echagüe <pa...@gmail.com> wrote:
>>
>> Hi all, apologize before hand if this question sounds a bit dumb but I
>> don't see what API I should use (if there is any)
>>
>> this is my model:
>>
>> row key A:
>> SC_UUID_1:
>> Col1, Col2, Col3
>> SC_UUID_2:
>> Col1, Col2, Col3
>> SC_UUID_3:
>> Col1, Col2, Col3
>> SC_UUID_4:
>> Col1, Col2, Col3
>> SC_UUID_5:
>> Col1, Col2, Col3
>>
>> SC_UUID(i) are random UUIDs.
>>
>> Is there any way to read in one call from row A, the SC 2,3,4 with all
>> their columns? The amount of columns in every SuperColumn is not big
>> at all. normally less than 20.
>>
>> Thanks
>> --
>> Patricio-
>>
>
>
>
> --
> Patricio.-
>



-- 
Patricio.-

Re: Is it possible to read from one row, several SuperColumns with all their Columns in one call?

Posted by Patricio Echagüe <pa...@gmail.com>.
Hi Aaron, the problem I have is that those UUIDs are random numbers.
2,3,4 are not sequential unfortunately. I don't think there is an API
like mutiget_slice for key but for Super Column names.

Is there any other way to specify a list of super column names to read
where those names are not sequential?

thanks


On Wed, Jul 21, 2010 at 5:58 PM, Aaron Morton <aa...@thelastpickle.com> wrote:
> Take a look at the  get_slice  function http://wiki.apache.org/cassandra/API
>
> You could send one with a ColumnParent that only specifies the ColumnFamily
> and a SlicePredicate with a SliceRange where the start and finish values are
> empty strings. Set the count to an appropriate level to get them all (e.g.
> 1000) or make multiple calls.
>
>
> Aaron
>
>
> On 22 Jul, 2010,at 12:05 PM, Patricio Echagüe <pa...@gmail.com> wrote:
>
> Hi all, apologize before hand if this question sounds a bit dumb but I
> don't see what API I should use (if there is any)
>
> this is my model:
>
> row key A:
> SC_UUID_1:
> Col1, Col2, Col3
> SC_UUID_2:
> Col1, Col2, Col3
> SC_UUID_3:
> Col1, Col2, Col3
> SC_UUID_4:
> Col1, Col2, Col3
> SC_UUID_5:
> Col1, Col2, Col3
>
> SC_UUID(i) are random UUIDs.
>
> Is there any way to read in one call from row A, the SC 2,3,4 with all
> their columns? The amount of columns in every SuperColumn is not big
> at all. normally less than 20.
>
> Thanks
> --
> Patricio-
>



-- 
Patricio.-