Expand description
Logic for selecting which rows to read: RowSelection and RowSelector
This module holds RowSelection and its public API, which dispatches to
one of the two backings depending on how the selection is stored:
selector: the run length backing,RowSelectorand its primitivesboolean: the bitmap backing,MaskSelectionand its primitives
The remaining modules hold the operations that are common to both:
algebra:and_then,intersectionandunionranges: mapping aRowSelectiononto page and batch rangescursor: iterating aRowSelectionwhile reading
Re-exportsยง
pub use boolean::MaskRunIter;pub use cursor::RowSelectionCursor;pub use cursor::RowSelectionPolicy;pub use selector::RowSelector;
Modulesยง
- algebra ๐
- Set algebra backing
RowSelection::and_then,RowSelection::intersectionandRowSelection::union - boolean ๐
- The bitmap backed representation of a
RowSelectionand the primitives operating on it: conversion to and from the run length (RowSelector) form, and the transforms backingsplit_off,trim,offsetandlimit. - cursor ๐
- Execution time iteration over a
RowSelection. - ranges ๐
- Mapping the
RowSelectorruns of a selection onto ranges: the byte ranges of the data pages that must be fetched (RowSelection::scan_ranges) and the expansion of a selection to batch boundaries. - selector ๐
- The run length backed representation of a
RowSelection:RowSelectorand the primitives operating on a sequence of them.
Structsยง
- RowSelection
RowSelectionrepresents selecting a subset of rows when scanning a parquet file.
Enumsยง
- RowSelection
Inner ๐ - Internal storage for
RowSelection.
Functionsยง
- append_
normalized_ ๐selector - Appends a selector while maintaining the normalized selector invariants.
- auto_
min_ ๐mask_ runs - Returns the minimum normalized run count for which the Auto selection policy would prefer a mask to RLE.
- filters_
to_ ๐boolean_ buffer - selectors_
below_ ๐run_ limit - Builds normalized selectors while their run count remains below
min_mask_runs. ReturningNonedrops the partial selector allocation before the caller constructs a mask.