pub struct CachedFileMetadata {Show 13 fields
pub file_schema: Arc<Schema>,
pub column_metadatas: Vec<ColumnMetadata>,
pub column_infos: Vec<Arc<ColumnInfo>>,
pub num_rows: u64,
pub file_buffers: Vec<BufferDescriptor>,
pub num_data_bytes: u64,
pub num_column_metadata_bytes: u64,
pub num_global_buffer_bytes: u64,
pub num_footer_bytes: u64,
pub major_version: u16,
pub minor_version: u16,
pub file_size_bytes: u64,
pub retained_global_buffers: BTreeMap<u32, Bytes>,
}Fields§
§file_schema: Arc<Schema>The schema of the file
column_metadatas: Vec<ColumnMetadata>The column metadatas
column_infos: Vec<Arc<ColumnInfo>>§num_rows: u64The number of rows in the file
file_buffers: Vec<BufferDescriptor>§num_data_bytes: u64The number of bytes contained in the data page section of the file
num_column_metadata_bytes: u64The number of bytes contained in the column metadata (not including buffers referenced by the metadata)
num_global_buffer_bytes: u64The number of bytes contained in global buffers
The number of bytes contained in the CMO and GBO tables
major_version: u16§minor_version: u16§file_size_bytes: u64The actual total file size in bytes, as reported by the object store.
retained_global_buffers: BTreeMap<u32, Bytes>User global buffers (index >= 1) whose bytes were already captured by the
tail read that read_all_metadata performs at open, keyed by buffer index.
All global buffers are laid out contiguously starting at the schema, so on
small/medium files they land inside the captured tail window. Retaining
those bytes lets read_global_buffer serve them with zero additional I/O.
The bytes are copied out of the tail (rather than sliced) so the much
larger tail allocation can be dropped — we only hold what we will serve.
The schema (buffer 0) is excluded: it is already decoded at open and is
not fetched through read_global_buffer. Buffers that fall outside the
window (large files) are absent here and fall back to a dedicated read.
Implementations§
Source§impl CachedFileMetadata
impl CachedFileMetadata
pub fn version(&self) -> LanceFileVersion
Trait Implementations§
Source§impl Debug for CachedFileMetadata
impl Debug for CachedFileMetadata
Source§impl DeepSizeOf for CachedFileMetadata
impl DeepSizeOf for CachedFileMetadata
fn deep_size_of_children(&self, context: &mut Context) -> usize
fn deep_size_of(&self) -> usize
Auto Trait Implementations§
impl !RefUnwindSafe for CachedFileMetadata
impl !UnwindSafe for CachedFileMetadata
impl Freeze for CachedFileMetadata
impl Send for CachedFileMetadata
impl Sync for CachedFileMetadata
impl Unpin for CachedFileMetadata
impl UnsafeUnpin for CachedFileMetadata
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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