Trait mz_compute::extensions::arrange::MzArrangeCore
source · pub trait MzArrangeCore{
type Scope: Scope;
type Input: Container + Clone + 'static;
// Required method
fn mz_arrange_core<P, Ba, Bu, Tr>(
&self,
pact: P,
name: &str,
) -> Arranged<Self::Scope, TraceAgent<Tr>>
where P: ParallelizationContract<<Self::Scope as ScopeParent>::Timestamp, Self::Input>,
Ba: Batcher<Input = Self::Input, Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Bu: Builder<Time = <Self::Scope as ScopeParent>::Timestamp, Input = Ba::Output, Output = Tr::Batch>,
Tr: Trace + TraceReader<Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Tr::Batch: Batch,
Arranged<Self::Scope, TraceAgent<Tr>>: ArrangementSize;
}
Expand description
Extension trait to arrange data.
Required Associated Types§
Required Methods§
sourcefn mz_arrange_core<P, Ba, Bu, Tr>(
&self,
pact: P,
name: &str,
) -> Arranged<Self::Scope, TraceAgent<Tr>>where
P: ParallelizationContract<<Self::Scope as ScopeParent>::Timestamp, Self::Input>,
Ba: Batcher<Input = Self::Input, Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Bu: Builder<Time = <Self::Scope as ScopeParent>::Timestamp, Input = Ba::Output, Output = Tr::Batch>,
Tr: Trace + TraceReader<Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Tr::Batch: Batch,
Arranged<Self::Scope, TraceAgent<Tr>>: ArrangementSize,
fn mz_arrange_core<P, Ba, Bu, Tr>(
&self,
pact: P,
name: &str,
) -> Arranged<Self::Scope, TraceAgent<Tr>>where
P: ParallelizationContract<<Self::Scope as ScopeParent>::Timestamp, Self::Input>,
Ba: Batcher<Input = Self::Input, Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Bu: Builder<Time = <Self::Scope as ScopeParent>::Timestamp, Input = Ba::Output, Output = Tr::Batch>,
Tr: Trace + TraceReader<Time = <Self::Scope as ScopeParent>::Timestamp> + 'static,
Tr::Batch: Batch,
Arranged<Self::Scope, TraceAgent<Tr>>: ArrangementSize,
Arranges a stream of (Key, Val)
updates by Key
into a trace of type Tr
. Partitions
the data according to pact
.
This operator arranges a stream of values into a shared trace, whose contents it maintains. This trace is current for all times marked completed in the output stream, and probing this stream is the correct way to determine that times in the shared trace are committed.
Object Safety§
This trait is not object safe.