Crate vortex_array

Source
Expand description

Vortex crate containing core logic for encoding and memory representation of arrays.

At the heart of Vortex are arrays and encodings. Arrays are typed views of memory buffers that hold scalars. These buffers can be held in a number of physical encodings to perform lightweight compression that exploits the particular data distribution of the array’s values.

Every data type recognized by Vortex also has a canonical physical encoding format, which arrays can be canonicalized into for ease of access in compute functions.

Re-exports§

Modules§

  • All the built-in encoding schemes and arrays.
  • Utilities to work with Arrow data and types.
  • Compute kernels on top of Vortex Arrays.
  • Traits and types to define shared unique encoding identifiers.
  • Re-exported autogenerated code from the core Vortex flatbuffer definitions.
  • Traits and utilities to compute and access array statistics.
  • Array validity and nullability behavior, used by arrays and compute functions.
  • This module defines array traits for each Vortex DType.

Macros§

  • Macro to generate all the necessary code for a new type of array encoding. Including:
  • Iterate over an array of integers by dispatching at run-time on the array type.
  • Iterate over an array of primitives by dispatching at run-time on the array type.

Structs§

  • A central type for all Vortex arrays, which are known length sequences of typed and possibly compressed data.
  • A depth-first pre-order iterator over a ArrayData.
  • Owned Array with serialized metadata, backed by heap-allocated memory.
  • Zero-copy view over flatbuffer-encoded array data, created without eager serialization.
  • A mapping between an encoding’s ID to an EncodingRef, used to have a shared view of all available encoding schemes.
  • Container for an array with all the associated implementation type information (encoding reference and ID, actual array type, metadata type).

Enums§

  • The set of canonical array encodings, also the set of encodings that can be transferred to Arrow with zero-copy.

Traits§