pub struct CachedParquetFileReaderFactory {
store: Arc<dyn ObjectStore>,
metadata_cache: Arc<dyn FileMetadataCache>,
}Expand description
Implementation of ParquetFileReaderFactory supporting the caching of footer and page
metadata. Reads and updates the [FileMetadataCache] with the [ParquetMetaData] data.
This reader always loads the entire metadata (including page index, unless the file is
encrypted), even if not required by the current query, to ensure it is always available for
those that need it.
Fields§
§store: Arc<dyn ObjectStore>§metadata_cache: Arc<dyn FileMetadataCache>Implementations§
Trait Implementations§
Source§impl ParquetFileReaderFactory for CachedParquetFileReaderFactory
impl ParquetFileReaderFactory for CachedParquetFileReaderFactory
Source§fn create_reader(
&self,
partition_index: usize,
partitioned_file: PartitionedFile,
metadata_size_hint: Option<usize>,
metrics: &ExecutionPlanMetricsSet,
) -> Result<Box<dyn AsyncFileReader + Send>>
fn create_reader( &self, partition_index: usize, partitioned_file: PartitionedFile, metadata_size_hint: Option<usize>, metrics: &ExecutionPlanMetricsSet, ) -> Result<Box<dyn AsyncFileReader + Send>>
Provides an
AsyncFileReader for reading data from a parquet file specified Read moreAuto Trait Implementations§
impl Freeze for CachedParquetFileReaderFactory
impl !RefUnwindSafe for CachedParquetFileReaderFactory
impl Send for CachedParquetFileReaderFactory
impl Sync for CachedParquetFileReaderFactory
impl Unpin for CachedParquetFileReaderFactory
impl !UnwindSafe for CachedParquetFileReaderFactory
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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