Nevermind, it is called composite columns. Thank you for your help.
Morgan. Le 31 août 2012 à 06:05, aaron morton <aa...@thelastpickle.com> a écrit : > Consider trying… > > UserTimeline CF > > row_key: <user_id> > column_names: <timestamp, other_user_id, action> > column_values: action details > > To get the changes between two times specify the start and end timestamps and > do not include the other components of the column name. > > e.g. from <1234, NULL, NULL> to <6789, NULL, NULL> > > Cheers > > ----------------- > Aaron Morton > Freelance Developer > @aaronmorton > http://www.thelastpickle.com > > On 30/08/2012, at 11:32 PM, Morgan Segalis <msega...@gmail.com> wrote: > >> Sorry for the scheme that has not keep the right tabulation for some >> people... >> Here's a space-version instead of a tabulation. >> >> user1 row : | lte | >> lte -1 | lte -2 | >> lte -3 | lte -4 | >> values : | user2-name-change | user3-pic-change | >> user4-status-change | user2-pic-change | user2-status-change | >> >> If for example, user2 changes it's picture, the row should look like that : >> >> user1 row : | lte | >> lte -1 | lte -2 | >> lte -3 | lte -4 | >> values : | user2-pic-change | user2-name-change >> | user3-pic-change | user4-status-change | user2-status-change | >> >> Le 30 août 2012 à 13:22, Morgan Segalis a écrit : >> >>> Hi everyone, >>> >>> I'm trying to use cassandra in order to store a "timeline", but with values >>> that must be unique (replaced). (So not really a timeline, but didn't find >>> a better word for it) >>> >>> Let's me give you an example : >>> >>> - An user have a list of friends >>> - Friends can change their nickname, status, profile picture, etc... >>> >>> at the beginning the CF will look like that for user1: >>> >>> lte = latest-timestamp-entry, which is the timestamp of the entry (-1 -2 -3 >>> means that the timestamp are older) >>> >>> user1 row : | lte | >>> lte -1 | lte -2 | lte >>> -3 | lte -4 | >>> values : | user2-name-change | user3-pic-change >>> | user4-status-change | user2-pic-change | user2-status-change | >>> >>> If for example, user2 changes it's picture, the row should look like that : >>> >>> user1 row : | lte | >>> lte -1 | lte -2 | lte >>> -3 | lte -4 | >>> values : | user2-pic-change | >>> user2-name-change | user3-pic-change | user4-status-change | >>> user2-status-change | >>> >>> notice that user2-pic-change in the first representation (lte -3) has >>> "moved" to the (lte) on the second representation. >>> >>> That way when user1 connects again, It can retrieve only informations that >>> occurred between the last time he connected. >>> >>> e.g. : if the user1's last connexion date it between "lte -2" and "lte -3", >>> then he will only be notified that : >>> >>> - user2 has changed his picture >>> - user2 has changed his name >>> - user3 has changed his picture >>> >>> I would not keep the old data since the "timeline" is saved locally on the >>> client, and not on the server. >>> I really would like not to search for each column in order to find the >>> "user2-pic-change", that can be long especially if the user has many >>> friends. >>> >>> Is there a simple way to do that with cassandra, or I am bound to create >>> another CF, with column title holding the action e.g. "user2-pic-change" >>> and for value the timestamp when it appears ? >>> >>> Thanks, >>> >>> Morgan. >