public class StructTreeWriter extends TreeWriterBase
TreeWriter.FactorybloomFilter, bloomFilterEntry, bloomFilterUtf8, createBloomFilter, fileStatistics, id, indexStatistics, isPresent, rowIndexPosition, stripeColStatistics| Constructor and Description |
|---|
StructTreeWriter(int columnId,
TypeDescription schema,
WriterContext writer,
boolean nullable) |
| Modifier and Type | Method and Description |
|---|---|
void |
createRowIndexEntry()
Create a row index entry with the previous location and the current
index statistics.
|
long |
estimateMemory()
Estimate how much memory the writer is consuming excluding the streams.
|
void |
flushStreams()
Flush the TreeWriter stream
|
long |
getRawDataSize()
Estimate the memory used if the file was read into Hive's Writable
types.
|
void |
updateFileStatistics(OrcProto.StripeStatistics stats)
During a stripe append, we need to update the file statistics.
|
void |
writeBatch(ColumnVector vector,
int offset,
int length)
Write the values from the given vector from offset for length elements.
|
void |
writeFileStatistics(OrcProto.Footer.Builder footer)
Add the file statistics to the file footer.
|
void |
writeRootBatch(VectorizedRowBatch batch,
int offset,
int length)
Handle the top level object write.
|
void |
writeStripe(OrcProto.StripeFooter.Builder builder,
OrcProto.StripeStatistics.Builder stats,
int requiredIndexEntries)
Write the stripe out to the file.
|
getRowIndex, getRowIndexEntry, getStripeStatisticspublic StructTreeWriter(int columnId,
TypeDescription schema,
WriterContext writer,
boolean nullable)
throws IOException
IOExceptionpublic void writeRootBatch(VectorizedRowBatch batch, int offset, int length) throws IOException
TreeWriterBasewriteRootBatch in interface TreeWriterwriteRootBatch in class TreeWriterBasebatch - the batch to write fromoffset - the row to start onlength - the number of rows to writeIOExceptionpublic void writeBatch(ColumnVector vector, int offset, int length) throws IOException
TreeWriterBasewriteBatch in interface TreeWriterwriteBatch in class TreeWriterBasevector - the vector to write fromoffset - the first value from the vector to writelength - the number of values from the vector to writeIOExceptionpublic void createRowIndexEntry()
throws IOException
TreeWriterBasecreateRowIndexEntry in interface TreeWritercreateRowIndexEntry in class TreeWriterBaseIOExceptionpublic void writeStripe(OrcProto.StripeFooter.Builder builder, OrcProto.StripeStatistics.Builder stats, int requiredIndexEntries) throws IOException
TreeWriterwriteStripe in interface TreeWriterwriteStripe in class TreeWriterBasebuilder - the stripe footer that contains the information about the
layout of the stripe. The TreeWriterBase is required to update
the footer with its information.stats - the stripe statistics informationrequiredIndexEntries - the number of index entries that are
required. this is to check to make sure the
row index is well formed.IOExceptionpublic void updateFileStatistics(OrcProto.StripeStatistics stats)
TreeWriterupdateFileStatistics in interface TreeWriterupdateFileStatistics in class TreeWriterBasestats - the statistics for the new stripepublic long estimateMemory()
TreeWriterBaseestimateMemory in interface TreeWriterestimateMemory in class TreeWriterBasepublic long getRawDataSize()
TreeWriterpublic void writeFileStatistics(OrcProto.Footer.Builder footer)
TreeWriterwriteFileStatistics in interface TreeWriterwriteFileStatistics in class TreeWriterBasefooter - the file footer builderpublic void flushStreams()
throws IOException
TreeWriterflushStreams in interface TreeWriterflushStreams in class TreeWriterBaseIOExceptionCopyright © 2013–2018 The Apache Software Foundation. All rights reserved.