Skip to main content

shuffle

Function shuffle 

Source
pub fn shuffle(
    b: &RecordBatch,
    columns: &[String],
    vnodes: u32,
    targets: &[(u32, Range<u32>)],
    hasher: &(dyn Fn(&[Arc<dyn Array>], &mut [u64]) + Send + Sync),
) -> Vec<Option<RecordBatch>>
Expand description

Split a batch by vnode: hash(columns) % vnodes → the target whose range holds it. Returns one optional sub-batch per target, in target order. Missing routing columns hash as null.