pub struct CellReader { /* private fields */ }Expand description
Reads Parquet cells from object storage into Arrow RecordBatches.
Implementations§
Source§impl CellReader
impl CellReader
Sourcepub fn new(storage: Arc<dyn StorageBackend>, frame_path: String) -> Self
pub fn new(storage: Arc<dyn StorageBackend>, frame_path: String) -> Self
Create a new CellReader.
Sourcepub async fn read_cell(
&self,
cell: &CellMetadata,
projection: Option<&[String]>,
) -> Result<Vec<RecordBatch>>
pub async fn read_cell( &self, cell: &CellMetadata, projection: Option<&[String]>, ) -> Result<Vec<RecordBatch>>
Read a single cell from storage. Returns all record batches in the cell.
If projection is Some, only the specified columns are read (projection pushdown).
Sourcepub async fn read_cells(
&self,
cells: &[&CellMetadata],
projection: Option<&[String]>,
) -> Result<Vec<RecordBatch>>
pub async fn read_cells( &self, cells: &[&CellMetadata], projection: Option<&[String]>, ) -> Result<Vec<RecordBatch>>
Read multiple cells and concatenate them into a single list of RecordBatches.
Sourcepub async fn read_cells_merged(
&self,
cells: &[&CellMetadata],
projection: Option<&[String]>,
) -> Result<Option<RecordBatch>>
pub async fn read_cells_merged( &self, cells: &[&CellMetadata], projection: Option<&[String]>, ) -> Result<Option<RecordBatch>>
Read cells and merge them into a single RecordBatch.
Auto Trait Implementations§
impl Freeze for CellReader
impl !RefUnwindSafe for CellReader
impl Send for CellReader
impl Sync for CellReader
impl Unpin for CellReader
impl UnsafeUnpin for CellReader
impl !UnwindSafe for CellReader
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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