Class ColumnMetaData

java.lang.Object
org.apache.parquet.format.ColumnMetaData
All Implemented Interfaces:
Serializable, Cloneable, Comparable<ColumnMetaData>, org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>, org.apache.thrift.TSerializable

@Generated(value="Autogenerated by Thrift Compiler (0.23.0)", date="2026-08-06") public class ColumnMetaData extends Object implements org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>, Serializable, Cloneable, Comparable<ColumnMetaData>
Description for column metadata
See Also:
  • Field Details

    • type

      public Type type
      Type of this column *
      See Also:
    • encodings

      public List<Encoding> encodings
      Set of all encodings used for this column. The purpose is to validate whether we can decode those pages. *
    • path_in_schema

      public List<String> path_in_schema
      Path in schema *
    • codec

      public CompressionCodec codec
      Compression codec *
      See Also:
    • num_values

      public long num_values
      Number of values in this column *
    • total_uncompressed_size

      public long total_uncompressed_size
      total byte size of all uncompressed pages in this column chunk (including the headers) *
    • total_compressed_size

      public long total_compressed_size
      total byte size of all compressed, and potentially encrypted, pages in this column chunk (including the headers) *
    • key_value_metadata

      public List<KeyValue> key_value_metadata
      Optional key/value metadata *
    • data_page_offset

      public long data_page_offset
      Byte offset from beginning of file to first data page *
    • index_page_offset

      public long index_page_offset
      Byte offset from beginning of file to root index page *
    • dictionary_page_offset

      public long dictionary_page_offset
      Byte offset from the beginning of file to first (only) dictionary page *
    • statistics

      public Statistics statistics
      optional statistics for this column chunk
    • encoding_stats

      public List<PageEncodingStats> encoding_stats
      Set of all encodings used for pages in this column chunk. This information can be used to determine if all data pages are dictionary encoded for example *
    • bloom_filter_offset

      public long bloom_filter_offset
      Byte offset from beginning of file to Bloom filter data. *
    • bloom_filter_length

      public int bloom_filter_length
      Size of Bloom filter data including the serialized header, in bytes. Added in 2.10 so readers may not read this field from old files and it can be obtained after the BloomFilterHeader has been deserialized. Writers should write this field so readers can read the bloom filter in a single I/O.
    • size_statistics

      public SizeStatistics size_statistics
      Optional statistics to help estimate total memory when converted to in-memory representations. The histograms contained in these statistics can also be useful in some cases for more fine-grained nullability/list length filter pushdown.
    • geospatial_statistics

      public GeospatialStatistics geospatial_statistics
      Optional statistics specific for Geometry and Geography logical types
    • metaDataMap

      public static final Map<ColumnMetaData._Fields,org.apache.thrift.meta_data.FieldMetaData> metaDataMap
  • Constructor Details

    • ColumnMetaData

      public ColumnMetaData()
    • ColumnMetaData

      public ColumnMetaData(Type type, List<Encoding> encodings, List<String> path_in_schema, CompressionCodec codec, long num_values, long total_uncompressed_size, long total_compressed_size, long data_page_offset)
    • ColumnMetaData

      public ColumnMetaData(ColumnMetaData other)
      Performs a deep copy on other.
  • Method Details

    • deepCopy

      public ColumnMetaData deepCopy()
      Specified by:
      deepCopy in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • clear

      public void clear()
      Specified by:
      clear in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • getType

      public Type getType()
      Type of this column *
      See Also:
    • setType

      public ColumnMetaData setType(Type type)
      Type of this column *
      See Also:
    • unsetType

      public void unsetType()
    • isSetType

      public boolean isSetType()
      Returns true if field type is set (has been assigned a value) and false otherwise
    • setTypeIsSet

      public void setTypeIsSet(boolean value)
    • getEncodingsSize

      public int getEncodingsSize()
    • getEncodingsIterator

      public Iterator<Encoding> getEncodingsIterator()
    • addToEncodings

      public void addToEncodings(Encoding elem)
    • getEncodings

      public List<Encoding> getEncodings()
      Set of all encodings used for this column. The purpose is to validate whether we can decode those pages. *
    • setEncodings

      public ColumnMetaData setEncodings(List<Encoding> encodings)
      Set of all encodings used for this column. The purpose is to validate whether we can decode those pages. *
    • unsetEncodings

      public void unsetEncodings()
    • isSetEncodings

      public boolean isSetEncodings()
      Returns true if field encodings is set (has been assigned a value) and false otherwise
    • setEncodingsIsSet

      public void setEncodingsIsSet(boolean value)
    • getPath_in_schemaSize

      public int getPath_in_schemaSize()
    • getPath_in_schemaIterator

      public Iterator<String> getPath_in_schemaIterator()
    • addToPath_in_schema

      public void addToPath_in_schema(String elem)
    • getPath_in_schema

      public List<String> getPath_in_schema()
      Path in schema *
    • setPath_in_schema

      public ColumnMetaData setPath_in_schema(List<String> path_in_schema)
      Path in schema *
    • unsetPath_in_schema

      public void unsetPath_in_schema()
    • isSetPath_in_schema

      public boolean isSetPath_in_schema()
      Returns true if field path_in_schema is set (has been assigned a value) and false otherwise
    • setPath_in_schemaIsSet

      public void setPath_in_schemaIsSet(boolean value)
    • getCodec

      public CompressionCodec getCodec()
      Compression codec *
      See Also:
    • setCodec

      public ColumnMetaData setCodec(CompressionCodec codec)
      Compression codec *
      See Also:
    • unsetCodec

      public void unsetCodec()
    • isSetCodec

      public boolean isSetCodec()
      Returns true if field codec is set (has been assigned a value) and false otherwise
    • setCodecIsSet

      public void setCodecIsSet(boolean value)
    • getNum_values

      public long getNum_values()
      Number of values in this column *
    • setNum_values

      public ColumnMetaData setNum_values(long num_values)
      Number of values in this column *
    • unsetNum_values

      public void unsetNum_values()
    • isSetNum_values

      public boolean isSetNum_values()
      Returns true if field num_values is set (has been assigned a value) and false otherwise
    • setNum_valuesIsSet

      public void setNum_valuesIsSet(boolean value)
    • getTotal_uncompressed_size

      public long getTotal_uncompressed_size()
      total byte size of all uncompressed pages in this column chunk (including the headers) *
    • setTotal_uncompressed_size

      public ColumnMetaData setTotal_uncompressed_size(long total_uncompressed_size)
      total byte size of all uncompressed pages in this column chunk (including the headers) *
    • unsetTotal_uncompressed_size

      public void unsetTotal_uncompressed_size()
    • isSetTotal_uncompressed_size

      public boolean isSetTotal_uncompressed_size()
      Returns true if field total_uncompressed_size is set (has been assigned a value) and false otherwise
    • setTotal_uncompressed_sizeIsSet

      public void setTotal_uncompressed_sizeIsSet(boolean value)
    • getTotal_compressed_size

      public long getTotal_compressed_size()
      total byte size of all compressed, and potentially encrypted, pages in this column chunk (including the headers) *
    • setTotal_compressed_size

      public ColumnMetaData setTotal_compressed_size(long total_compressed_size)
      total byte size of all compressed, and potentially encrypted, pages in this column chunk (including the headers) *
    • unsetTotal_compressed_size

      public void unsetTotal_compressed_size()
    • isSetTotal_compressed_size

      public boolean isSetTotal_compressed_size()
      Returns true if field total_compressed_size is set (has been assigned a value) and false otherwise
    • setTotal_compressed_sizeIsSet

      public void setTotal_compressed_sizeIsSet(boolean value)
    • getKey_value_metadataSize

      public int getKey_value_metadataSize()
    • getKey_value_metadataIterator

      public Iterator<KeyValue> getKey_value_metadataIterator()
    • addToKey_value_metadata

      public void addToKey_value_metadata(KeyValue elem)
    • getKey_value_metadata

      public List<KeyValue> getKey_value_metadata()
      Optional key/value metadata *
    • setKey_value_metadata

      public ColumnMetaData setKey_value_metadata(List<KeyValue> key_value_metadata)
      Optional key/value metadata *
    • unsetKey_value_metadata

      public void unsetKey_value_metadata()
    • isSetKey_value_metadata

      public boolean isSetKey_value_metadata()
      Returns true if field key_value_metadata is set (has been assigned a value) and false otherwise
    • setKey_value_metadataIsSet

      public void setKey_value_metadataIsSet(boolean value)
    • getData_page_offset

      public long getData_page_offset()
      Byte offset from beginning of file to first data page *
    • setData_page_offset

      public ColumnMetaData setData_page_offset(long data_page_offset)
      Byte offset from beginning of file to first data page *
    • unsetData_page_offset

      public void unsetData_page_offset()
    • isSetData_page_offset

      public boolean isSetData_page_offset()
      Returns true if field data_page_offset is set (has been assigned a value) and false otherwise
    • setData_page_offsetIsSet

      public void setData_page_offsetIsSet(boolean value)
    • getIndex_page_offset

      public long getIndex_page_offset()
      Byte offset from beginning of file to root index page *
    • setIndex_page_offset

      public ColumnMetaData setIndex_page_offset(long index_page_offset)
      Byte offset from beginning of file to root index page *
    • unsetIndex_page_offset

      public void unsetIndex_page_offset()
    • isSetIndex_page_offset

      public boolean isSetIndex_page_offset()
      Returns true if field index_page_offset is set (has been assigned a value) and false otherwise
    • setIndex_page_offsetIsSet

      public void setIndex_page_offsetIsSet(boolean value)
    • getDictionary_page_offset

      public long getDictionary_page_offset()
      Byte offset from the beginning of file to first (only) dictionary page *
    • setDictionary_page_offset

      public ColumnMetaData setDictionary_page_offset(long dictionary_page_offset)
      Byte offset from the beginning of file to first (only) dictionary page *
    • unsetDictionary_page_offset

      public void unsetDictionary_page_offset()
    • isSetDictionary_page_offset

      public boolean isSetDictionary_page_offset()
      Returns true if field dictionary_page_offset is set (has been assigned a value) and false otherwise
    • setDictionary_page_offsetIsSet

      public void setDictionary_page_offsetIsSet(boolean value)
    • getStatistics

      public Statistics getStatistics()
      optional statistics for this column chunk
    • setStatistics

      public ColumnMetaData setStatistics(Statistics statistics)
      optional statistics for this column chunk
    • unsetStatistics

      public void unsetStatistics()
    • isSetStatistics

      public boolean isSetStatistics()
      Returns true if field statistics is set (has been assigned a value) and false otherwise
    • setStatisticsIsSet

      public void setStatisticsIsSet(boolean value)
    • getEncoding_statsSize

      public int getEncoding_statsSize()
    • getEncoding_statsIterator

      public Iterator<PageEncodingStats> getEncoding_statsIterator()
    • addToEncoding_stats

      public void addToEncoding_stats(PageEncodingStats elem)
    • getEncoding_stats

      public List<PageEncodingStats> getEncoding_stats()
      Set of all encodings used for pages in this column chunk. This information can be used to determine if all data pages are dictionary encoded for example *
    • setEncoding_stats

      public ColumnMetaData setEncoding_stats(List<PageEncodingStats> encoding_stats)
      Set of all encodings used for pages in this column chunk. This information can be used to determine if all data pages are dictionary encoded for example *
    • unsetEncoding_stats

      public void unsetEncoding_stats()
    • isSetEncoding_stats

      public boolean isSetEncoding_stats()
      Returns true if field encoding_stats is set (has been assigned a value) and false otherwise
    • setEncoding_statsIsSet

      public void setEncoding_statsIsSet(boolean value)
    • getBloom_filter_offset

      public long getBloom_filter_offset()
      Byte offset from beginning of file to Bloom filter data. *
    • setBloom_filter_offset

      public ColumnMetaData setBloom_filter_offset(long bloom_filter_offset)
      Byte offset from beginning of file to Bloom filter data. *
    • unsetBloom_filter_offset

      public void unsetBloom_filter_offset()
    • isSetBloom_filter_offset

      public boolean isSetBloom_filter_offset()
      Returns true if field bloom_filter_offset is set (has been assigned a value) and false otherwise
    • setBloom_filter_offsetIsSet

      public void setBloom_filter_offsetIsSet(boolean value)
    • getBloom_filter_length

      public int getBloom_filter_length()
      Size of Bloom filter data including the serialized header, in bytes. Added in 2.10 so readers may not read this field from old files and it can be obtained after the BloomFilterHeader has been deserialized. Writers should write this field so readers can read the bloom filter in a single I/O.
    • setBloom_filter_length

      public ColumnMetaData setBloom_filter_length(int bloom_filter_length)
      Size of Bloom filter data including the serialized header, in bytes. Added in 2.10 so readers may not read this field from old files and it can be obtained after the BloomFilterHeader has been deserialized. Writers should write this field so readers can read the bloom filter in a single I/O.
    • unsetBloom_filter_length

      public void unsetBloom_filter_length()
    • isSetBloom_filter_length

      public boolean isSetBloom_filter_length()
      Returns true if field bloom_filter_length is set (has been assigned a value) and false otherwise
    • setBloom_filter_lengthIsSet

      public void setBloom_filter_lengthIsSet(boolean value)
    • getSize_statistics

      public SizeStatistics getSize_statistics()
      Optional statistics to help estimate total memory when converted to in-memory representations. The histograms contained in these statistics can also be useful in some cases for more fine-grained nullability/list length filter pushdown.
    • setSize_statistics

      public ColumnMetaData setSize_statistics(SizeStatistics size_statistics)
      Optional statistics to help estimate total memory when converted to in-memory representations. The histograms contained in these statistics can also be useful in some cases for more fine-grained nullability/list length filter pushdown.
    • unsetSize_statistics

      public void unsetSize_statistics()
    • isSetSize_statistics

      public boolean isSetSize_statistics()
      Returns true if field size_statistics is set (has been assigned a value) and false otherwise
    • setSize_statisticsIsSet

      public void setSize_statisticsIsSet(boolean value)
    • getGeospatial_statistics

      public GeospatialStatistics getGeospatial_statistics()
      Optional statistics specific for Geometry and Geography logical types
    • setGeospatial_statistics

      public ColumnMetaData setGeospatial_statistics(GeospatialStatistics geospatial_statistics)
      Optional statistics specific for Geometry and Geography logical types
    • unsetGeospatial_statistics

      public void unsetGeospatial_statistics()
    • isSetGeospatial_statistics

      public boolean isSetGeospatial_statistics()
      Returns true if field geospatial_statistics is set (has been assigned a value) and false otherwise
    • setGeospatial_statisticsIsSet

      public void setGeospatial_statisticsIsSet(boolean value)
    • setFieldValue

      public void setFieldValue(ColumnMetaData._Fields field, Object value)
      Specified by:
      setFieldValue in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • getFieldValue

      public Object getFieldValue(ColumnMetaData._Fields field)
      Specified by:
      getFieldValue in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • isSet

      public boolean isSet(ColumnMetaData._Fields field)
      Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
      Specified by:
      isSet in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • equals

      public boolean equals(Object that)
      Overrides:
      equals in class Object
    • equals

      public boolean equals(ColumnMetaData that)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • compareTo

      public int compareTo(ColumnMetaData other)
      Specified by:
      compareTo in interface Comparable<ColumnMetaData>
    • fieldForId

      public ColumnMetaData._Fields fieldForId(int fieldId)
      Specified by:
      fieldForId in interface org.apache.thrift.TBase<ColumnMetaData,ColumnMetaData._Fields>
    • read

      public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException
      Specified by:
      read in interface org.apache.thrift.TSerializable
      Throws:
      org.apache.thrift.TException
    • write

      public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException
      Specified by:
      write in interface org.apache.thrift.TSerializable
      Throws:
      org.apache.thrift.TException
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • validate

      public void validate() throws org.apache.thrift.TException
      Throws:
      org.apache.thrift.TException