From b3935ec9ad71e122666049e6bfeb3f556377c23d Mon Sep 17 00:00:00 2001 From: Misty Stanley-Jones Date: Tue, 7 Oct 2014 13:32:51 +1000 Subject: [PATCH] HBASE-9004 Fix Documentation around Minor Compaction and TTL (Masatake Iwasaki) --- src/main/docbkx/schema_design.xml | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main/docbkx/schema_design.xml b/src/main/docbkx/schema_design.xml index 9f3f3504057..01434c3dcd8 100644 --- a/src/main/docbkx/schema_design.xml +++ b/src/main/docbkx/schema_design.xml @@ -368,10 +368,10 @@ COLUMN CELL If you pre-split your table, it is critical to understand how your rowkey will be distributed across the region boundaries. As an example of why this is important, consider the example of using displayable hex characters as the lead position of - the key (e.g., "0000000000000000" to "ffffffffffffffff"). Running those - key ranges through Bytes.split (which is the split strategy used when creating - regions in HBaseAdmin.createTable(byte[] startKey, byte[] endKey, numRegions) - for 10 regions will generate the following splits... + the key (e.g., "0000000000000000" to "ffffffffffffffff"). Running those key ranges through + Bytes.split (which is the split strategy used when creating regions in + HBaseAdmin.createTable(byte[] startKey, byte[] endKey, numRegions) for 10 + regions will generate the following splits... 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 // 0 54 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 // 6 @@ -503,12 +503,17 @@ public static byte[][] getHexSplits(String startKey, String endKey, int numRegio
Time To Live (TTL) - ColumnFamilies can set a TTL length in seconds, and HBase will automatically delete rows + ColumnFamilies can set a TTL length in seconds, and HBase will automatically delete rows once the expiration time is reached. This applies to all versions of a - row - even the current one. The TTL time encoded in the HBase for the row is specified in UTC. - See HColumnDescriptor - for more information. + row - even the current one. The TTL time encoded in the HBase for the row is specified in UTC. + + Store files which contains only expired rows are deleted on minor compaction. Setting + hbase.store.delete.expired.storefile to false disables this + feature. Setting minimum number of versions to other + than 0 also disables this. + See HColumnDescriptor for more information.