pub struct ColumnMetaData {Show 16 fields
pub type_: Type,
pub encodings: Vec<Encoding>,
pub path_in_schema: Vec<String>,
pub codec: CompressionCodec,
pub num_values: i64,
pub total_uncompressed_size: i64,
pub total_compressed_size: i64,
pub key_value_metadata: Option<Vec<KeyValue>>,
pub data_page_offset: i64,
pub index_page_offset: Option<i64>,
pub dictionary_page_offset: Option<i64>,
pub statistics: Option<Statistics>,
pub encoding_stats: Option<Vec<PageEncodingStats>>,
pub bloom_filter_offset: Option<i64>,
pub bloom_filter_length: Option<i32>,
pub size_statistics: Option<SizeStatistics>,
}
Expand description
Description for column metadata
Fields§
§type_: Type
Type of this column *
encodings: Vec<Encoding>
Set of all encodings used for this column. The purpose is to validate whether we can decode those pages. *
path_in_schema: Vec<String>
Path in schema *
codec: CompressionCodec
Compression codec *
num_values: i64
Number of values in this column *
total_uncompressed_size: i64
total byte size of all uncompressed pages in this column chunk (including the headers) *
total_compressed_size: i64
total byte size of all compressed, and potentially encrypted, pages in this column chunk (including the headers) *
key_value_metadata: Option<Vec<KeyValue>>
Optional key/value metadata *
data_page_offset: i64
Byte offset from beginning of file to first data page *
index_page_offset: Option<i64>
Byte offset from beginning of file to root index page *
dictionary_page_offset: Option<i64>
Byte offset from the beginning of file to first (only) dictionary page *
statistics: Option<Statistics>
optional statistics for this column chunk
encoding_stats: Option<Vec<PageEncodingStats>>
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: Option<i64>
Byte offset from beginning of file to Bloom filter data. *
bloom_filter_length: Option<i32>
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: Option<SizeStatistics>
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.
Implementations§
Source§impl ColumnMetaData
impl ColumnMetaData
pub fn new<F8, F10, F11, F12, F13, F14, F15, F16>( type_: Type, encodings: Vec<Encoding>, path_in_schema: Vec<String>, codec: CompressionCodec, num_values: i64, total_uncompressed_size: i64, total_compressed_size: i64, key_value_metadata: F8, data_page_offset: i64, index_page_offset: F10, dictionary_page_offset: F11, statistics: F12, encoding_stats: F13, bloom_filter_offset: F14, bloom_filter_length: F15, size_statistics: F16, ) -> ColumnMetaData
Trait Implementations§
Source§impl Clone for ColumnMetaData
impl Clone for ColumnMetaData
Source§fn clone(&self) -> ColumnMetaData
fn clone(&self) -> ColumnMetaData
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ColumnMetaData
impl Debug for ColumnMetaData
Source§impl Hash for ColumnMetaData
impl Hash for ColumnMetaData
Source§impl Ord for ColumnMetaData
impl Ord for ColumnMetaData
Source§fn cmp(&self, other: &ColumnMetaData) -> Ordering
fn cmp(&self, other: &ColumnMetaData) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for ColumnMetaData
impl PartialEq for ColumnMetaData
Source§impl PartialOrd for ColumnMetaData
impl PartialOrd for ColumnMetaData
Source§impl TSerializable for ColumnMetaData
impl TSerializable for ColumnMetaData
Source§fn read_from_in_protocol<T: TInputProtocol>(
i_prot: &mut T,
) -> Result<ColumnMetaData>
fn read_from_in_protocol<T: TInputProtocol>( i_prot: &mut T, ) -> Result<ColumnMetaData>
Source§fn write_to_out_protocol<T: TOutputProtocol>(
&self,
o_prot: &mut T,
) -> Result<()>
fn write_to_out_protocol<T: TOutputProtocol>( &self, o_prot: &mut T, ) -> Result<()>
impl Eq for ColumnMetaData
impl StructuralPartialEq for ColumnMetaData
Auto Trait Implementations§
impl Freeze for ColumnMetaData
impl RefUnwindSafe for ColumnMetaData
impl Send for ColumnMetaData
impl Sync for ColumnMetaData
impl Unpin for ColumnMetaData
impl UnwindSafe for ColumnMetaData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more