Function differential_dataflow::operators::arrange::upsert::arrange_from_upsert
source · pub fn arrange_from_upsert<G, K, V, Bu, Tr>(
stream: &Stream<G, (K, Option<V>, G::Timestamp)>,
name: &str,
) -> Arranged<G, TraceAgent<Tr>>where
G: Scope<Timestamp = Tr::Time>,
Tr: Trace + TraceReader<Diff = isize> + 'static,
for<'a> Tr::Key<'a>: IntoOwned<'a, Owned = K>,
K: ExchangeData + Hashable + Hash,
V: ExchangeData,
for<'a> Tr::Val<'a>: IntoOwned<'a, Owned = V>,
Tr::Time: TotalOrder + ExchangeData,
Tr::Batch: Batch,
Bu: Builder<Time = G::Timestamp, Input = Vec<((K, V), Tr::Time, Tr::Diff)>, Output = Tr::Batch>,
Expand description
Arrange data from a stream of keyed upserts.
The input should be a stream of timestamped pairs of Key and Option
This method is only implemented for totally ordered times, as we do not yet understand what a “sequence” of upserts would mean for partially ordered timestamps.