Class TransformTranslator<InT extends org.apache.beam.sdk.values.PInput,OutT extends org.apache.beam.sdk.values.POutput,TransformT extends org.apache.beam.sdk.transforms.PTransform<InT,OutT>>
- java.lang.Object
-
- org.apache.beam.runners.spark.structuredstreaming.translation.TransformTranslator<InT,OutT,TransformT>
-
@Internal public abstract class TransformTranslator<InT extends org.apache.beam.sdk.values.PInput,OutT extends org.apache.beam.sdk.values.POutput,TransformT extends org.apache.beam.sdk.transforms.PTransform<InT,OutT>> extends java.lang.ObjectATransformTranslatorprovides the capability to translate a specific primitive or compositePTransforminto its Spark correspondence.WARNING:
TransformTranslatorsshould never be serializable! This could easily hide situations where unnecessary references leak into Spark closures.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classTransformTranslator.ContextAvailable mutable context to translate aPTransform.
-
Field Summary
Fields Modifier and Type Field Description protected floatcomplexityFactor
-
Constructor Summary
Constructors Modifier Constructor Description protectedTransformTranslator(float complexityFactor)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected booleancanTranslate(TransformT transform)Checks if a composite / primitive transform can be translated.protected abstract voidtranslate(TransformT transform, TransformTranslator.Context cxt)protected <T> org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.transforms.windowing.BoundedWindow>windowCoder(org.apache.beam.sdk.values.PCollection<T> pc)
-
-
-
Method Detail
-
translate
protected abstract void translate(TransformT transform, TransformTranslator.Context cxt) throws java.io.IOException
- Throws:
java.io.IOException
-
canTranslate
protected boolean canTranslate(TransformT transform)
Checks if a composite / primitive transform can be translated. Composites that cannot be translated as is, will be exploded further for translation of their parts.This returns
trueby default and should be overridden where necessary.- Throws:
java.lang.RuntimeException- If a transform uses unsupported features, an exception shall be thrown to give early feedback before any part of the pipeline is run.
-
windowCoder
protected <T> org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.transforms.windowing.BoundedWindow> windowCoder(org.apache.beam.sdk.values.PCollection<T> pc)
-
-