Regarding the first option that you suggested through composite columns, can I store the username & id both in the column name and keep the column valueless? Will I be able to retrieve both the username and id from the composite col name ?
Thanks a lot On Wed, Nov 16, 2011 at 10:56 AM, Aditya Narayan <ady...@gmail.com> wrote: > Got the first option that you suggested. > > However, In the second one, are you suggested to use, for e.g, > key='Marcos' & store cols, for all users of that name, containing userId > inside that row. That way it would have to read multiple rows while user is > doing a single search. > > > On Wed, Nov 16, 2011 at 10:47 AM, samal <samalgo...@gmail.com> wrote: > >> >> > I need to add 'search users' functionality to my application. (The >>>> trigger for fetching searched items(like google instant search) is made >>>> when 3 letters have been typed in). >>>> > >>>> > For this, I make a CF with String type keys. Each such key is made of >>>> first 3 letters of a user's name. >>>> > >>>> > Thus all names starting with 'Mar-' are stored in single row (with >>>> key="Mar"). >>>> > The column names are framed as remaining letters of the names. Thus, >>>> a name 'Marcos' will be stored within rowkey "Mar" & col name "cos". The id >>>> will be stored as column value. Since there could be many users with same >>>> name. Thus I would have multple userIds(of users named "Marcos") to be >>>> stored inside columnname "cos" under key "Mar". Thus, >>>> > >>>> > 1. Supercolumn seems to be a better fit for my use case(so that ids >>>> of users with same name may fit as sub-columns inside a super-column) but >>>> since supercolumns are not encouraged thus I want to use an alternative >>>> schema for this usecase if possible. Could you suggest some ideas on this ? >>>> > >>>> >>> >> Aditya, >> >> Have you any given thought on Composite columns [1]. I think it can help >> you solve your problem of multiple user with same name. >> >> mar:{ >> {cos,unique_user_id}:unique_user_id, >> {cos,1}:1, >> {cos,2}:2, >> {cos,3}:3, >> >> // {utf8,timeUUID}:timeUUID, >> } >> OR >> you can try wide rows indexing user name to ID's >> >> marcos{ >> user1:' ', >> user2:' ', >> user3:' ' >> } >> >> [1]http://www.slideshare.net/edanuff/indexing-in-cassandra >> >> >