Expand description
Column-aware row encoding is an encoding format which converts row into a binary form that
remains explanable after schema changes
Current design of flag just contains 1 meaningful information: the 2 LSBs represents
the size of offsets: u8
/u16
/u32
We have a Serializer
and a Deserializer
for each schema of Row
, which can be reused
until schema changes
Structsยง
- Combined column-aware
Serializer
andDeserializer
given the samecolumn_ids
andschema
- Column-Aware
Deserializer
holds neededColumnIds
and their corresponding schema Should non-null default values be specified, a new field could be added to Deserializer - Flag ๐
- RowEncoding ๐
RowEncoding
holds row-specific information for Column-Aware Encoding - Column-Aware
Serializer
holds schema related information, and shall be created again once the schema changes
Functionsยง
- deserialize_
width ๐ - Deserializes row
encoded_bytes
, drops columns not invalid_column_ids
, serializes and returns. If no column is dropped, returns None.