ArrayBuilderImpl: enum of ArrayBuilder
ArrayBuilderImpl: enum of ArrayBuilder
ArrayBuilder traittype Array: Array<Builder = Self>fn push(&mut self, value: Option<&<Self::Array>::Item>);fn append(&mut self, other: &Self::Array);fn finish(mut self) -> Self::Array;
ArrayImpl: enum of Array
ArrayImpl: enum of Array
Array traittype Builder: ArrayBuilder<Array=Self>fn iter(&self) -> ArrayIter<'_, Self>DataChunkarrays: Arc<[ArrayImpl]>impl FromIterator<ArrayImpl> for DataChunk { ... }impl FromIterator<ArrayBuilderImpl> for DataChunk { ... }
DataChunkBuilder
DataChunkBuilder
arrays_builders: Vec<ArrayBuilderImpl>
fn push_row(&mut self, row: impl IntoIterator<Item = DataValue>) -> Option<DataChunk>;
fn take(&mut self) -> Option<DataChunk>;
fn push_row(&mut self, row: impl IntoIterator<Item = Da...
MemTable traitfn append(&mut self, columns: DataChunk) -> StorageResult<()>;fn flush(self) -> StorageResult<DataChunk>;
SecondaryMemRowset<M: MemTable>
SecondaryMemRowset<M: MemTable>
mem_table: Mrowset_id: u32,rowset_builder: RowsetBuilder,
async fn append(&mut self, columns: DataChunk) -> StorageResult<()>;
async fn flush(self, io_backend: IOBackend, directory: impl AsRef<Path>) -> StorageResult<()>; // flushes EncodedRowset to disk

async fn append(&mut self, columns: DataChunk) -> StorageResult<(...
RowsetBuilder
RowsetBuilder
columns: Arc<[ColumnCatalog]>builders: Vec<ColumnBuilderImpl>...
fn append(&mut self, chunk: DataChunk);
fn finish(self) -> EncodedRowset;
fn append(&mut self, chunk: DataChunk);...
EncodedRowset
EncodedRowset
size: usizecolumns_info: Arc<[ColumnCatalog]>columns: Vec<EncodedColumn>
EncodedColumn
EncodedColumn
index: Vec<u8>data: Vec<u8>
ColumnBuilderImp: enum of column builders
ColumnBuilderImp: enum of column builders
fn append(&mut self: array: &ArrayImpl);'
fn finish(self) -> (Vec<BlockIndex>, Vec<u8>);
fn append(&mut self: array: &ArrayImpl);'...
BTreeMapMemTable
BTreeMapMemTable
columns: Arc<[ColumnCatalog]>
primary_key_idx: usize,
multi_btree_map: BTreeMultiMap<ComparableDataValue, Row=Vec<DataValue>>
columns: Arc<[ColumnCatalog]>...
impl MemTable for BTreeMapMemTable { ... }
impl MemTable for BTreeMapMemTable { ... }
BlockIndex
BlockIndex
Serialized format on diskSee rowset.proto
IndexBuilder
IndexBuilder
fn append(&mut self, index: BlockIndex);
fn finish(self) -> Vec<u8>;
fn append(&mut self, index: Bl...
PrimitiveColumnBuilder
PrimitiveColumnBuilder
data: Vec<u8>current_builder: Option<BlockBuilderImpl<T>>block_index_builder: BlockIndexBuilder
fn append(&mut self, array: &T::ArrayType);
fn finish(mut self) -> (Vec<BlockIndex>, Vec<u8>);
fn append(&mut self, array: &T::ArrayType);...
Memory
Memory
Secondary
Secondary
BlockBuilderImpl: enum of different block builders
BlockBuilderImpl: enum of different block builders
Plain(PlainPrimitiveBlockBuilder)PlainNullable(NullableBlockBuilder)...
BlockIndexBuilder
BlockIndexBuilder
row_count: usizeindexes: Vec<u8>block_header: Vec<u8>
fn finish_block(&mut self, ...);
fn finish_block(&mut self, ...);
Text is not SVG - cannot display