Expand description
Compute kernels on top of Vortex Arrays.
We aim to provide a basic set of compute kernels that can be used to efficiently index, slice, and filter Vortex Arrays in their encoded forms.
Every array encoding has the ability to implement their own efficient implementations of these operators, else we will decode, and perform the equivalent operator from Arrow.
Structs§
- Between
Kernel Adapter - Between
Kernel Ref - Between
Options - Boolean
Kernel Adapter - Boolean
Kernel Ref - Cast
Kernel Adapter - Cast
Kernel Ref - Compare
Kernel Adapter - Compare
Kernel Ref - Compute
Fn - An instance of a compute function holding the implementation vtable and a set of registered compute kernels.
- Filter
Kernel Adapter - Adapter to convert a
FilterKernel
into aKernel
. - Filter
Kernel Ref - A kernel that implements the filter function.
- Invert
Kernel Adapter - Invert
Kernel Ref - Invocation
Args - Arguments to a compute function invocation.
- IsConstant
Opts - Configuration for
is_constant_opts
operations. - Like
Options - Options for SQL LIKE function
- Mask
Kernel Adapter - Mask
Kernel Ref - MinMax
Result - Numeric
Kernel Adapter - Numeric
Kernel Ref - SumKernel
Adapter - SumKernel
Ref
Enums§
- Boolean
Operator - Input
- Input to a compute function.
- Operator
- Output
- Output from a compute function.
- Search
Result - Result of performing search_sorted on an Array
- Search
Sorted Side - Strict
Comparison
Statics§
Traits§
- Between
Kernel - Boolean
Kernel - Cast
Kernel - Compare
Kernel - Compute
FnVTable - VTable for the implementation of a compute function.
- Fill
Null Fn - Implementation of fill_null for an encoding.
- Filter
Kernel - Index
Ord - Invert
Kernel - IsConstant
Fn - IsSorted
Fn - IsSorted
Iterator Ext - Helper methods to check sortedness with strictness
- Kernel
- Compute functions can ask arrays for compute kernels for a given invocation.
- LikeFn
- Mask
Kernel - MinMax
Fn - Computes the min and max of an array, returning the (min, max) values
If the array is empty or has only nulls, the result is
None
. - Numeric
Kernel - Optimize
Fn - Options
- Options for a compute function invocation.
- Scalar
AtFn - Implementation of scalar_at for an encoding.
- Search
Sorted - Search
Sorted Fn - Searches for value assuming the array is sorted.
- Search
Sorted Usize Fn - SliceFn
- Limit array to start…stop range
- SumKernel
- TakeFn
- Take
From Fn - ToArrow
Fn - Trait for Arrow conversion compute function.
- Uncompressed
Size Fn
Functions§
- add
- Point-wise add two numeric arrays.
- add_
scalar - Point-wise add a scalar value to this array on the right-hand-side.
- and
- Point-wise logical and between two Boolean arrays.
- and_
kleene - Point-wise Kleene logical and between two Boolean arrays.
- between
- Compute between (a <= x <= b), this can be implemented using compare and boolean and but this will likely have a lower runtime.
- boolean
- Point-wise logical operator between two Boolean arrays.
- cast
- Attempt to cast an array to a desired DType.
- compare
- Compares two arrays and returns a new boolean array with the result of the comparison. Or, returns None if comparison is not supported for these arrays.
- compare_
lengths_ to_ empty - Helper function to compare empty values with arrays that have external value length information
like
VarBin
. - div
- Point-wise divide two numeric arrays.
- div_
scalar - Point-wise divide a scalar value into this array on the right-hand-side.
- fill_
null - filter
- Keep only the elements for which the corresponding mask value is true.
- invert
- Logically invert a boolean array.
- is_
constant - Computes whether an array has constant values. If the array’s encoding doesn’t implement the relevant VTable, it’ll try and canonicalize in order to make a determination. An array is constant IFF at least one of the following conditions apply:
- is_
constant_ opts - Computes whether an array has constant values. Configurable by
IsConstantOpts
. - is_
sorted - is_
strict_ sorted - like
- Perform SQL left LIKE right
- mask
- Replace values with null where the mask is true.
- min_max
- Computes the min & max of an array, returning the (min, max) values The return values are (min, max) scalars, where None indicates that the value is non-existent (e.g. for an empty array). The return value dtype is the non-nullable version of the array dtype.
- mul
- Point-wise multiply two numeric arrays.
- mul_
scalar - Point-wise multiply a scalar value into this array on the right-hand-side.
- numeric
- Point-wise numeric operation between two arrays of the same type and length.
- optimize
- or
- Point-wise logical or between two Boolean arrays.
- or_
kleene - Point-wise Kleene logical or between two Boolean arrays.
- preferred_
arrow_ data_ type - Return the preferred Arrow
DataType
of the array. - scalar_
at - scalar_
cmp - search_
sorted - search_
sorted_ many - Search for many elements in the array.
- search_
sorted_ usize - search_
sorted_ usize_ many - slice
- Return a zero-copy slice of an array, between
start
(inclusive) andend
(exclusive). - sub
- Point-wise subtract two numeric arrays.
- sub_
scalar - Point-wise subtract a scalar value from this array on the right-hand-side.
- sum
- Sum an array.
- sum_
impl - Sum an array.
- take
- take_
into - to_
arrow - Convert the array to an Arrow array of the given type.
- to_
arrow_ preferred - uncompressed_
size - Computes the uncompressed size of the array, in bytes.