Package org.apache.beam.sdk.transforms
Class Max
java.lang.Object
org.apache.beam.sdk.transforms.Max
PTransform
s for computing the maximum of the elements in a PCollection
, or the
maximum of the values associated with each key in a PCollection
of KV
s.
Example 1: get the maximum of a PCollection
of Double
s.
PCollection<Double> input = ...;
PCollection<Double> max = input.apply(Max.doublesGlobally());
Example 2: calculate the maximum of the Integer
s associated with each unique key
(which is of type String
).
PCollection<KV<String, Integer>> input = ...;
PCollection<KV<String, Integer>> maxPerKey = input
.apply(Max.<String>integersPerKey());
-
Method Summary
Modifier and TypeMethodDescriptionstatic Combine.Globally
<Double, Double> Returns aPTransform
that takes an inputPCollection<Double>
and returns aPCollection<Double>
whose contents is the maximum of the inputPCollection
's elements, orDouble.NEGATIVE_INFINITY
if there are no elements.static <K> Combine.PerKey
<K, Double, Double> Returns aPTransform
that takes an inputPCollection<KV<K, Double>>
and returns aPCollection<KV<K, Double>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.static <T extends Comparable<? super T>>
Combine.Globally<T, T> globally()
Returns aPTransform
that takes an inputPCollection<T>
and returns aPCollection<T>
whose contents is the maximum according to the natural ordering ofT
of the inputPCollection
's elements, ornull
if there are no elements.static <T,
ComparatorT extends Comparator<? super T> & Serializable>
Combine.Globally<T, T> globally
(ComparatorT comparator) Returns aPTransform
that takes an inputPCollection<T>
and returns aPCollection<T>
whose contents is the maximum of the inputPCollection
's elements, ornull
if there are no elements.static Combine.Globally
<Integer, Integer> Returns aPTransform
that takes an inputPCollection<Integer>
and returns aPCollection<Integer>
whose contents is the maximum of the inputPCollection
's elements, orInteger.MIN_VALUE
if there are no elements.static <K> Combine.PerKey
<K, Integer, Integer> Returns aPTransform
that takes an inputPCollection<KV<K, Integer>>
and returns aPCollection<KV<K, Integer>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.static Combine.Globally
<Long, Long> Returns aPTransform
that takes an inputPCollection<Long>
and returns aPCollection<Long>
whose contents is the maximum of the inputPCollection
's elements, orLong.MIN_VALUE
if there are no elements.static <K> Combine.PerKey
<K, Long, Long> Returns aPTransform
that takes an inputPCollection<KV<K, Long>>
and returns aPCollection<KV<K, Long>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.static <T extends Comparable<? super T>>
Combine.BinaryCombineFn<T> static <T extends Comparable<? super T>>
Combine.BinaryCombineFn<T> naturalOrder
(T identity) static <T,
ComparatorT extends Comparator<? super T> & Serializable>
Combine.BinaryCombineFn<T> of
(ComparatorT comparator) ACombineFn
that computes the maximum of a collection of elements of typeT
using an arbitraryComparator
, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.static <T,
ComparatorT extends Comparator<? super T> & Serializable>
Combine.BinaryCombineFn<T> of
(T identity, ComparatorT comparator) ACombineFn
that computes the maximum of a collection of elements of typeT
using an arbitraryComparator
andidentity
, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.ACombineFn
that computes the maximum of a collection ofDouble
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.ACombineFn
that computes the maximum of a collection ofInteger
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.static Combine.BinaryCombineLongFn
ofLongs()
ACombineFn
that computes the maximum of a collection ofLong
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.static <K,
T extends Comparable<? super T>>
Combine.PerKey<K, T, T> perKey()
Returns aPTransform
that takes an inputPCollection<KV<K, T>>
and returns aPCollection<KV<K, T>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum according to the natural ordering ofT
of the values associated with that key in the inputPCollection
.static <K,
T, ComparatorT extends Comparator<? super T> & Serializable>
Combine.PerKey<K, T, T> perKey
(ComparatorT comparator) Returns aPTransform
that takes an inputPCollection<KV<K, T>>
and returns aPCollection<KV<K, T>>
that contains one output element per key mapping each to the maximum of the values associated with that key in the inputPCollection
.
-
Method Details
-
integersGlobally
Returns aPTransform
that takes an inputPCollection<Integer>
and returns aPCollection<Integer>
whose contents is the maximum of the inputPCollection
's elements, orInteger.MIN_VALUE
if there are no elements. -
integersPerKey
Returns aPTransform
that takes an inputPCollection<KV<K, Integer>>
and returns aPCollection<KV<K, Integer>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.See
Combine.PerKey
for how this affects timestamps and windowing. -
longsGlobally
Returns aPTransform
that takes an inputPCollection<Long>
and returns aPCollection<Long>
whose contents is the maximum of the inputPCollection
's elements, orLong.MIN_VALUE
if there are no elements. -
longsPerKey
Returns aPTransform
that takes an inputPCollection<KV<K, Long>>
and returns aPCollection<KV<K, Long>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.See
Combine.PerKey
for how this affects timestamps and windowing. -
doublesGlobally
Returns aPTransform
that takes an inputPCollection<Double>
and returns aPCollection<Double>
whose contents is the maximum of the inputPCollection
's elements, orDouble.NEGATIVE_INFINITY
if there are no elements. -
doublesPerKey
Returns aPTransform
that takes an inputPCollection<KV<K, Double>>
and returns aPCollection<KV<K, Double>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum of the values associated with that key in the inputPCollection
.See
Combine.PerKey
for how this affects timestamps and windowing. -
ofIntegers
ACombineFn
that computes the maximum of a collection ofInteger
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
. -
ofLongs
ACombineFn
that computes the maximum of a collection ofLong
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
. -
ofDoubles
ACombineFn
that computes the maximum of a collection ofDouble
s, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
. -
of
public static <T,ComparatorT extends Comparator<? super T> & Serializable> Combine.BinaryCombineFn<T> of(T identity, ComparatorT comparator) ACombineFn
that computes the maximum of a collection of elements of typeT
using an arbitraryComparator
andidentity
, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.- Type Parameters:
T
- the type of the values being compared
-
of
public static <T,ComparatorT extends Comparator<? super T> & Serializable> Combine.BinaryCombineFn<T> of(ComparatorT comparator) ACombineFn
that computes the maximum of a collection of elements of typeT
using an arbitraryComparator
, useful as an argument toCombine.globally(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
orCombine.perKey(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Iterable<V>, V>)
.- Type Parameters:
T
- the type of the values being compared
-
naturalOrder
-
naturalOrder
-
globally
Returns aPTransform
that takes an inputPCollection<T>
and returns aPCollection<T>
whose contents is the maximum according to the natural ordering ofT
of the inputPCollection
's elements, ornull
if there are no elements. -
perKey
Returns aPTransform
that takes an inputPCollection<KV<K, T>>
and returns aPCollection<KV<K, T>>
that contains an output element mapping each distinct key in the inputPCollection
to the maximum according to the natural ordering ofT
of the values associated with that key in the inputPCollection
.See
Combine.PerKey
for how this affects timestamps and windowing. -
globally
public static <T,ComparatorT extends Comparator<? super T> & Serializable> Combine.Globally<T,T> globally(ComparatorT comparator) Returns aPTransform
that takes an inputPCollection<T>
and returns aPCollection<T>
whose contents is the maximum of the inputPCollection
's elements, ornull
if there are no elements. -
perKey
public static <K,T, Combine.PerKey<K,ComparatorT extends Comparator<? super T> & Serializable> T, perKeyT> (ComparatorT comparator) Returns aPTransform
that takes an inputPCollection<KV<K, T>>
and returns aPCollection<KV<K, T>>
that contains one output element per key mapping each to the maximum of the values associated with that key in the inputPCollection
.See
Combine.PerKey
for how this affects timestamps and windowing.
-