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 20:48:01 UTC

Beginner Question - Super Column Family Alternative

Please help me understand this.
I am not sure if this is the right place to ask such question.

I read that it is not safe to use Super Column Family.
And the alternative, I found was to use Composite Column Names.

Many managers will have many employees.

*<<SCF>>Manager_Employee
<<SuperColumnName>>#managerID
<<RowKey>>#employeeID*

So with Composite Column
Should it look like this ?
<<CF>>Manager_Employee
<<RowKey>>#managerID:employeeID

And is this the right approach to deal with not using SCF. Also will it 
not create a bigger row size , in case
I have many thousands of messages associated to each user and millions 
of users  ?


regards,
Ramesh

Re: Beginner Question - Super Column Family Alternative

Posted by aaron morton <aa...@thelastpickle.com>.
>> I am not sure if this is the right place to ask such question. 
It is. 

>> I read that it is not safe to use Super Column Family.
They are safe to use, but it's good to avoid them if you can. 

>> <<CF>>Manager_Employee
>> <<RowKey>>#managerID:employeeID
>> 
>> And is this the right approach to deal with not using SCF. Also will it not create a bigger row size , in case 
>> I have many thousands of messages associated to each user and millions of users  ?
Makes sense if you always want to get the messages for a manager_empoyee combination. 

Good luck. 


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

On 7/01/2012, at 9:09 AM, investtr wrote:

> On 01/06/2012 01:48 PM, investtr wrote:
>> 
>> Please help me understand this.
>> I am not sure if this is the right place to ask such question. 
>> 
>> I read that it is not safe to use Super Column Family.
>> And the alternative, I found was to use Composite Column Names.
>> 
>> Many managers will have many employees.
>> 
>> <<SCF>>Manager_Employee
>> <<SuperColumnName>>#managerID
>> <<RowKey>>#employeeID
>> 
>> So with Composite Column
>> Should it look like this ?
>> <<CF>>Manager_Employee
>> <<RowKey>>#managerID:employeeID
>> 
>> And is this the right approach to deal with not using SCF. Also will it not create a bigger row size , in case 
>> I have many thousands of messages associated to each user and millions of users  ?
>> 
>> 
>> regards,
>> Ramesh
> I found the answer to my question in this example.
> 
> HotelByCity (CF) Key: city:state {
>   key: Phoenix:AZ {AZC_053: -, AZC_011: -}
>   key: San Francisco:CA {CAS_021: -}
>   key: New York:NY {NYN_042: -}
> }
> and this slide
> http://www.slideshare.net/edanuff/indexing-in-cassandra
> 
> Thanks
> Ramesh


Re: Beginner Question - Super Column Family Alternative

Posted by investtr <in...@gmail.com>.
On 01/06/2012 01:48 PM, investtr wrote:
> Please help me understand this.
> I am not sure if this is the right place to ask such question.
>
> I read that it is not safe to use Super Column Family.
> And the alternative, I found was to use Composite Column Names.
>
> Many managers will have many employees.
>
> *<<SCF>>Manager_Employee
> <<SuperColumnName>>#managerID
> <<RowKey>>#employeeID*
>
> So with Composite Column
> Should it look like this ?
> <<CF>>Manager_Employee
> <<RowKey>>#managerID:employeeID
>
> And is this the right approach to deal with not using SCF. Also will 
> it not create a bigger row size , in case
> I have many thousands of messages associated to each user and millions 
> of users  ?
>
>
> regards,
> Ramesh
I found the answer to my question in this example.

HotelByCity (CF) Key: city:state {
   key: Phoenix:AZ {AZC_053: -, AZC_011: -}
   key: San Francisco:CA {CAS_021: -}
   key: New York:NY {NYN_042: -}
}
and this slide
http://www.slideshare.net/edanuff/indexing-in-cassandra

Thanks
Ramesh