Skip to main content

Module arrow_conversion

Module arrow_conversion 

Source
Available on (crate features default-engine-native-tls or default-engine-rustls or arrow-conversion) and crate feature arrow-conversion only.
Expand description

Conversions between kernel schema types and arrow schema types.

Two directions, used at the engine <-> kernel boundary:

  • arrow -> kernel (TryFromArrow / TryIntoKernel): an example usage is converting a checkpoint Parquet file’s Arrow footer schema into a kernel StructType during log replay.

  • kernel -> arrow (TryFromKernel / TryIntoArrow): an example usage is materializing a kernel StructType as an ArrowSchema to build a RecordBatch on the write path.

These conversions can be used on both logical and physical schemas. E.g. when writing a parquet file, the default engine converts the physical kernel schema to an Arrow schema and writes the data. When transforming physical data to logical data via an Expression, DefaultExpressionEvaluator converts the logical schema to an Arrow schema as the output schema.

Modules§

scalar
Extract a kernel Scalar from a single row of an Arrow array.

Traits§

TryFromArrow
Convert an arrow type into a kernel type (a similar TryIntoKernel trait is automatically implemented for all types that implement TryFromArrow)
TryFromKernel
Convert a kernel type into an arrow type (a similar TryIntoArrow trait is automatically implemented for all types that implement TryFromKernel)
TryIntoArrow
Convert a kernel type into an arrow type (automatically implemented for all types that implement TryFromKernel)
TryIntoKernel
Convert an arrow type into a kernel type (automatically implemented for all types that implement TryFromArrow)