iceberg::arrow

Struct ArrowFileReader

Source
pub struct ArrowFileReader<R: FileRead> { /* private fields */ }
Expand description

ArrowFileReader is a wrapper around a FileRead that impls parquets AsyncFileReader.

Implementations§

Source§

impl<R: FileRead> ArrowFileReader<R>

Source

pub fn new(meta: FileMetadata, r: R) -> Self

Create a new ArrowFileReader

Source

pub fn with_preload_column_index(self, preload: bool) -> Self

Enable or disable preloading of the column index

Source

pub fn with_preload_offset_index(self, preload: bool) -> Self

Enable or disable preloading of the offset index

Source

pub fn with_metadata_size_hint(self, hint: usize) -> Self

Provide a hint as to the number of bytes to prefetch for parsing the Parquet metadata

This hint can help reduce the number of fetch requests. For more details see the ParquetMetaDataReader documentation.

Trait Implementations§

Source§

impl<R: FileRead> AsyncFileReader for ArrowFileReader<R>

Source§

fn get_bytes(&mut self, range: Range<usize>) -> BoxFuture<'_, Result<Bytes>>

Retrieve the bytes in range
Source§

fn get_metadata(&mut self) -> BoxFuture<'_, Result<Arc<ParquetMetaData>>>

Provides asynchronous access to the [ParquetMetaData] of a parquet file, allowing fine-grained control over how metadata is sourced, in particular allowing for caching, pre-fetching, catalog metadata, etc…
§

fn get_byte_ranges( &mut self, ranges: Vec<Range<usize>>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>, ParquetError>> + Send + '_>>

Retrieve multiple byte ranges. The default implementation will call get_bytes sequentially

Auto Trait Implementations§

§

impl<R> Freeze for ArrowFileReader<R>
where R: Freeze,

§

impl<R> RefUnwindSafe for ArrowFileReader<R>
where R: RefUnwindSafe,

§

impl<R> Send for ArrowFileReader<R>

§

impl<R> Sync for ArrowFileReader<R>
where R: Sync,

§

impl<R> Unpin for ArrowFileReader<R>

§

impl<R> UnwindSafe for ArrowFileReader<R>
where R: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSend for T
where T: Send,

§

impl<T> MaybeSendSync for T