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§
pub use paste;
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:
Structs§
- A depth-first pre-order iterator over a ArrayData.
- A central type for all Vortex arrays, which are known length sequences of typed and possibly compressed data.
- A mapping between an encoding’s ID to an
EncodingRef
, used to have a shared view of all available encoding schemes.
Enums§
- The set of canonical array encodings, also the set of encodings that can be transferred to Arrow with zero-copy.
Traits§
- Dynamic trait used to represent opaque owned Array metadata
- Collects together the behavior of an array.
- Consume
self
and turn it into anArrayData
infallibly. - Trait for types that can be converted from an owned type into an owned array variant.
- Support trait for transmuting an array into the canonical encoding for its [vortex_dtype::DType].
- Encoding VTable for canonicalizing an array.