pub(crate) struct InMemoryRowGroup<'a> {
pub(crate) offset_index: Option<&'a [OffsetIndexMetaData]>,
pub(crate) column_chunks: Vec<Option<Arc<ColumnChunkData>>>,
pub(crate) row_count: usize,
pub(crate) row_group_idx: usize,
pub(crate) metadata: &'a ParquetMetaData,
}Expand description
An in-memory collection of column chunks
Fields§
§offset_index: Option<&'a [OffsetIndexMetaData]>§column_chunks: Vec<Option<Arc<ColumnChunkData>>>Column chunks for this row group
row_count: usize§row_group_idx: usize§metadata: &'a ParquetMetaDataImplementations§
Source§impl InMemoryRowGroup<'_>
impl InMemoryRowGroup<'_>
Sourcepub(crate) fn fetch_ranges(
&self,
projection: &ProjectionMask,
selection: Option<&RowSelection>,
batch_size: usize,
cache_mask: Option<&ProjectionMask>,
) -> FetchRanges
pub(crate) fn fetch_ranges( &self, projection: &ProjectionMask, selection: Option<&RowSelection>, batch_size: usize, cache_mask: Option<&ProjectionMask>, ) -> FetchRanges
Returns the byte ranges to fetch for the columns specified in
projection and selection.
cache_mask indicates which columns, if any, are being cached by
RowGroupCache.
The selection for Cached columns is expanded to batch boundaries to simplify
accounting for what data is cached.
Sourcepub(crate) fn fill_column_chunks<I>(
&mut self,
projection: &ProjectionMask,
page_start_offsets: Option<Vec<Vec<u64>>>,
chunk_data: I,
)where
I: IntoIterator<Item = Bytes>,
pub(crate) fn fill_column_chunks<I>(
&mut self,
projection: &ProjectionMask,
page_start_offsets: Option<Vec<Vec<u64>>>,
chunk_data: I,
)where
I: IntoIterator<Item = Bytes>,
Fills in self.column_chunks with the data fetched from chunk_data.
This function must be called with the data from the ranges returned by
fetch_ranges and the corresponding page_start_offsets, with the exact same and selection.
Trait Implementations§
Source§impl<'a> Debug for InMemoryRowGroup<'a>
impl<'a> Debug for InMemoryRowGroup<'a>
Source§impl RowGroups for InMemoryRowGroup<'_>
impl RowGroups for InMemoryRowGroup<'_>
Source§fn column_chunks(&self, i: usize) -> Result<Box<dyn PageIterator>>
fn column_chunks(&self, i: usize) -> Result<Box<dyn PageIterator>>
Return chunks for column i
Source§fn row_groups(&self) -> Box<dyn Iterator<Item = &RowGroupMetaData> + '_>
fn row_groups(&self) -> Box<dyn Iterator<Item = &RowGroupMetaData> + '_>
Returns an iterator over the row groups in this collection Read more
Source§fn metadata(&self) -> &ParquetMetaData
fn metadata(&self) -> &ParquetMetaData
Returns the parquet metadata
Auto Trait Implementations§
impl<'a> Freeze for InMemoryRowGroup<'a>
impl<'a> !RefUnwindSafe for InMemoryRowGroup<'a>
impl<'a> Send for InMemoryRowGroup<'a>
impl<'a> Sync for InMemoryRowGroup<'a>
impl<'a> Unpin for InMemoryRowGroup<'a>
impl<'a> !UnwindSafe for InMemoryRowGroup<'a>
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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