Package org.apache.parquet.column.impl
Class ColumnWriteStoreV2
- java.lang.Object
-
- org.apache.parquet.column.impl.ColumnWriteStoreV2
-
- All Implemented Interfaces:
ColumnWriteStore
public class ColumnWriteStoreV2 extends Object
-
-
Constructor Summary
Constructors Constructor Description ColumnWriteStoreV2(MessageType schema, PageWriteStore pageWriteStore, ParquetProperties props)ColumnWriteStoreV2(MessageType schema, PageWriteStore pageWriteStore, BloomFilterWriteStore bloomFilterWriteStore, ParquetProperties props)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Close the related output stream and release any resourcesvoidendRecord()called to notify of record boundariesvoidflush()when we are done writing to flush to the underlying storagelonggetAllocatedSize()used for informationlonggetBufferedSize()used to flush row groups to diskSet<ColumnDescriptor>getColumnDescriptors()ColumnWritergetColumnWriter(ColumnDescriptor path)booleanisColumnFlushNeeded()Returns whether flushing the possibly cached values (or nulls) to the underlying column writers is necessary, because the pages might be closed after the next invocation ofColumnWriteStore.endRecord().longmaxColMemSize()StringmemUsageString()used for debugging purposeStringtoString()
-
-
-
Constructor Detail
-
ColumnWriteStoreV2
public ColumnWriteStoreV2(MessageType schema, PageWriteStore pageWriteStore, ParquetProperties props)
-
ColumnWriteStoreV2
public ColumnWriteStoreV2(MessageType schema, PageWriteStore pageWriteStore, BloomFilterWriteStore bloomFilterWriteStore, ParquetProperties props)
-
-
Method Detail
-
getColumnWriter
public ColumnWriter getColumnWriter(ColumnDescriptor path)
- Specified by:
getColumnWriterin interfaceColumnWriteStore- Parameters:
path- the column for which to create a writer- Returns:
- the column writer for the given column
-
getColumnDescriptors
public Set<ColumnDescriptor> getColumnDescriptors()
-
getAllocatedSize
public long getAllocatedSize()
Description copied from interface:ColumnWriteStoreused for information- Specified by:
getAllocatedSizein interfaceColumnWriteStore- Returns:
- approximate size used in memory
-
getBufferedSize
public long getBufferedSize()
Description copied from interface:ColumnWriteStoreused to flush row groups to disk- Specified by:
getBufferedSizein interfaceColumnWriteStore- Returns:
- approximate size of the buffered encoded binary data
-
flush
public void flush()
Description copied from interface:ColumnWriteStorewhen we are done writing to flush to the underlying storage- Specified by:
flushin interfaceColumnWriteStore
-
memUsageString
public String memUsageString()
Description copied from interface:ColumnWriteStoreused for debugging purpose- Specified by:
memUsageStringin interfaceColumnWriteStore- Returns:
- a formated string representing memory usage per column
-
maxColMemSize
public long maxColMemSize()
-
close
public void close()
Description copied from interface:ColumnWriteStoreClose the related output stream and release any resources- Specified by:
closein interfaceColumnWriteStore
-
endRecord
public void endRecord()
Description copied from interface:ColumnWriteStorecalled to notify of record boundaries- Specified by:
endRecordin interfaceColumnWriteStore
-
isColumnFlushNeeded
public boolean isColumnFlushNeeded()
Description copied from interface:ColumnWriteStoreReturns whether flushing the possibly cached values (or nulls) to the underlying column writers is necessary, because the pages might be closed after the next invocation ofColumnWriteStore.endRecord().- Specified by:
isColumnFlushNeededin interfaceColumnWriteStore- Returns:
trueif all the values shall be written to the underlying column writers before callingColumnWriteStore.endRecord()
-
-