Skip to main content

Module statistics

Module statistics 

Source
Expand description

StatisticsConverter to convert statistics in parquet format to arrow [ArrayRef].

Re-exportsΒ§

use crate::arrow::buffer::bit_util::sign_extend_be; πŸ”’
use crate::arrow::parquet_column; πŸ”’
use crate::basic::ColumnOrder; πŸ”’
use crate::basic::Type as PhysicalType; πŸ”’
use crate::data_type::Int96; πŸ”’
use crate::errors::ParquetError; πŸ”’
use crate::errors::Result; πŸ”’
use crate::file::metadata::RowGroupMetaData; πŸ”’
use crate::file::metadata::page_index::PageIndexProvider; πŸ”’
use crate::file::page_index::column_index::ColumnIndexMetaData; πŸ”’
use crate::file::statistics::Statistics as ParquetStatistics; πŸ”’
use crate::schema::types::SchemaDescriptor; πŸ”’
use arrow_array::builder::BinaryBuilder; πŸ”’
use arrow_array::builder::BinaryViewBuilder; πŸ”’
use arrow_array::builder::BooleanBuilder; πŸ”’
use arrow_array::builder::Date32Builder; πŸ”’
use arrow_array::builder::Date64Builder; πŸ”’
use arrow_array::builder::Decimal32Builder; πŸ”’
use arrow_array::builder::Decimal64Builder; πŸ”’
use arrow_array::builder::FixedSizeBinaryBuilder; πŸ”’
use arrow_array::builder::Float16Builder; πŸ”’
use arrow_array::builder::Float32Builder; πŸ”’
use arrow_array::builder::Float64Builder; πŸ”’
use arrow_array::builder::Int8Builder; πŸ”’
use arrow_array::builder::Int16Builder; πŸ”’
use arrow_array::builder::Int32Builder; πŸ”’
use arrow_array::builder::Int64Builder; πŸ”’
use arrow_array::builder::LargeBinaryBuilder; πŸ”’
use arrow_array::builder::LargeStringBuilder; πŸ”’
use arrow_array::builder::StringBuilder; πŸ”’
use arrow_array::builder::StringViewBuilder; πŸ”’
use arrow_array::builder::Time32MillisecondBuilder; πŸ”’
use arrow_array::builder::Time32SecondBuilder; πŸ”’
use arrow_array::builder::Time64MicrosecondBuilder; πŸ”’
use arrow_array::builder::Time64NanosecondBuilder; πŸ”’
use arrow_array::builder::TimestampMicrosecondBuilder; πŸ”’
use arrow_array::builder::TimestampMillisecondBuilder; πŸ”’
use arrow_array::builder::TimestampNanosecondBuilder; πŸ”’
use arrow_array::builder::TimestampSecondBuilder; πŸ”’
use arrow_array::builder::UInt8Builder; πŸ”’
use arrow_array::builder::UInt16Builder; πŸ”’
use arrow_array::builder::UInt32Builder; πŸ”’
use arrow_array::builder::UInt64Builder; πŸ”’
use arrow_array::ArrayRef; πŸ”’
use arrow_array::BinaryArray; πŸ”’
use arrow_array::BooleanArray; πŸ”’
use arrow_array::Date32Array; πŸ”’
use arrow_array::Date64Array; πŸ”’
use arrow_array::Decimal32Array; πŸ”’
use arrow_array::Decimal64Array; πŸ”’
use arrow_array::Decimal128Array; πŸ”’
use arrow_array::Decimal256Array; πŸ”’
use arrow_array::Float16Array; πŸ”’
use arrow_array::Float32Array; πŸ”’
use arrow_array::Float64Array; πŸ”’
use arrow_array::Int8Array; πŸ”’
use arrow_array::Int16Array; πŸ”’
use arrow_array::Int32Array; πŸ”’
use arrow_array::Int64Array; πŸ”’
use arrow_array::LargeBinaryArray; πŸ”’
use arrow_array::Time32MillisecondArray; πŸ”’
use arrow_array::Time32SecondArray; πŸ”’
use arrow_array::Time64MicrosecondArray; πŸ”’
use arrow_array::Time64NanosecondArray; πŸ”’
use arrow_array::TimestampMicrosecondArray; πŸ”’
use arrow_array::TimestampMillisecondArray; πŸ”’
use arrow_array::TimestampNanosecondArray; πŸ”’
use arrow_array::TimestampSecondArray; πŸ”’
use arrow_array::UInt8Array; πŸ”’
use arrow_array::UInt16Array; πŸ”’
use arrow_array::UInt32Array; πŸ”’
use arrow_array::UInt64Array; πŸ”’
use arrow_array::new_null_array; πŸ”’
use arrow_buffer::NullBufferBuilder; πŸ”’
use arrow_buffer::i256; πŸ”’
use arrow_schema::DataType; πŸ”’
use arrow_schema::Field; πŸ”’
use arrow_schema::Schema; πŸ”’
use arrow_schema::TimeUnit; πŸ”’
use half::f16; πŸ”’
use std::sync::Arc; πŸ”’

