Class TransformPipeline
- java.lang.Object
-
- org.apache.pinot.segment.local.segment.creator.TransformPipeline
-
public class TransformPipeline extends Object
The class for transforming validating GenericRow data against table schema and table config. It is used mainly but not limited by RealTimeDataManager for each row that is going to be indexed into Pinot.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTransformPipeline.ResultWrapper for transforming results.
-
Constructor Summary
Constructors Constructor Description TransformPipeline(RecordTransformer recordTransformer, ComplexTypeTransformer complexTypeTransformer)Constructs a transform pipeline with customized RecordTransformer and customized ComplexTypeTransformerTransformPipeline(TableConfig tableConfig, Schema schema)Constructs a transform pipeline based on TableConfig and table schema.
-
Method Summary
Modifier and Type Method Description static TransformPipelinegetPassThroughPipeline()Returns a pass through pipeline that does not transform the record.voidprocessRow(GenericRow decodedRow, TransformPipeline.Result reusedResult)Process and validate the decoded row against schema.
-
-
-
Constructor Detail
-
TransformPipeline
public TransformPipeline(RecordTransformer recordTransformer, @Nullable ComplexTypeTransformer complexTypeTransformer)
Constructs a transform pipeline with customized RecordTransformer and customized ComplexTypeTransformer- Parameters:
recordTransformer- the customized record transformercomplexTypeTransformer- the customized complexType transformer
-
TransformPipeline
public TransformPipeline(TableConfig tableConfig, Schema schema)
Constructs a transform pipeline based on TableConfig and table schema.- Parameters:
tableConfig- the config for the tableschema- the table schema
-
-
Method Detail
-
getPassThroughPipeline
public static TransformPipeline getPassThroughPipeline()
Returns a pass through pipeline that does not transform the record.
-
processRow
public void processRow(GenericRow decodedRow, TransformPipeline.Result reusedResult) throws Exception
Process and validate the decoded row against schema.- Parameters:
decodedRow- the row data to pass inreusedResult- the reused result so we can reduce objects created for each row- Throws:
Exception- when data has issues like schema validation. Fetch the partialResult from Exception
-
-