On Thu, Feb 3, 2011 at 11:27 AM, Aditya Narayan <ady...@gmail.com> wrote:
> Hey all, > > I want to store some columns that are reminders to the users on my > application, in time sorted order in a row(timeline row of the user). > > Would it be recommended to store these reminder columns in the > timeline row with column names like: combination of timestamp(of time > when the reminder gets due) + UserId+ Reminders Count of that user; > Column Name= <TimestampOfDueTimeInFuture>: <UserId> : > <ReminderCountOfThisUser> > If you have one row by user (which is a good idea), why keep the UserId in the column name ? > Then what comparator could I use to sort them in order of the their > due time ? This comparator should be able to sort no. in descending > order.(I guess ascii type would do the opposite order) (Reminders need > to be sorted in the timeline in the order of their due time.) > *The* solution is write a custom comparator. Have a look at http://www.datastax.com/docs/0.7/data_model/column_families and http://www.sodeso.nl/?p=421 for instance. As a side note, the fact that the comparator sort in ascending order when you need descending order would be that much of a problem, since you can always do slice queries in reversed order. But even then, asciiType is not a very satisfying solution as you would have to be careful about the padding of your timestamp for it to work correctly. So again, custom comparator is the way to go. Basically I am trying to avoid 16 bytes long timeUUID first because > they are too long and the above defined key pattern is guaranteeing me > a unique key/Id for the reminder row always. > > > Thanks > Aditya Narayan > -- Sylvain