[−][src]Trait differential_dataflow::operators::reduce::Threshold
Extension trait for the threshold
and distinct
differential dataflow methods.
Required methods
fn threshold<R2: Abelian, F: Fn(&K, &R1) -> R2 + 'static>(
&self,
thresh: F
) -> Collection<G, K, R2>
&self,
thresh: F
) -> Collection<G, K, R2>
Transforms the multiplicity of records.
The threshold
function is obliged to map R1::zero
to R2::zero
, or at
least the computation may behave as if it does. Otherwise, the transformation
can be nearly arbitrary: the code does not assume any properties of threshold
.
Examples
extern crate timely; extern crate differential_dataflow; use differential_dataflow::input::Input; use differential_dataflow::operators::Threshold; fn main() { ::timely::example(|scope| { // report at most one of each key. scope.new_collection_from(1 .. 10).1 .map(|x| x / 3) .threshold(|_,c| c % 2); }); }
Provided methods
fn distinct(&self) -> Collection<G, K, isize>
Reduces the collection to one occurrence of each distinct element.
Examples
extern crate timely; extern crate differential_dataflow; use differential_dataflow::input::Input; use differential_dataflow::operators::Threshold; fn main() { ::timely::example(|scope| { // report at most one of each key. scope.new_collection_from(1 .. 10).1 .map(|x| x / 3) .distinct(); }); }
Implementors
impl<G: Scope, K: Data + Hashable, R1: Monoid> Threshold<G, K, R1> for Collection<G, K, R1> where
G::Timestamp: Lattice + Ord,
[src]
G::Timestamp: Lattice + Ord,
fn threshold<R2: Abelian, F: Fn(&K, &R1) -> R2 + 'static>(
&self,
thresh: F
) -> Collection<G, K, R2>
[src]
&self,
thresh: F
) -> Collection<G, K, R2>
fn distinct(&self) -> Collection<G, K, isize>
[src]
impl<G: Scope, K: Data, T1, R1: Monoid> Threshold<G, K, R1> for Arranged<G, K, (), R1, T1> where
G::Timestamp: Lattice + Ord,
T1: TraceReader<K, (), G::Timestamp, R1> + Clone + 'static,
T1::Batch: BatchReader<K, (), G::Timestamp, R1>,
[src]
G::Timestamp: Lattice + Ord,
T1: TraceReader<K, (), G::Timestamp, R1> + Clone + 'static,
T1::Batch: BatchReader<K, (), G::Timestamp, R1>,