pub struct Stripe { /* private fields */ }Implementations§
Source§impl Stripe
impl Stripe
pub fn new<R: ChunkReader>( reader: &mut R, file_metadata: &FileMetadata, projected_data_type: &RootDataType, info: &StripeMetadata, ) -> Result<Self>
pub async fn new_async<R: AsyncChunkReader>( reader: &mut R, file_metadata: &FileMetadata, projected_data_type: &RootDataType, info: &StripeMetadata, ) -> Result<Self>
pub fn number_of_rows(&self) -> usize
pub fn stream_map(&self) -> &StreamMap
pub fn columns(&self) -> &[Column]
pub fn writer_tz(&self) -> Option<Tz>
Sourcepub fn read_row_indexes(
&self,
file_metadata: &FileMetadata,
) -> Result<StripeRowIndex>
pub fn read_row_indexes( &self, file_metadata: &FileMetadata, ) -> Result<StripeRowIndex>
Parse row indexes from the stripe index section
According to ORC spec, row indexes are only loaded when predicate pushdown is used or when seeking to a particular row. This function performs lazy parsing of ROW_INDEX streams from the stripe’s index section.
§Arguments
file_metadata- File metadata containing row_index_stride
§Returns
Ok(StripeRowIndex)- Parsed row indexes for all primitive columnsErr(OrcError)- If parsing fails or row_index_stride is not available
§Example
let row_index = stripe.read_row_indexes(file_metadata)?;
// Access statistics for each row group
if let Some(col_index) = row_index.column(0) {
for row_group_idx in 0..col_index.num_row_groups() {
if let Some(stats) = col_index.row_group_stats(row_group_idx) {
println!("Row group {}: {:?}", row_group_idx, stats);
}
}
}Trait Implementations§
Auto Trait Implementations§
impl Freeze for Stripe
impl RefUnwindSafe for Stripe
impl Send for Stripe
impl Sync for Stripe
impl Unpin for Stripe
impl UnsafeUnpin for Stripe
impl UnwindSafe for Stripe
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