Class EncoderHelpers
java.lang.Object
org.apache.beam.runners.spark.structuredstreaming.translation.helpers.EncoderHelpers
Encoders
utility class.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Encoder / expression utils that are called from generated code. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> org.apache.spark.sql.Encoder
<Collection<T>> collectionEncoder
(org.apache.spark.sql.Encoder<T> enc) static <T> org.apache.spark.sql.Encoder
<Collection<T>> collectionEncoder
(org.apache.spark.sql.Encoder<T> enc, boolean nullable) static <T> org.apache.spark.sql.catalyst.expressions.Expression
deserializeOneOf
(org.apache.spark.sql.catalyst.expressions.Expression in, List<org.apache.spark.sql.Encoder<T>> encoders) static <T> org.apache.spark.sql.Encoder
<T> encoderFor
(Coder<T> coder) static <T> org.apache.spark.sql.Encoder
<T> Gets or creates a defaultEncoder
forEncoderHelpers
.static <K,
V> org.apache.spark.sql.Encoder <KV<K, V>> kvEncoder
(org.apache.spark.sql.Encoder<K> key, org.apache.spark.sql.Encoder<V> value) static <MapT extends Map<K,
V>, K, V>
org.apache.spark.sql.Encoder<MapT> mapEncoder
(org.apache.spark.sql.Encoder<K> key, org.apache.spark.sql.Encoder<V> value, Class<MapT> cls) static <T1,
T2> org.apache.spark.sql.Encoder <org.apache.spark.util.MutablePair<T1, T2>> mutablePairEncoder
(org.apache.spark.sql.Encoder<T1> enc1, org.apache.spark.sql.Encoder<T2> enc2) Creates a SparkEncoder
for Spark'sMutablePair
ofStructType
with fields `_1
` and `_2
`.static <T> org.apache.spark.sql.Encoder
<scala.Tuple2<Integer, T>> oneOfEncoder
(List<org.apache.spark.sql.Encoder<T>> encoders) Creates a one-of SparkEncoder
ofStructType
where each alternative is represented as colum / field named by its index with a separateEncoder
each.static <T> org.apache.spark.sql.catalyst.expressions.Expression
serializeOneOf
(org.apache.spark.sql.catalyst.expressions.Expression in, List<org.apache.spark.sql.Encoder<T>> encoders) static <T,
W extends BoundedWindow>
org.apache.spark.sql.Encoder<WindowedValue<T>> windowedValueEncoder
(org.apache.spark.sql.Encoder<T> value, org.apache.spark.sql.Encoder<W> window) Creates a SparkEncoder
forEncoderHelpers
ofStructType
with fieldsvalue
,timestamp
,windows
andpane
.
-
Constructor Details
-
EncoderHelpers
public EncoderHelpers()
-
-
Method Details
-
encoderOf
Gets or creates a defaultEncoder
forEncoderHelpers
. -
encoderFor
Creates a SparkEncoder
forEncoderHelpers
ofBinaryType
delegating to a BeamCoder
underneath.Note: For common types, if available, default Spark
Encoder
s are used instead.- Parameters:
coder
- BeamCoder
-
windowedValueEncoder
public static <T,W extends BoundedWindow> org.apache.spark.sql.Encoder<WindowedValue<T>> windowedValueEncoder(org.apache.spark.sql.Encoder<T> value, org.apache.spark.sql.Encoder<W> window) Creates a SparkEncoder
forEncoderHelpers
ofStructType
with fieldsvalue
,timestamp
,windows
andpane
.- Parameters:
value
-Encoder
to encode field `value
`.window
-Encoder
to encode individual windows in field `windows
`
-
oneOfEncoder
public static <T> org.apache.spark.sql.Encoder<scala.Tuple2<Integer,T>> oneOfEncoder(List<org.apache.spark.sql.Encoder<T>> encoders) Creates a one-of SparkEncoder
ofStructType
where each alternative is represented as colum / field named by its index with a separateEncoder
each.Externally this is represented as tuple
(index, data)
where an index corresponds to anEncoder
in the provided list.- Parameters:
encoders
-Encoder
s for each alternative.
-
kvEncoder
public static <K,V> org.apache.spark.sql.Encoder<KV<K,V>> kvEncoder(org.apache.spark.sql.Encoder<K> key, org.apache.spark.sql.Encoder<V> value) - Parameters:
key
-Encoder
to encode field `key
`.value
-Encoder
to encode field `value
`
-
collectionEncoder
public static <T> org.apache.spark.sql.Encoder<Collection<T>> collectionEncoder(org.apache.spark.sql.Encoder<T> enc) - Parameters:
enc
-Encoder
to encode collection elements
-
collectionEncoder
public static <T> org.apache.spark.sql.Encoder<Collection<T>> collectionEncoder(org.apache.spark.sql.Encoder<T> enc, boolean nullable) - Parameters:
enc
-Encoder
to encode collection elementsnullable
- Allow nullable collection elements
-
mapEncoder
-
mutablePairEncoder
public static <T1,T2> org.apache.spark.sql.Encoder<org.apache.spark.util.MutablePair<T1,T2>> mutablePairEncoder(org.apache.spark.sql.Encoder<T1> enc1, org.apache.spark.sql.Encoder<T2> enc2) Creates a SparkEncoder
for Spark'sMutablePair
ofStructType
with fields `_1
` and `_2
`.This is intended to be used in places such as aggregators.
- Parameters:
enc1
-Encoder
to encode `_1
`enc2
-Encoder
to encode `_2
`
-
serializeOneOf
public static <T> org.apache.spark.sql.catalyst.expressions.Expression serializeOneOf(org.apache.spark.sql.catalyst.expressions.Expression in, List<org.apache.spark.sql.Encoder<T>> encoders) -
deserializeOneOf
public static <T> org.apache.spark.sql.catalyst.expressions.Expression deserializeOneOf(org.apache.spark.sql.catalyst.expressions.Expression in, List<org.apache.spark.sql.Encoder<T>> encoders)
-