You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by investtr <in...@gmail.com> on 2012/01/06 19:29:43 UTC

Is this correct way to create a Composite Type

I am trying to understand the composite type.
Is this a right way to create a Composite Data ?

<<CF>>Follower_For_Users
<<RowKey>>#{"userID",n}:"followerID"

for simplicity I have replaced userID by followerID.

regards,
Ramesh

Re: Is this correct way to create a Composite Type

Posted by investtr <in...@gmail.com>.
On 01/08/2012 03:43 PM, aaron morton wrote:
> The reason I asked was because I could not understand
>
>>>> <<CF>>Follower_For_Users
>>>> <<RowKey>>#{"userID",n}:"followerID"
>
>> I found about Composite Types and I am trying to solve a situation 
>> like using composite. Also I read that Cassandra columns can save 
>> upto 2 billion values. But in one of the presentations , I read that 
>> if you are saving billion values in columns, there is possibly a flaw 
>> in design.
> Not sure about a design floor. Having more data take longer to process 
> in situations where all the data must be processed. Repair and 
> compaction will take longer and use more IO.
>
> Design rows to hold the data you need to read. If you are storing time 
> series data consider partitioning it into different rows for something 
>  like each day or month.
>
>> One more thing I am not very clear is that the secondary indexing on 
>> columns with say billion columns is a good performer.
> See above, billions of columns may not be a great idea. see 
> http://thelastpickle.com/2011/07/04/Cassandra-Query-Plans/
>
> Cheers
>
> -----------------
> Aaron Morton
> Freelance Developer
> @aaronmorton
> http://www.thelastpickle.com
>
> On 8/01/2012, at 7:47 AM, investtr wrote:
>
>> On 01/07/2012 02:38 AM, aaron morton wrote:
>>> Can you provide some context  ? e.g. what client are you using ?
>>>
>>> Cheers
>>>
>>> -----------------
>>> Aaron Morton
>>> Freelance Developer
>>> @aaronmorton
>>> http://www.thelastpickle.com <http://www.thelastpickle.com/>
>>>
>>> On 7/01/2012, at 7:29 AM, investtr wrote:
>>>
>>>> I am trying to understand the composite type.
>>>> Is this a right way to create a Composite Data ?
>>>>
>>>> <<CF>>Follower_For_Users
>>>> <<RowKey>>#{"userID",n}:"followerID"
>>>>
>>>> for simplicity I have replaced userID by followerID.
>>>>
>>>> regards,
>>>> Ramesh
>>>
>> Thanks Aaron for your replies.
>> I will be using Hector.
>> I planned to use SuperColumns and it made sense before. But I got to 
>> a point where
>> the need was like.
>>
>>  Multiple Products -> Each Product has Sub-Product or Sub-Products -> 
>> Each Sub-Product have many Sub-Categories.
>>
>> I found about Composite Types and I am trying to solve a situation 
>> like using composite. Also I read that Cassandra columns can save 
>> upto 2 billion values. But in one of the presentations , I read that 
>> if you are saving billion values in columns, there is possibly a flaw 
>> in design.
>> One more thing I am not very clear is that the secondary indexing on 
>> columns with say billion columns is a good performer.
>>
>>
>> Thank you
>> Regards,
>> Ramesh
>>
>>
>>
>
Thanks again Aaron.
That was a valuable suggestion and thanks for pointing me to that 
brilliant post from your blog.  I found this link from your blog and I 
am much more clear now
http://www.slideshare.net/mattdennis/cassandra-nyc-2011-data-modeling .

Regards,
Ramesh

Re: Is this correct way to create a Composite Type

Posted by aaron morton <aa...@thelastpickle.com>.
The reason I asked was because I could not understand 

>>> <<CF>>Follower_For_Users
>>> <<RowKey>>#{"userID",n}:"followerID"

