One important consideration across ALL of this: the fields for variant are supposed to be referenced by name not position
which means that the names used metadata
, value
, and typed_value
are REQUIRED to be utilized regardless of the rest
of the schema utilized.
Let's first consider the simplest case of an unshredded variant, this is easy to model with Arrow via an extension type: