[ 
https://issues.apache.org/jira/browse/HBASE-17294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eshcar Hillel updated HBASE-17294:
----------------------------------
    Release Note: 
This patch provides a single external knob to control memstore compaction.
Possible memstore compaction policies are:
(1) None - no memory compaction, when size threshold is exceeded data is 
flushed to disk
(2) Basic policy applies optimizations which modify the index to a more 
compacted representation. This is beneficial in all access patterns. The 
smaller the cells are the greater the benefit of this policy. This is the 
default policy.
(3) Eager - in addition to compacting the index representation as the basic 
policy, eager policy eliminates duplication while the data is still in memory 
(much like the on-disk compaction does after the data is flushed to disk). This 
policy is most useful for applications with high data churn or small working 
sets.

Memory compaction policeman be set at the column family level at table creation 
time:
{code}
create ‘<tablename>’,
   {NAME => ‘<cfname>’, 
    IN_MEMORY_COMPACTION => ‘<NONE|BASIC|EAGER>’}
{code}
or as a property at the global configuration level by setting the property in 
hbase-site.xml, with BASIC being the default value:
{code}
<property>
        <name>hbase.hregion.compacting.memstore.type</name>
        <value><NONE|BASIC|EAGER></value>
</property>
{code}
The values used in this property can change as memstore compaction policies 
evolve over time.

> External Configuration for Memory Compaction 
> ---------------------------------------------
>
>                 Key: HBASE-17294
>                 URL: https://issues.apache.org/jira/browse/HBASE-17294
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Eshcar Hillel
>            Assignee: Eshcar Hillel
>             Fix For: 2.0.0
>
>         Attachments: HBASE-17294-V01.patch, HBASE-17294-V02.patch, 
> HBASE-17294-V03.patch
>
>
> We would like to have a single external knob to control memstore compaction.
> Possible memstore compaction policies are none, basic, and eager.
> This sub-task allows to set this property at the column family level at table 
> creation time:
> {code}
> create ‘<tablename>’,
>    {NAME => ‘<cfname>’, 
>     IN_MEMORY_COMPACTION => ‘<NONE|BASIC|EAGER>’}
> {code}
> or to set this at the global configuration level by setting the property in 
> hbase-site.xml, with BASIC being the default value:
> {code}
> <property>
>       <name>hbase.hregion.compacting.memstore.type</name>
>       <value><NONE|BASIC|EAGER></value>
> </property>
> {code}
> The values used in this property can change as memstore compaction policies 
> evolve over time.



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

Reply via email to