> I found about Composite Types and I am trying to solve a situation like using composite. Also I read that Cassandra columns can save upto 2 billion values. But in one of the presentations , I read that if you are saving billion values in columns, there is possibly a flaw in design.
Not sure about a design floor. Having more data take longer to process in situations where all the data must be processed. Repair and compaction will take longer and use more IO.

Design rows to hold the data you need to read. If you are storing time series data consider partitioning it into different rows for something  like each day or month. 

> One more thing I am not very clear is that the secondary indexing on columns with say billion columns is a good performer.
See above, billions of columns may not be a great idea. see http://thelastpickle.com/2011/07/04/Cassandra-Query-Plans/

Cheers

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

On 8/01/2012, at 7:47 AM, investtr wrote:

> On 01/07/2012 02:38 AM, aaron morton wrote:
>> 
>> Can you provide some context  ? e.g. what client are you using ? 
>> 
>> Cheers
>> 
>> -----------------
>> Aaron Morton
>> Freelance Developer
>> @aaronmorton
>> http://www.thelastpickle.com
>> 
>> On 7/01/2012, at 7:29 AM, investtr wrote:
>> 
>>> I am trying to understand the composite type.
>>> Is this a right way to create a Composite Data ?
>>> 
>>> <<CF>>Follower_For_Users
>>> <<RowKey>>#{"userID",n}:"followerID"
>>> 
>>> for simplicity I have replaced userID by followerID.
>>> 
>>> regards,
>>> Ramesh
>> 
> Thanks Aaron for your replies.
> I will be using Hector. 
> I planned to use SuperColumns and it made sense before. But I got to a point where 
> the need was like.
>   
>  Multiple Products -> Each Product has Sub-Product or Sub-Products -> Each Sub-Product have many Sub-Categories.
> 
> I found about Composite Types and I am trying to solve a situation like using composite. Also I read that Cassandra columns can save upto 2 billion values. But in one of the presentations , I read that if you are saving billion values in columns, there is possibly a flaw in design.
> One more thing I am not very clear is that the secondary indexing on columns with say billion columns is a good performer.
> 
> 
> Thank you
> Regards,
> Ramesh
>       
>         
>    


Re: Is this correct way to create a Composite Type

Posted by investtr <in...@gmail.com>.
On 01/07/2012 02:38 AM, aaron morton wrote:
> Can you provide some context  ? e.g. what client are you using ?
>
> Cheers
>
> -----------------
> Aaron Morton
> Freelance Developer
> @aaronmorton
> http://www.thelastpickle.com
>
> On 7/01/2012, at 7:29 AM, investtr wrote:
>
>> I am trying to understand the composite type.
>> Is this a right way to create a Composite Data ?
>>
>> <<CF>>Follower_For_Users
>> <<RowKey>>#{"userID",n}:"followerID"
>>
>> for simplicity I have replaced userID by followerID.
>>
>> regards,
>> Ramesh
>
Thanks Aaron for your replies.
I will be using Hector.
I planned to use SuperColumns and it made sense before. But I got to a 
point where
the need was like.

  Multiple Products -> Each Product has Sub-Product or Sub-Products -> 
Each Sub-Product have many Sub-Categories.

I found about Composite Types and I am trying to solve a situation like 
using composite. Also I read that Cassandra columns can save upto 2 
billion values. But in one of the presentations , I read that if you are 
saving billion values in columns, there is possibly a flaw in design.
One more thing I am not very clear is that the secondary indexing on 
columns with say billion columns is a good performer.


Thank you
Regards,
Ramesh




Re: Is this correct way to create a Composite Type

Posted by aaron morton <aa...@thelastpickle.com>.
Can you provide some context  ? e.g. what client are you using ? 

Cheers

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

On 7/01/2012, at 7:29 AM, investtr wrote:

> I am trying to understand the composite type.
> Is this a right way to create a Composite Data ?
> 
> <<CF>>Follower_For_Users
> <<RowKey>>#{"userID",n}:"followerID"
> 
> for simplicity I have replaced userID by followerID.
> 
> regards,
> Ramesh