On Tue, Aug 28, 2012 at 9:59 AM, Joe Pallas <[email protected]> wrote:
>
> On Aug 25, 2012, at 2:57 PM, lars hofhansl wrote:
>
>> Each column family is its own store. All stores are flushed together, so 
>> have many add overhead (especially if a few tend to hold a lot of data, but 
>> the others don't, leading to very many small store files that need to be 
>> compacted).
>
> If there are no writes at all to a CF, will a flush still create a new store 
> file?  I’m thinking about a case where one CF is basically write-once and 
> another CF gets frequent updates.
>

I was going to say we won't write a file if no kvs, but looking at
code, it looks like we could write a file w/ nothing but metadata:
http://hbase.apache.org/xref/org/apache/hadoop/hbase/regionserver/Store.html#725
     I see a check up in HRegion where we look at memstore size, the
aggregated size of all CFs, and if it is null we'll skip a flush but I
did not see an equivalent check at the CF level (after three minutes
of looking).  We should add one if not one already.

St.Ack

Reply via email to