pub trait ArrangeByKey<G: Scope, K: Data + Hashable, V: Data, R: Ord + Semigroup + 'static>{
// Required methods
fn arrange_by_key(
&self,
) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>;
fn arrange_by_key_named(
&self,
name: &str,
) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>;
}
Expand description
Arranges something as (Key,Val)
pairs according to a type T
of trace.
This arrangement requires Key: Hashable
, and uses the hashed()
method to place keys in a hashed
map. This can result in many hash calls, and in some cases it may help to first transform K
to the
pair (u64, K)
of hash value and key.
Required Methods§
sourcefn arrange_by_key(
&self,
) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>
fn arrange_by_key( &self, ) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>
Arranges a collection of (Key, Val)
records by Key
.
This operator arranges a stream of values into a shared trace, whose contents it maintains. This trace is current for all times completed by the output stream, which can be used to safely identify the stable times and values in the trace.
sourcefn arrange_by_key_named(
&self,
name: &str,
) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>
fn arrange_by_key_named( &self, name: &str, ) -> Arranged<G, TraceAgent<ValSpine<K, V, G::Timestamp, R>>>
As arrange_by_key
but with the ability to name the arrangement.