The best way to store things depends on how you want to read them back. You could use a compound key such as user/listtype and then store the items in the lists as column were the col name is a timestamp and the col value is a packed data structure like json.
As bill says, don't create a CF per user. Aaron On 12/02/2011, at 4:14 AM, Bill Speirs <bill.spe...@gmail.com> wrote: > I don't know enough about Lucene to comment, but option #2 seems like > a bad idea. You shouldn't grow your database by the number of Column > Families as there are bad implications to doing this. Option #1 or #3 > seems plausible depending upon how much data you have. > > Hope this helps... > > Bill- > > On Fri, Feb 11, 2011 at 4:26 AM, Nikolay Fominyh <nikola...@gmail.com> wrote: >> Hello. >> >> We have a problem with finding way to store user news list. >> Our task - we have 2 group of filters: >> 1) News Types(photo, video, audio, etc... ) >> 2) User Lists(user, friends, friends friends, etc..) >> >> Our solution ways: >> 1) Store matrix of filters for each user. >> UserNews: >> user_id1: >> <list_type1>: (date, uuid) >> <list_type1>_<news_type1>: list(date, news_uuid) >> <list_type1>_<news_type2>: list(date, news_uuid) >> .... >> <list_typeN>: (date, uuid) >> <list_typeN>_<news_type1>: list(date, news_uuid) >> <list_typeN>_<news_type2>: list(date, news_uuid) >> ... >> ... >> user_idN: >> <list_type1>: (date, uuid) >> <list_type1>_<news_type1>: list(date, news_uuid) >> <list_type1>_<news_type2>: list(date, news_uuid) >> .... >> <list_typeN>: (date, uuid) >> <list_typeN>_<news_type1>: list(date, news_uuid) >> <list_typeN>_<news_type2>: list(date, news_uuid) >> ... >> >> Numbers of filters in this way more than 100.. >> >> 2) Store news lists for each user in personal column family. >> UserNews_<id>: >> date_uuid: >> <news_type> : indexed >> <list_type> : indexed >> <news_uuid> >> >> In this case we have huge number of column families. >> >> 3) Store news lists in SQL Database and News in Cassandra. >> >> 4) Use Apache Lucene for indexes on filters. >> >> Question: What of this ways is most optimal? Is there another ways of >> solutuion? >> >>