public class Sum extends Object
PTransform
s for computing the sum of the elements in a
PCollection
, or the sum of the values associated with
each key in a PCollection
of KV
s.
Example 1: get the sum of a PCollection
of Double
s.
PCollection<Double> input = ...;
PCollection<Double> sum = input.apply(Sum.doublesGlobally());
Example 2: calculate the sum of the Integer
s
associated with each unique key (which is of type String
).
PCollection<KV<String, Integer>> input = ...;
PCollection<KV<String, Integer>> sumPerKey = input
.apply(Sum.<String>integersPerKey());
Modifier and Type | Method and Description |
---|---|
static Combine.Globally<Double,Double> |
doublesGlobally()
Returns a
PTransform that takes an input
PCollection<Double> and returns a
PCollection<Double> whose contents is the sum of the
input PCollection 's elements, or
0 if there are no elements. |
static <K> Combine.PerKey<K,Double,Double> |
doublesPerKey()
Returns a
PTransform that takes an input
PCollection<KV<K, Double>> and returns a
PCollection<KV<K, Double>> that contains an output
element mapping each distinct key in the input
PCollection to the sum of the values associated with
that key in the input PCollection . |
static Combine.Globally<Integer,Integer> |
integersGlobally()
Returns a
PTransform that takes an input
PCollection<Integer> and returns a
PCollection<Integer> whose contents is the sum of the
input PCollection 's elements, or
0 if there are no elements. |
static <K> Combine.PerKey<K,Integer,Integer> |
integersPerKey()
Returns a
PTransform that takes an input
PCollection<KV<K, Integer>> and returns a
PCollection<KV<K, Integer>> that contains an output
element mapping each distinct key in the input
PCollection to the sum of the values associated with
that key in the input PCollection . |
static Combine.Globally<Long,Long> |
longsGlobally()
Returns a
PTransform that takes an input
PCollection<Long> and returns a
PCollection<Long> whose contents is the sum of the
input PCollection 's elements, or
0 if there are no elements. |
static <K> Combine.PerKey<K,Long,Long> |
longsPerKey()
Returns a
PTransform that takes an input
PCollection<KV<K, Long>> and returns a
PCollection<KV<K, Long>> that contains an output
element mapping each distinct key in the input
PCollection to the sum of the values associated with
that key in the input PCollection . |
public static Combine.Globally<Integer,Integer> integersGlobally()
PTransform
that takes an input
PCollection<Integer>
and returns a
PCollection<Integer>
whose contents is the sum of the
input PCollection
's elements, or
0
if there are no elements.public static <K> Combine.PerKey<K,Integer,Integer> integersPerKey()
PTransform
that takes an input
PCollection<KV<K, Integer>>
and returns a
PCollection<KV<K, Integer>>
that contains an output
element mapping each distinct key in the input
PCollection
to the sum of the values associated with
that key in the input PCollection
.public static Combine.Globally<Long,Long> longsGlobally()
PTransform
that takes an input
PCollection<Long>
and returns a
PCollection<Long>
whose contents is the sum of the
input PCollection
's elements, or
0
if there are no elements.public static <K> Combine.PerKey<K,Long,Long> longsPerKey()
PTransform
that takes an input
PCollection<KV<K, Long>>
and returns a
PCollection<KV<K, Long>>
that contains an output
element mapping each distinct key in the input
PCollection
to the sum of the values associated with
that key in the input PCollection
.public static Combine.Globally<Double,Double> doublesGlobally()
PTransform
that takes an input
PCollection<Double>
and returns a
PCollection<Double>
whose contents is the sum of the
input PCollection
's elements, or
0
if there are no elements.public static <K> Combine.PerKey<K,Double,Double> doublesPerKey()
PTransform
that takes an input
PCollection<KV<K, Double>>
and returns a
PCollection<KV<K, Double>>
that contains an output
element mapping each distinct key in the input
PCollection
to the sum of the values associated with
that key in the input PCollection
.