FlatBuffers
Flatbuffers is an efficient Serialization Framework created by Google. It's key advantage over other Serialization Frameworks is that one can access data directly without unpacking or parsing the whole serialized object, i.e. zero-copy access. It offers support for many Programming languages including C, Rust, Kotlin and Python.
How does it work
To use flatbuffers one needs to define a schema, for example:
table Monster {
name:string;
health:int;
}
root_type Monster;
This can then be used to automatically create the boiler plate code serialize an object and "deserialize", i.e. directly access specific data of it. To make this work when one serializes a flatbuffer object one in facts creates a binary buffer that uses offsets to organize nested structure. This way one can just "jump to the point" in the buffer where the desired Data field is by using an offset.
Note here, that the serialization effort is higher for flatbuffers than e.g. for Protocol Buffer. So flatbuffers may be at a disadvantage for write heavy workloads.