You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Phabricator (JIRA)" <ji...@apache.org> on 2012/10/05 02:53:49 UTC

[jira] [Updated] (HBASE-6597) Block Encoding Size Estimation

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

Phabricator updated HBASE-6597:
-------------------------------

    Attachment: D5895.1.patch

mbautin requested code review of "[jira] [HBASE-6597] [89-fb] Incremental data block encoding".
Reviewers: Kannan, Karthik, Liyin, aaiyer, avf, JIRA

  Instead of accumulating a block of key-values of predetermined size and then delta-encoding it, we encode key-value pairs as we add them and start a new block when the **encoded** size exceeds the configured block size. This work was done by Brian Nixon. I did necessary testing and bug fixes.

TEST PLAN
  Run unit tests

REVISION DETAIL
  https://reviews.facebook.net/D5895

AFFECTED FILES
  src/main/java/org/apache/hadoop/hbase/KeyValue.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoder.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/HFileDataBlockEncoderImpl.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderV2.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/HFileWriterV2.java
  src/main/java/org/apache/hadoop/hbase/io/hfile/NoOpDataBlockEncoder.java
  src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java
  src/test/java/org/apache/hadoop/hbase/io/encoding/TestDataBlockEncoders.java
  src/test/java/org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.java
  src/test/java/org/apache/hadoop/hbase/io/hfile/TestHFile.java
  src/test/java/org/apache/hadoop/hbase/io/hfile/TestHFileBlock.java
  src/test/java/org/apache/hadoop/hbase/io/hfile/TestHFileBlockIndex.java
  src/test/java/org/apache/hadoop/hbase/io/hfile/TestIncrementalEncoding.java
  src/test/java/org/apache/hadoop/hbase/util/TestByteBufferUtils.java

MANAGE HERALD DIFFERENTIAL RULES
  https://reviews.facebook.net/herald/view/differential/

WHY DID I GET THIS EMAIL?
  https://reviews.facebook.net/herald/transcript/13989/

To: Kannan, Karthik, Liyin, aaiyer, avf, JIRA, mbautin

                
> Block Encoding Size Estimation
> ------------------------------
>
>                 Key: HBASE-6597
>                 URL: https://issues.apache.org/jira/browse/HBASE-6597
>             Project: HBase
>          Issue Type: Improvement
>          Components: io
>    Affects Versions: 0.89-fb
>            Reporter: Brian Nixon
>            Priority: Minor
>         Attachments: D5895.1.patch
>
>
> Blocks boundaries as created by current writers are determined by the size of the unencoded data. However, blocks in memory are kept encoded. By using an estimate for the encoded size of the block, we can get greater consistency in size.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira