Pretty much the same kind of answer I just gave to Stuti in the thread
"Hbase Schema Query". The query pattern is very important, for
example: are you most likely to query a user for all its product views
or single pair lookups?

It's always easier to filter by row key since it's the "first level
index" so in general I would tend to have lots of small rows.

J-D

On Tue, Aug 16, 2011 at 8:36 AM, Mark <[email protected]> wrote:
> We have a typical site that includes users and products. If we wanted to log
> all user product views and when they viewed them, how would one model this
> in HBase? As far as I can tell there are at least 2 ways.
>
> 1) Each row key would he user/epoch and there would be only 1 column
> "products:id" with a value of the item id. This would lead to 1 row per user
> per product view.
>
> 2) Each row key would be the user while each column would be
> "products:epoch" with a value of the item id. This would be one row per user
> having 1 column per product view.
>
> 3) I'm sure there is a third but I can't think of one :)
>
> What is more preferable and more importantly, why? Large number of rows or
> fatter rows?
>
> Thanks
>
>
>

Reply via email to