MacrosΒ§

get_data_page_statistics πŸ”’
get_statistics πŸ”’
Special macro to combine the statistics iterators for min and max. This is used to avoid repeating the same code for min and max statistics extractions
make_decimal_stats_iterator πŸ”’
Special iterator adapter for extracting i128 values from an iterator of ParquetStatistics
make_stats_iterator πŸ”’
Define an adapter iterator for extracting statistics from an iterator of ParquetStatistics
make_timestamp_stats_iterator πŸ”’
Extract timestamp bounds from INT64 or non-deprecated INT96 statistics.

StructsΒ§

MaxBooleanStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxByteArrayStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxDecimal32StatsIterator πŸ”’
MaxDecimal64StatsIterator πŸ”’
MaxDecimal128StatsIterator πŸ”’
MaxDecimal256StatsIterator πŸ”’
MaxDoubleStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxFixedLenByteArrayStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxFloatStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxInt32StatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxInt64StatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MaxTimestampStatsIterator πŸ”’
MinBooleanStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinByteArrayStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinDecimal32StatsIterator πŸ”’
MinDecimal64StatsIterator πŸ”’
MinDecimal128StatsIterator πŸ”’
MinDecimal256StatsIterator πŸ”’
MinDoubleStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinFixedLenByteArrayStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinFloatStatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinInt32StatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinInt64StatsIterator πŸ”’
Maps an iterator of ParquetStatistics into an iterator of &$stat_value_type
MinTimestampStatsIterator πŸ”’
StatisticsConverter
Extracts Parquet statistics as Arrow arrays

FunctionsΒ§

from_bytes_to_f16 πŸ”’
from_bytes_to_i32 πŸ”’
from_bytes_to_i64 πŸ”’
from_bytes_to_i128 πŸ”’
from_bytes_to_i256 πŸ”’
int96_statistics πŸ”’
Convert both bounds together: if either wraps in the reader’s timestamp unit, neither bound can safely describe the decoded values.
max_page_statistics πŸ”’
Extracts the max statistics from an iterator of parquet page ColumnIndexMetaData’s to an [ArrayRef]
max_statistics πŸ”’
Extracts the max statistics from an iterator of ParquetStatistics to an [ArrayRef]
min_page_statistics πŸ”’
Extracts the min statistics from an iterator of parquet page ColumnIndexMetaData’s to an [ArrayRef]
min_statistics πŸ”’
Extracts the min statistics from an iterator of ParquetStatistics to an [ArrayRef]
nan_counts_page_statistics πŸ”’
Extracts the NaN count statistics from an iterator of parquet page ColumnIndexMetaData’s to an [ArrayRef]
null_counts_page_statistics πŸ”’
Extracts the null count statistics from an iterator of parquet page ColumnIndexMetaData’s to an [ArrayRef]