Struct lance_file::format::pb::Metadata
source · pub struct Metadata {
pub manifest_position: u64,
pub batch_offsets: Vec<i32>,
pub page_table_position: u64,
pub statistics: Option<StatisticsMetadata>,
}Expand description
Metadata of one Lance file.
Fields§
§manifest_position: u64Position of the manifest in the file. If it is zero, the manifest is stored externally.
batch_offsets: Vec<i32>Logical offsets of each chunk group, i.e., number of the rows in each chunk.
page_table_position: u64The file position that page table is stored.
A page table is a matrix of N x M x 2, where N = num_fields, and M = num_batches. Each cell in the table is a pair of <position:int64, length:int64> of the page. Both position and length are int64 values. The <position, length> of all the pages in the same column are then contiguously stored.
Every field that is a part of the file will have a run in the page table. This includes struct columns, which will have a run of length 0 since they don’t store any actual data.
For example, for the column 5 and batch 4, we have:
position = page_table[5][4][0];
length = page_table[5][4][1];
statistics: Option<StatisticsMetadata>Trait Implementations§
source§impl Message for Metadata
impl Message for Metadata
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self. Read moresource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self.