[ 
https://issues.apache.org/jira/browse/HBASE-15181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15127284#comment-15127284
 ] 

Dave Latham commented on HBASE-15181:
-------------------------------------

Those are great questions, Vladimir - I hope people who know better chime in 
and confirm / deny.  Poking at the issues that Clara linked, I can speculate:

The default compaction algorithm at the time (Ratio based?) was intended to 
handle stores with a shape where the older files were larger than recent files, 
so it sounds the policy would not intelligently handle a smaller bulk load file 
that is sorted to be oldest and end up doing a large wasteful compaction.

For contiguous-only compactions, I think that's because the sequence IDs are 
only stored per-file, not per-cell.  So if you want to compare two Cell 
sequence IDs for identical keys, then you need to have a strict ordering on 
HFile sequence IDs.  If you compact out-of-order HFiles, then you don't have 
strictly ordered sequence IDs any more.

Both speculation.

> A simple implementation of date based tiered compaction
> -------------------------------------------------------
>
>                 Key: HBASE-15181
>                 URL: https://issues.apache.org/jira/browse/HBASE-15181
>             Project: HBase
>          Issue Type: New Feature
>          Components: Compaction
>            Reporter: Clara Xiong
>            Assignee: Clara Xiong
>             Fix For: 2.0.0
>
>         Attachments: HBASE-15181-v1.patch, HBASE-15181-v2.patch
>
>
> This is a simple implementation of date-based tiered compaction similar to 
> Cassandra's for the following benefits:
> 1. Improve date-range-based scan by structuring store files in date-based 
> tiered layout.
> 2. Reduce compaction overhead.
> 3. Improve TTL efficiency.
> Perfect fit for the use cases that:
> 1. has mostly date-based date write and scan and a focus on the most recent 
> data. 
> 2. never or rarely deletes data.
> Out-of-order writes are handled gracefully so the data will still get to the 
> right store file for time-range-scan and re-compacton with existing store 
> file in the same time window is handled by ExploringCompactionPolicy.
> Time range overlapping among store files is tolerated and the performance 
> impact is minimized.
> Configuration can be set at hbase-site or overriden at per-table or 
> per-column-famly level by hbase shell.
> Design spec is at 
> https://docs.google.com/document/d/1_AmlNb2N8Us1xICsTeGDLKIqL6T-oHoRLZ323MG_uy8/edit?usp=sharing



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to