Trait deltalake::datafusion::parquet::file::reader::RowGroupReader

source ·
pub trait RowGroupReader: Send + Sync {
    // Required methods
    fn metadata(&self) -> &RowGroupMetaData;
    fn num_columns(&self) -> usize;
    fn get_column_page_reader(
        &self,
        i: usize
    ) -> Result<Box<dyn PageReader<Item = Result<Page, ParquetError>>>, ParquetError>;
    fn get_column_bloom_filter(&self, i: usize) -> Option<&Sbbf>;
    fn get_row_iter(
        &self,
        projection: Option<Type>
    ) -> Result<RowIter<'_>, ParquetError>;

    // Provided method
    fn get_column_reader(&self, i: usize) -> Result<ColumnReader, ParquetError> { ... }
}
Expand description

Parquet row group reader API. With this, user can get metadata information about the row group, as well as readers for each individual column chunk.

Required Methods§

source

fn metadata(&self) -> &RowGroupMetaData

Get metadata information about this row group.

source

fn num_columns(&self) -> usize

Get the total number of column chunks in this row group.

source

fn get_column_page_reader( &self, i: usize ) -> Result<Box<dyn PageReader<Item = Result<Page, ParquetError>>>, ParquetError>

Get page reader for the ith column chunk.

source

fn get_column_bloom_filter(&self, i: usize) -> Option<&Sbbf>

Get bloom filter for the ith column chunk, if present and the reader was configured to read bloom filters.

source

fn get_row_iter( &self, projection: Option<Type> ) -> Result<RowIter<'_>, ParquetError>

Get an iterator over the row in this file, see RowIter for caveats.

Projected schema can be a subset of or equal to the file schema, when it is None, full file schema is assumed.

Provided Methods§

source

fn get_column_reader(&self, i: usize) -> Result<ColumnReader, ParquetError>

Get value reader for the ith column chunk.

Implementors§

source§

impl<'a, R> RowGroupReader for SerializedRowGroupReader<'a, R>
where R: 'static + ChunkReader,