pub struct DataFile { /* private fields */ }Expand description
Data file carries data file path, partition tuple, metrics, …
Implementations§
Source§impl DataFile
impl DataFile
Sourcepub fn content_type(&self) -> DataContentType
pub fn content_type(&self) -> DataContentType
Get the content type of the data file (data, equality deletes, or position deletes)
Sourcepub fn file_format(&self) -> DataFileFormat
pub fn file_format(&self) -> DataFileFormat
Get the file format of the file (avro, orc or parquet).
Sourcepub fn record_count(&self) -> u64
pub fn record_count(&self) -> u64
Get the record count in the data file.
Sourcepub fn file_size_in_bytes(&self) -> u64
pub fn file_size_in_bytes(&self) -> u64
Get the file size in bytes.
Sourcepub fn column_sizes(&self) -> &HashMap<i32, u64>
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)
Sourcepub fn value_counts(&self) -> &HashMap<i32, u64>
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)
Sourcepub fn null_value_counts(&self) -> &HashMap<i32, u64>
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
Sourcepub fn nan_value_counts(&self) -> &HashMap<i32, u64>
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
Sourcepub fn lower_bounds(&self) -> &HashMap<i32, Datum>
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.
Sourcepub fn upper_bounds(&self) -> &HashMap<i32, Datum>
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.
Sourcepub fn key_metadata(&self) -> Option<&[u8]>
pub fn key_metadata(&self) -> Option<&[u8]>
Get the Implementation-specific key metadata for the data file.
Sourcepub fn split_offsets(&self) -> &[i64]
pub fn split_offsets(&self) -> &[i64]
Get the split offsets of the data file. For example, all row group offsets in a Parquet file.
Sourcepub fn equality_ids(&self) -> Option<Vec<i32>>
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.
Sourcepub fn first_row_id(&self) -> Option<i64>
pub fn first_row_id(&self) -> Option<i64>
Get the first row id in the data file.
Sourcepub fn sort_order_id(&self) -> Option<i32>
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.
Sourcepub fn referenced_data_file(&self) -> Option<String>
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.
Sourcepub fn content_offset(&self) -> Option<i64>
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.
Sourcepub fn content_size_in_bytes(&self) -> Option<i64>
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§
impl Eq for DataFile
impl StructuralPartialEq for DataFile
Auto Trait Implementations§
impl Freeze for DataFile
impl RefUnwindSafe for DataFile
impl Send for DataFile
impl Sync for DataFile
impl Unpin for DataFile
impl UnwindSafe for DataFile
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Any.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Any.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§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> ⓘ
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> ⓘ
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