Struct DataFile

Source
pub struct DataFile { /* private fields */ }
Expand description

Data file carries data file path, partition tuple, metrics, …

Implementations§

Source§

impl DataFile

Source

pub fn content_type(&self) -> DataContentType

Get the content type of the data file (data, equality deletes, or position deletes)

Source

pub fn file_path(&self) -> &str

Get the file path as full URI with FS scheme

Source

pub fn file_format(&self) -> DataFileFormat

Get the file format of the file (avro, orc or parquet).

Source

pub fn partition(&self) -> &Struct

Get the partition values of the file.

Source

pub fn record_count(&self) -> u64

Get the record count in the data file.

Source

pub fn file_size_in_bytes(&self) -> u64

Get the file size in bytes.

Source

pub fn column_sizes(&self) -> &HashMap<i32, u64>

Get the column sizes. Map from column id to the total size on disk of all regions that store the column. Does not include bytes necessary to read other columns, like footers. Null for row-oriented formats (Avro)

Source

pub fn value_counts(&self) -> &HashMap<i32, u64>

Get the columns value counts for the data file. Map from column id to number of values in the column (including null and NaN values)

Source

pub fn null_value_counts(&self) -> &HashMap<i32, u64>

Get the null value counts of the data file. Map from column id to number of null values in the column

Source

pub fn nan_value_counts(&self) -> &HashMap<i32, u64>

Get the nan value counts of the data file. Map from column id to number of NaN values in the column

Source

pub fn lower_bounds(&self) -> &HashMap<i32, Datum>

Get the lower bounds of the data file values per column. Map from column id to lower bound in the column serialized as binary.

Source

pub fn upper_bounds(&self) -> &HashMap<i32, Datum>

Get the upper bounds of the data file values per column. Map from column id to upper bound in the column serialized as binary.

Source

pub fn key_metadata(&self) -> Option<&[u8]>

Get the Implementation-specific key metadata for the data file.

Source

pub fn split_offsets(&self) -> &[i64]

Get the split offsets of the data file. For example, all row group offsets in a Parquet file.

Source

pub fn equality_ids(&self) -> Option<Vec<i32>>

Get the equality ids of the data file. Field ids used to determine row equality in equality delete files. null when content is not EqualityDeletes.

Source

pub fn first_row_id(&self) -> Option<i64>

Get the first row id in the data file.

Source

pub fn sort_order_id(&self) -> Option<i32>

Get the sort order id of the data file. Only data files and equality delete files should be written with a non-null order id. Position deletes are required to be sorted by file and position, not a table order, and should set sort order id to null. Readers must ignore sort order id for position delete files.

Source

pub fn referenced_data_file(&self) -> Option<String>

Get the fully qualified referenced location for the corresponding data file. Positional delete files could have the field set, and deletion vectors must the field set.

Source

pub fn content_offset(&self) -> Option<i64>

Get the offset in the file where the blob content starts. Only meaningful for puffin blobs, and required for deletion vectors.

Source

pub fn content_size_in_bytes(&self) -> Option<i64>

Get the length of a puffin blob. Only meaningful for puffin blobs, and required for deletion vectors.

Trait Implementations§

Source§

impl Clone for DataFile

Source§

fn clone(&self) -> DataFile

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DataFile

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for DataFile

Source§

fn eq(&self, other: &DataFile) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for DataFile

Source§

impl StructuralPartialEq for DataFile

Auto Trait Implementations§

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
§

impl<T> AsAny for T
where T: Any,

§

fn as_any(&self) -> &(dyn Any + 'static)

§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

§

fn type_name(&self) -> &'static str

Gets the type name of self
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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> Downcast for T
where T: AsAny + ?Sized,

§

fn is<T>(&self) -> bool
where T: AsAny,

Returns true if the boxed type is the same as T. Read more
§

fn downcast_ref<T>(&self) -> Option<&T>
where T: AsAny,

Forward to the method defined on the type Any.
§

fn downcast_mut<T>(&mut self) -> Option<&mut T>
where T: AsAny,

Forward to the method defined on the type Any.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. 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
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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> MaybeSend for T
where T: Send,