blob: 7ce3fd61f775aaeb08f9a75502030e46e4f6db88 [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 (1.8.0_292) on Tue Jun 15 06:01:51 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TFile (Apache Hadoop Common 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<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="TFile (Apache Hadoop Common 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TFile.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/io/file/tfile/SimpleBufferedOutputStream.html" title="class in org.apache.hadoop.io.file.tfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.Reader.html" title="class in org.apache.hadoop.io.file.tfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/io/file/tfile/TFile.html" target="_top">Frames</a></li>
<li><a href="TFile.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.io.file.tfile</div>
<h2 title="Class TFile" class="title">Class TFile</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.io.file.tfile.TFile</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@InterfaceAudience.Public
@InterfaceStability.Evolving
public class <span class="typeNameLabel">TFile</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">A TFile is a container of key-value pairs. Both keys and values are type-less
bytes. Keys are restricted to 64KB, value length is not restricted
(practically limited to the available disk storage). TFile further provides
the following features:
<ul>
<li>Block Compression.
<li>Named meta data blocks.
<li>Sorted or unsorted keys.
<li>Seek by key or by file offset.
</ul>
The memory footprint of a TFile includes the following:
<ul>
<li>Some constant overhead of reading or writing a compressed block.
<ul>
<li>Each compressed block requires one compression/decompression codec for
I/O.
<li>Temporary space to buffer the key.
<li>Temporary space to buffer the value (for TFile.Writer only). Values are
chunk encoded, so that we buffer at most one chunk of user data. By default,
the chunk buffer is 1MB. Reading chunked value does not require additional
memory.
</ul>
<li>TFile index, which is proportional to the total number of Data Blocks.
The total amount of memory needed to hold the index can be estimated as
(56+AvgKeySize)*NumBlocks.
<li>MetaBlock index, which is proportional to the total number of Meta
Blocks.The total amount of memory needed to hold the index for Meta Blocks
can be estimated as (40+AvgMetaBlockName)*NumMetaBlock.
</ul>
<p>
The behavior of TFile can be customized by the following variables through
Configuration:
<ul>
<li><b>tfile.io.chunk.size</b>: Value chunk size. Integer (in bytes). Default
to 1MB. Values of the length less than the chunk size is guaranteed to have
known value length in read time (See
<a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.Reader.Scanner.Entry.html#isValueLengthKnown--"><code>TFile.Reader.Scanner.Entry.isValueLengthKnown()</code></a>).
<li><b>tfile.fs.output.buffer.size</b>: Buffer size used for
FSDataOutputStream. Integer (in bytes). Default to 256KB.
<li><b>tfile.fs.input.buffer.size</b>: Buffer size used for
FSDataInputStream. Integer (in bytes). Default to 256KB.
</ul>
<p>
Suggestions on performance optimization.
<ul>
<li>Minimum block size. We recommend a setting of minimum block size between
256KB to 1MB for general usage. Larger block size is preferred if files are
primarily for sequential access. However, it would lead to inefficient random
access (because there are more data to decompress). Smaller blocks are good
for random access, but require more memory to hold the block index, and may
be slower to create (because we must flush the compressor stream at the
conclusion of each data block, which leads to an FS I/O flush). Further, due
to the internal caching in Compression codec, the smallest possible block
size would be around 20KB-30KB.
<li>The current implementation does not offer true multi-threading for
reading. The implementation uses FSDataInputStream seek()+read(), which is
shown to be much faster than positioned-read call in single thread mode.
However, it also means that if multiple threads attempt to access the same
TFile (using multiple scanners) simultaneously, the actual I/O is carried out
sequentially even if they access different DFS blocks.
<li>Compression codec. Use "none" if the data is not very compressable (by
compressable, I mean a compression ratio at least 2:1). Generally, use "lzo"
as the starting point for experimenting. "gz" overs slightly better
compression ratio over "lzo" but requires 4x CPU to compress and 2x CPU to
decompress, comparing to "lzo".
<li>File system buffering, if the underlying FSDataInputStream and
FSDataOutputStream is already adequately buffered; or if applications
reads/writes keys and values in large buffers, we can reduce the sizes of
input/output buffering in TFile layer by setting the configuration parameters
"tfile.fs.input.buffer.size" and "tfile.fs.output.buffer.size".
</ul>
Some design rationale behind TFile can be found at <a
href=https://issues.apache.org/jira/browse/HADOOP-3315>Hadoop-3315</a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.Reader.html" title="class in org.apache.hadoop.io.file.tfile">TFile.Reader</a></span></code>
<div class="block">TFile Reader.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.Writer.html" title="class in org.apache.hadoop.io.file.tfile">TFile.Writer</a></span></code>
<div class="block">TFile Writer.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#COMPARATOR_JCLASS">COMPARATOR_JCLASS</a></span></code>
<div class="block">comparator prefix: java class</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#COMPARATOR_MEMCMP">COMPARATOR_MEMCMP</a></span></code>
<div class="block">comparator: memcmp</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#COMPRESSION_GZ">COMPRESSION_GZ</a></span></code>
<div class="block">compression: gzip</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#COMPRESSION_LZO">COMPRESSION_LZO</a></span></code>
<div class="block">compression: lzo</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#COMPRESSION_NONE">COMPRESSION_NONE</a></span></code>
<div class="block">compression: none</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#getSupportedCompressionAlgorithms--">getSupportedCompressionAlgorithms</a></span>()</code>
<div class="block">Get names of supported compression algorithms.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#main-java.lang.String:A-">main</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)</code>
<div class="block">Dumping the TFile information.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/io/file/tfile/RawComparable.html" title="interface in org.apache.hadoop.io.file.tfile">RawComparable</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.html#makeComparator-java.lang.String-">makeComparator</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Make a raw comparator from a string name.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="COMPRESSION_GZ">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COMPRESSION_GZ</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COMPRESSION_GZ</pre>
<div class="block">compression: gzip</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.io.file.tfile.TFile.COMPRESSION_GZ">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="COMPRESSION_LZO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COMPRESSION_LZO</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COMPRESSION_LZO</pre>
<div class="block">compression: lzo</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.io.file.tfile.TFile.COMPRESSION_LZO">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="COMPRESSION_NONE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COMPRESSION_NONE</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COMPRESSION_NONE</pre>
<div class="block">compression: none</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.io.file.tfile.TFile.COMPRESSION_NONE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="COMPARATOR_MEMCMP">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COMPARATOR_MEMCMP</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COMPARATOR_MEMCMP</pre>
<div class="block">comparator: memcmp</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.io.file.tfile.TFile.COMPARATOR_MEMCMP">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="COMPARATOR_JCLASS">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>COMPARATOR_JCLASS</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COMPARATOR_JCLASS</pre>
<div class="block">comparator prefix: java class</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.io.file.tfile.TFile.COMPARATOR_JCLASS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="makeComparator-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>makeComparator</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util">Comparator</a>&lt;<a href="../../../../../../org/apache/hadoop/io/file/tfile/RawComparable.html" title="interface in org.apache.hadoop.io.file.tfile">RawComparable</a>&gt;&nbsp;makeComparator(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">Make a raw comparator from a string name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Comparator name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A RawComparable comparator.</dd>
</dl>
</li>
</ul>
<a name="getSupportedCompressionAlgorithms--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportedCompressionAlgorithms</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;getSupportedCompressionAlgorithms()</pre>
<div class="block">Get names of supported compression algorithms. The names are acceptable by
TFile.Writer.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Array of strings, each represents a supported compression
algorithm. Currently, the following compression algorithms are
supported.
<ul>
<li>"none" - No compression.
<li>"lzo" - LZO compression.
<li>"gz" - GZIP compression.
</ul></dd>
</dl>
</li>
</ul>
<a name="main-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>main</h4>
<pre>public static&nbsp;void&nbsp;main(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)</pre>
<div class="block">Dumping the TFile information.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - A list of TFile paths.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= 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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TFile.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/io/file/tfile/SimpleBufferedOutputStream.html" title="class in org.apache.hadoop.io.file.tfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/io/file/tfile/TFile.Reader.html" title="class in org.apache.hadoop.io.file.tfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/io/file/tfile/TFile.html" target="_top">Frames</a></li>
<li><a href="TFile.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>