Depends on how large is a data set, specifically hot data, comparing to available RAM, what is a heavy read load, and what are the latency requirements.

2012/3/6 Maciej Miklas <>

I've asked this question already on stackoverflow but without answer - I wll try again:

My use case expects heavy read load - there are two possible model design strategies:

  1. Tiny rows with row cache: In this case row is small enough to fit into RAM and all columns are being cached. Read access should be fast.

  2. Wide rows with key cache. Wide rows with large columns amount are to big for row cache. Access to column subset requires HDD seek.

As I understand using wide rows is a good design pattern. But we would need to disable row cache - so .... what is the benefit of such wide row (at least for read access)?

Which approach is better 1 or 2?