blob: 562429549e1595f6a83bde715438e7c5b896d120 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.hadoop.hbase.io.encoding (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="org.apache.hadoop.hbase.io.encoding (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/io/crypto/aes/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/io/hadoopbackport/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/encoding/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;org.apache.hadoop.hbase.io.encoding</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder</a></td>
<td class="colLast">
<div class="block">Encoding of KeyValue.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.EncodedSeeker.html" title="interface in org.apache.hadoop.hbase.io.encoding">DataBlockEncoder.EncodedSeeker</a></td>
<td class="colLast">
<div class="block">An interface which enable to seek while underlying data is encoded.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockDecodingContext</a></td>
<td class="colLast">
<div class="block">A decoding context that is created by a reader's encoder, and is shared
across all of the reader's read operations.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding">HFileBlockEncodingContext</a></td>
<td class="colLast">
<div class="block">An encoding context that is created by a writer's encoder, and is shared
across the writer's whole lifetime.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">AbstractDataBlockEncoder</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.AbstractEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">AbstractDataBlockEncoder.AbstractEncodedSeeker</a></td>
<td class="colLast">
<div class="block">Decorates EncodedSeeker with a <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding"><code>HFileBlockDecodingContext</code></a></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder</a></td>
<td class="colLast">
<div class="block">Base class for all data block encoders that use a buffer.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.BufferedEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.BufferedEncodedSeeker</a>&lt;STATE extends <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a>&gt;</td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.OffheapDecodedExtendedCell.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.OffheapDecodedExtendedCell</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.OnheapDecodedCell.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.OnheapDecodedCell</a></td>
<td class="colLast">
<div class="block">Copies only the key part of the keybuffer by doing a deep copy and passes the
seeker state members for taking a clone.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.SeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">BufferedDataBlockEncoder.SeekerState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">CompressionState</a></td>
<td class="colLast">
<div class="block">Stores the state of data block encoder at the beginning of new key.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">CopyKeyDataBlockEncoder</a></td>
<td class="colLast">
<div class="block">Just copy data, do not do any kind of compression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.CopyKeyEncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">CopyKeyDataBlockEncoder.CopyKeyEncodingState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/CopyKeyDataBlockEncoder.SeekerStateBufferedEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">CopyKeyDataBlockEncoder.SeekerStateBufferedEncodedSeeker</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">DiffKeyDeltaEncoder</a></td>
<td class="colLast">
<div class="block">Compress using:
- store size of common prefix
- save column family once, it is same within HFile
- use integer compression for key, value and prefix (7-bit encoding)
- use bits to avoid duplication key length, value length
and type if it same as previous
- store in 3 bits length of timestamp field
- allow diff in timestamp instead of actual value
Format:
- 1 byte: flag
- 1-5 bytes: key length (only if FLAG_SAME_KEY_LENGTH is not set in flag)
- 1-5 bytes: value length (only if FLAG_SAME_VALUE_LENGTH is not set in flag)
- 1-5 bytes: prefix length
- ...</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffCompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">DiffKeyDeltaEncoder.DiffCompressionState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffSeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">DiffKeyDeltaEncoder.DiffSeekerState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.DiffSeekerStateBufferedEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">DiffKeyDeltaEncoder.DiffSeekerStateBufferedEncodedSeeker</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/EncodedDataBlock.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodedDataBlock</a></td>
<td class="colLast">
<div class="block">Encapsulates a data block compressed using a particular encoding algorithm.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/EncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">EncodingState</a></td>
<td class="colLast">
<div class="block">Keeps track of the encoding state.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">FastDiffDeltaEncoder</a></td>
<td class="colLast">
<div class="block">Encoder similar to <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DiffKeyDeltaEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding"><code>DiffKeyDeltaEncoder</code></a> but supposedly faster.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffCompressionState.html" title="class in org.apache.hadoop.hbase.io.encoding">FastDiffDeltaEncoder.FastDiffCompressionState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffSeekerState.html" title="class in org.apache.hadoop.hbase.io.encoding">FastDiffDeltaEncoder.FastDiffSeekerState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/FastDiffDeltaEncoder.FastDiffSeekerStateBufferedEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">FastDiffDeltaEncoder.FastDiffSeekerStateBufferedEncodedSeeker</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultDecodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultDecodingContext</a></td>
<td class="colLast">
<div class="block">A default implementation of <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding"><code>HFileBlockDecodingContext</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.html" title="class in org.apache.hadoop.hbase.io.encoding">HFileBlockDefaultEncodingContext</a></td>
<td class="colLast">
<div class="block">A default implementation of <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/HFileBlockEncodingContext.html" title="interface in org.apache.hadoop.hbase.io.encoding"><code>HFileBlockEncodingContext</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/NoneEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">NoneEncoder</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.html" title="class in org.apache.hadoop.hbase.io.encoding">PrefixKeyDeltaEncoder</a></td>
<td class="colLast">
<div class="block">Compress key by storing size of common prefix with previous KeyValue
and storing raw size of rest.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/PrefixKeyDeltaEncoder.SeekerStateBufferedEncodedSeeker.html" title="class in org.apache.hadoop.hbase.io.encoding">PrefixKeyDeltaEncoder.SeekerStateBufferedEncodedSeeker</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.html" title="class in org.apache.hadoop.hbase.io.encoding">RowIndexCodecV1</a></td>
<td class="colLast">
<div class="block">Store cells following every row's start offset, so we can binary search to a row's cells.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.RowIndexEncodingState.html" title="class in org.apache.hadoop.hbase.io.encoding">RowIndexCodecV1.RowIndexEncodingState</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexEncoderV1.html" title="class in org.apache.hadoop.hbase.io.encoding">RowIndexEncoderV1</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.html" title="class in org.apache.hadoop.hbase.io.encoding">RowIndexSeekerV1</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Summary table, listing enums, and an explanation">
<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></td>
<td class="colLast">
<div class="block">Provide access to all data block encoding algorithms.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/EncoderBufferTooSmallException.html" title="class in org.apache.hadoop.hbase.io.encoding">EncoderBufferTooSmallException</a></td>
<td class="colLast">
<div class="block">Internal error which indicates a bug in a data block encoding algorithm.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/hbase/io/crypto/aes/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/io/hadoopbackport/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/encoding/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>