iceberg::scan

Struct TableScanBuilder

Source
pub struct TableScanBuilder<'a> { /* private fields */ }
Expand description

Builder to create table scan.

Implementations§

Source§

impl<'a> TableScanBuilder<'a>

Source

pub fn with_batch_size(self, batch_size: Option<usize>) -> Self

Sets the desired size of batches in the response to something other than the default

Source

pub fn with_case_sensitive(self, case_sensitive: bool) -> Self

Sets the scan’s case sensitivity

Source

pub fn with_filter(self, predicate: Predicate) -> Self

Specifies a predicate to use as a filter

Source

pub fn select_all(self) -> Self

Select all columns.

Source

pub fn select_empty(self) -> Self

Select empty columns.

Source

pub fn select( self, column_names: impl IntoIterator<Item = impl ToString>, ) -> Self

Select some columns of the table.

Source

pub fn snapshot_id(self, snapshot_id: i64) -> Self

Set the snapshot to scan. When not set, it uses current snapshot.

Source

pub fn with_concurrency_limit(self, limit: usize) -> Self

Sets the concurrency limit for both manifest files and manifest entries for this scan

Source

pub fn with_data_file_concurrency_limit(self, limit: usize) -> Self

Sets the data file concurrency limit for this scan

Source

pub fn with_manifest_entry_concurrency_limit(self, limit: usize) -> Self

Sets the manifest entry concurrency limit for this scan

Source

pub fn with_row_group_filtering_enabled( self, row_group_filtering_enabled: bool, ) -> Self

Determines whether to enable row group filtering. When enabled, if a read is performed with a filter predicate, then the metadata for each row group in the parquet file is evaluated against the filter predicate and row groups that cant contain matching rows will be skipped entirely.

Defaults to enabled, as it generally improves performance or keeps it the same, with performance degradation unlikely.

Source

pub fn with_row_selection_enabled(self, row_selection_enabled: bool) -> Self

Determines whether to enable row selection. When enabled, if a read is performed with a filter predicate, then (for row groups that have not been skipped) the page index for each row group in a parquet file is parsed and evaluated against the filter predicate to determine if ranges of rows within a row group can be skipped, based upon the page-level statistics for each column.

Defaults to being disabled. Enabling requires parsing the parquet page index, which can be slow enough that parsing the page index outweighs any gains from the reduced number of rows that need scanning. It is recommended to experiment with partitioning, sorting, row group size, page size, and page row limit Iceberg settings on the table being scanned in order to get the best performance from using row selection.

Source

pub fn with_delete_file_processing_enabled( self, delete_file_processing_enabled: bool, ) -> Self

Determines whether to enable delete file processing (currently disabled by default)

When disabled, delete files are ignored.

Source

pub fn build(self) -> Result<TableScan>

Build the table scan.

Auto Trait Implementations§

§

impl<'a> Freeze for TableScanBuilder<'a>

§

impl<'a> !RefUnwindSafe for TableScanBuilder<'a>

§

impl<'a> Send for TableScanBuilder<'a>

§

impl<'a> Sync for TableScanBuilder<'a>

§

impl<'a> Unpin for TableScanBuilder<'a>

§

impl<'a> !UnwindSafe for TableScanBuilder<'a>

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> ErasedDestructor for T
where T: 'static,

§

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

§

impl<T> MaybeSendSync for T