public class PhysicalWriterImpl extends Object implements org.apache.orc.PhysicalWriter
PhysicalFsWriter.
Whereas PhysicalFsWriter implementation works on the basis of a Path, this implementation
leverages Paimon's PositionOutputStream to write the compressed data.
NOTE: If the ORC dependency version is updated, this file may have to be updated as well to be in sync with the new version's PhysicalFsWriter.
| 限定符和类型 | 字段和说明 |
|---|---|
protected org.apache.orc.impl.OutStream |
writer |
| 构造器和说明 |
|---|
PhysicalWriterImpl(org.apache.paimon.fs.PositionOutputStream out,
org.apache.orc.OrcFile.WriterOptions opts) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
appendRawStripe(ByteBuffer buffer,
org.apache.orc.OrcProto.StripeInformation.Builder dirEntry) |
void |
close() |
org.apache.orc.PhysicalWriter.OutputReceiver |
createDataStream(org.apache.orc.impl.StreamName name) |
void |
finalizeStripe(org.apache.orc.OrcProto.StripeFooter.Builder footerBuilder,
org.apache.orc.OrcProto.StripeInformation.Builder dirEntry) |
void |
flush() |
org.apache.orc.CompressionCodec |
getCompressionCodec() |
long |
getFileBytes(int column) |
void |
writeBloomFilter(org.apache.orc.impl.StreamName name,
org.apache.orc.OrcProto.BloomFilterIndex.Builder bloom,
org.apache.orc.CompressionCodec codec) |
void |
writeFileFooter(org.apache.orc.OrcProto.Footer.Builder builder) |
protected void |
writeFileFooter(org.apache.orc.OrcProto.Footer footer) |
void |
writeFileMetadata(org.apache.orc.OrcProto.Metadata.Builder builder) |
void |
writeHeader() |
void |
writeIndex(org.apache.orc.impl.StreamName name,
org.apache.orc.OrcProto.RowIndex.Builder index,
org.apache.orc.CompressionCodec codec) |
protected void |
writeMetadata(org.apache.orc.OrcProto.Metadata metadata) |
long |
writePostScript(org.apache.orc.OrcProto.PostScript.Builder builder) |
protected void |
writeStripeFooter(org.apache.orc.OrcProto.StripeFooter footer) |
public PhysicalWriterImpl(org.apache.paimon.fs.PositionOutputStream out,
org.apache.orc.OrcFile.WriterOptions opts)
throws IOException
IOExceptionpublic void writeHeader()
throws IOException
writeHeader 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic org.apache.orc.PhysicalWriter.OutputReceiver createDataStream(org.apache.orc.impl.StreamName name)
createDataStream 在接口中 org.apache.orc.PhysicalWriterpublic void writeIndex(org.apache.orc.impl.StreamName name,
org.apache.orc.OrcProto.RowIndex.Builder index,
org.apache.orc.CompressionCodec codec)
throws IOException
writeIndex 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void writeBloomFilter(org.apache.orc.impl.StreamName name,
org.apache.orc.OrcProto.BloomFilterIndex.Builder bloom,
org.apache.orc.CompressionCodec codec)
throws IOException
writeBloomFilter 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void finalizeStripe(org.apache.orc.OrcProto.StripeFooter.Builder footerBuilder,
org.apache.orc.OrcProto.StripeInformation.Builder dirEntry)
throws IOException
finalizeStripe 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void writeFileMetadata(org.apache.orc.OrcProto.Metadata.Builder builder)
throws IOException
writeFileMetadata 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void writeFileFooter(org.apache.orc.OrcProto.Footer.Builder builder)
throws IOException
writeFileFooter 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic long writePostScript(org.apache.orc.OrcProto.PostScript.Builder builder)
throws IOException
writePostScript 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void close()
close 在接口中 org.apache.orc.PhysicalWriterpublic void flush()
throws IOException
flush 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic void appendRawStripe(ByteBuffer buffer, org.apache.orc.OrcProto.StripeInformation.Builder dirEntry) throws IOException
appendRawStripe 在接口中 org.apache.orc.PhysicalWriterIOExceptionpublic org.apache.orc.CompressionCodec getCompressionCodec()
getCompressionCodec 在接口中 org.apache.orc.PhysicalWriterpublic long getFileBytes(int column)
getFileBytes 在接口中 org.apache.orc.PhysicalWriterprotected void writeMetadata(org.apache.orc.OrcProto.Metadata metadata)
throws IOException
IOExceptionprotected void writeFileFooter(org.apache.orc.OrcProto.Footer footer)
throws IOException
IOExceptionprotected void writeStripeFooter(org.apache.orc.OrcProto.StripeFooter footer)
throws IOException
IOExceptionCopyright © 2023 The Apache Software Foundation. All rights reserved.