QueryAnalyzer¶
Creating Instance¶
QueryAnalyzer
takes the following to be created:
- MetaStore
- ksql.output.topic.name.prefix
- ksql.rowpartition.rowoffset.enabled
- ksql.query.pull.limit.clause.enabled
QueryAnalyzer
is created when:
KsqlEngine
is requested to analyzeQueryWithNoOutputTopicQueryEngine
utility is used to buildQueryLogicalPlan
Analyzer¶
Unless given, QueryAnalyzer
creates an Analyzer when created.
The Analyzer
is used to analyze a query.
Query Analysis¶
Analysis analyze(
Query query,
Optional<Sink> sink)
analyze
requests the Analyzer to analyze the query.
analyze
requests the pull or push query validator to validate the analysis based on whether it is a pull query or not, respectively.
The optional Sink
can only be defined when QueryEngine
is requested to buildQueryLogicalPlan.
analyze
is used when:
KsqlEngine
is requested to analyzeQueryWithNoOutputTopicQueryEngine
is requested to buildQueryLogicalPlan