blob: bb8d39e1318deb13b52e193505dad1155c33b3e4 [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.types (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.types (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/tool/coprocessor/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/util/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/types/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.types</h1>
<div class="docSummary">
<div class="block">
This package provides the definition and implementation of HBase's
extensible data type API.</div>
</div>
<p>See:&nbsp;<a href="#package.description">Description</a></p>
</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/types/DataType.html" title="interface in org.apache.hadoop.hbase.types">DataType</a>&lt;T&gt;</td>
<td class="colLast">
<div class="block">
<code>DataType</code> is the base class for all HBase data types.</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/types/FixedLengthWrapper.html" title="class in org.apache.hadoop.hbase.types">FixedLengthWrapper</a>&lt;T&gt;</td>
<td class="colLast">
<div class="block">Wraps an existing <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> implementation as a fixed-length
version of itself.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html" title="class in org.apache.hadoop.hbase.types">OrderedBlob</a></td>
<td class="colLast">
<div class="block">A <code>byte[]</code> of variable-length.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedBlobVar.html" title="class in org.apache.hadoop.hbase.types">OrderedBlobVar</a></td>
<td class="colLast">
<div class="block">An alternative to <a href="../../../../../org/apache/hadoop/hbase/types/OrderedBlob.html" title="class in org.apache.hadoop.hbase.types"><code>OrderedBlob</code></a> for use by <a href="../../../../../org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types"><code>Struct</code></a> fields that
do not terminate the fields list.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedBytesBase.html" title="class in org.apache.hadoop.hbase.types">OrderedBytesBase</a>&lt;T&gt;</td>
<td class="colLast">
<div class="block">Base class for data types backed by the <a href="../../../../../org/apache/hadoop/hbase/util/OrderedBytes.html" title="class in org.apache.hadoop.hbase.util"><code>OrderedBytes</code></a> encoding
implementations.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedFloat32.html" title="class in org.apache.hadoop.hbase.types">OrderedFloat32</a></td>
<td class="colLast">
<div class="block">A <code>float</code> of 32-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedFloat64.html" title="class in org.apache.hadoop.hbase.types">OrderedFloat64</a></td>
<td class="colLast">
<div class="block">A <code>double</code> of 64-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedInt16.html" title="class in org.apache.hadoop.hbase.types">OrderedInt16</a></td>
<td class="colLast">
<div class="block">A <code>short</code> of 16-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedInt32.html" title="class in org.apache.hadoop.hbase.types">OrderedInt32</a></td>
<td class="colLast">
<div class="block">An <code>int</code> of 32-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedInt64.html" title="class in org.apache.hadoop.hbase.types">OrderedInt64</a></td>
<td class="colLast">
<div class="block">A <code>long</code> of 64-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedInt8.html" title="class in org.apache.hadoop.hbase.types">OrderedInt8</a></td>
<td class="colLast">
<div class="block">A <code>byte</code> of 8-bits using a fixed-length encoding.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedNumeric.html" title="class in org.apache.hadoop.hbase.types">OrderedNumeric</a></td>
<td class="colLast">
<div class="block">An <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang"><code>Number</code></a> of arbitrary precision and variable-length encoding.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/OrderedString.html" title="class in org.apache.hadoop.hbase.types">OrderedString</a></td>
<td class="colLast">
<div class="block">A <code>String</code> of variable-length.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawByte.html" title="class in org.apache.hadoop.hbase.types">RawByte</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putByte-byte:A-int-byte-"><code>Bytes.putByte(byte[], int, byte)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawBytes.html" title="class in org.apache.hadoop.hbase.types">RawBytes</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with variable-length values
encoded using <a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putBytes-byte:A-int-byte:A-int-int-"><code>Bytes.putBytes(byte[], int, byte[], int, int)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawBytesFixedLength.html" title="class in org.apache.hadoop.hbase.types">RawBytesFixedLength</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> that encodes fixed-length values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putBytes-byte:A-int-byte:A-int-int-"><code>Bytes.putBytes(
byte[], int, byte[], int, int)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawBytesTerminated.html" title="class in org.apache.hadoop.hbase.types">RawBytesTerminated</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> that encodes variable-length values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putBytes-byte:A-int-byte:A-int-int-"><code>Bytes.putBytes(byte[], int, byte[], int, int)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawDouble.html" title="class in org.apache.hadoop.hbase.types">RawDouble</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putDouble-byte:A-int-double-"><code>Bytes.putDouble(byte[], int, double)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawFloat.html" title="class in org.apache.hadoop.hbase.types">RawFloat</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putFloat-byte:A-int-float-"><code>Bytes.putFloat(byte[], int, float)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawInteger.html" title="class in org.apache.hadoop.hbase.types">RawInteger</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putInt-byte:A-int-int-"><code>Bytes.putInt(byte[], int, int)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawLong.html" title="class in org.apache.hadoop.hbase.types">RawLong</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putLong-byte:A-int-long-"><code>Bytes.putLong(byte[], int, long)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawShort.html" title="class in org.apache.hadoop.hbase.types">RawShort</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#putShort-byte:A-int-short-"><code>Bytes.putShort(byte[], int, short)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawString.html" title="class in org.apache.hadoop.hbase.types">RawString</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> for interacting with values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#toBytes-java.lang.String-"><code>Bytes.toBytes(String)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawStringFixedLength.html" title="class in org.apache.hadoop.hbase.types">RawStringFixedLength</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> that encodes fixed-length values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#toBytes-java.lang.String-"><code>Bytes.toBytes(String)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/RawStringTerminated.html" title="class in org.apache.hadoop.hbase.types">RawStringTerminated</a></td>
<td class="colLast">
<div class="block">An <code>DataType</code> that encodes variable-length values encoded using
<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#toBytes-java.lang.String-"><code>Bytes.toBytes(String)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types">Struct</a></td>
<td class="colLast">
<div class="block">
<code>Struct</code> is a simple <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> for implementing "compound
rowkey" and "compound qualifier" schema design strategies.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/StructBuilder.html" title="class in org.apache.hadoop.hbase.types">StructBuilder</a></td>
<td class="colLast">
<div class="block">A helper for building <a href="../../../../../org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types"><code>Struct</code></a> instances.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/StructIterator.html" title="class in org.apache.hadoop.hbase.types">StructIterator</a></td>
<td class="colLast">
<div class="block">An <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util"><code>Iterator</code></a> over encoded <code>Struct</code> members.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="class in org.apache.hadoop.hbase.types">TerminatedWrapper</a>&lt;T&gt;</td>
<td class="colLast">
<div class="block">Wraps an existing <code>DataType</code> implementation as a terminated
version of itself.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/Union2.html" title="class in org.apache.hadoop.hbase.types">Union2</a>&lt;A,B&gt;</td>
<td class="colLast">
<div class="block">The <code>Union</code> family of <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed
set of <code>Object</code>s.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/Union3.html" title="class in org.apache.hadoop.hbase.types">Union3</a>&lt;A,B,C&gt;</td>
<td class="colLast">
<div class="block">The <code>Union</code> family of <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed
collection of Objects.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/types/Union4.html" title="class in org.apache.hadoop.hbase.types">Union4</a>&lt;A,B,C,D&gt;</td>
<td class="colLast">
<div class="block">The <code>Union</code> family of <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed
collection of Objects.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="package.description">
<!-- -->
</a>
<h2 title="Package org.apache.hadoop.hbase.types Description">Package org.apache.hadoop.hbase.types Description</h2>
<div class="block"><p>
This package provides the definition and implementation of HBase's
extensible data type API. <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>
is the entry point. Basic type implementations are provided based on two
different encoding schemes: the <code>Raw*</code> implementations use the
<code>toXXX</code> methods in <a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html" title="class in org.apache.hadoop.hbase.util"><code>Bytes</code></a> and
the <code>Ordered*</code> implementations use the encoding scheme defined in
<a href="../../../../../org/apache/hadoop/hbase/util/OrderedBytes.html" title="class in org.apache.hadoop.hbase.util"><code>OrderedBytes</code></a>. Complex types are also
supported in the form of <a href="../../../../../org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types"><code>Struct</code></a> and
the abstract <code>Union</code> classes.
</p>
<p>
<a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> implementations are used to
convert a POJO into a <code>byte[]</code> while maintaining application-level
constraints over the values produces and consumed. They also provide hints
to consumers about the nature of encoded values as well as the relationship
between different instances. See the class comments on
<a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> for details.
</p>
<p>
The <a href="../../../../../org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> interface is primarily
of use for creating rowkeys and column qualifiers. It can also be used as a
an encoder for primitive values. It does not support concerns of complex
object serialization, concepts like schema version and migration. These
concepts are handled more thoroughly by tools like Thrift, Avro, and
Protobuf.
</p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.95.2</dd>
</dl>
</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/tool/coprocessor/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/util/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/types/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>