@Internal public interface Planner
getParser()- transforms a SQL string into a Table API specific objects e.g. tree of
ModifyOperationinto a runnable form (
The Planner is execution agnostic. It is up to the
TableEnvironment to ensure that if any of the
pull any runtime configuration, all those configurations are equivalent. Example: If some of the
QueryOperations scan DataStreams, all those DataStreams must come from the same
StreamExecutionEnvironment, because the result of
translate(List) will strip any
execution configuration from the DataStream information.
All Tables referenced in either
translate(List) should be previously registered in a
CatalogManager, which will be provided during instantiation of
|Modifier and Type||Method and Description|
Returns the AST of the specified Table API and SQL queries and the execution plan to compute the result of the given collection of
Converts a relational tree of
Parserthat provides methods for parsing a SQL string.
List<Transformation<?>> translate(List<ModifyOperation> modifyOperations)
ModifyOperations into a set of runnable
This method accepts a list of
ModifyOperations to allow reusing common subtrees of
multiple relational queries. Each query's top node should be a
order to pass the expected properties of the output
Transformation such as output
mode (append, retract, upsert) or the expected output type.
modifyOperations- list of relational operations to plan, optimize and convert in a single run.
String explain(List<Operation> operations, ExplainDetail... extraDetails)
operations- The collection of relational queries for which the AST and execution plan will be returned.
extraDetails- The extra explain details which the explain result should include, e.g. estimated cost, changelog mode for streaming, displaying execution plan in json format
@Experimental InternalPlan loadPlan(PlanReference planReference) throws IOException
@Experimental InternalPlan compilePlan(List<ModifyOperation> modifyOperations)
@Experimental List<Transformation<?>> translatePlan(InternalPlan plan)
@Experimental String explainPlan(InternalPlan plan, ExplainDetail... extraDetails)
Copyright © 2014–2023 The Apache Software Foundation. All rights reserved.