public interface PluginImplementor
PluginRel
nodes into expressions
that can be consumed by the storage plugin.Modifier and Type | Method and Description |
---|---|
boolean |
artificialLimit()
If the plugin doesn't support native limit pushdown,
but the reader can limit the number of rows to read.
|
boolean |
canImplement(org.apache.calcite.rel.core.Aggregate aggregate) |
boolean |
canImplement(DrillLimitRelBase limit) |
boolean |
canImplement(org.apache.calcite.rel.core.Filter filter) |
boolean |
canImplement(org.apache.calcite.rel.core.Join scan) |
boolean |
canImplement(org.apache.calcite.rel.core.Project project) |
boolean |
canImplement(org.apache.calcite.rel.core.Sort sort) |
boolean |
canImplement(org.apache.calcite.rel.core.TableScan scan) |
boolean |
canImplement(org.apache.calcite.rel.core.Union union) |
GroupScan |
getPhysicalOperator() |
void |
implement(PluginAggregateRel aggregate) |
void |
implement(PluginFilterRel filter) |
void |
implement(PluginJoinRel join) |
void |
implement(PluginLimitRel limit) |
void |
implement(PluginProjectRel project) |
void |
implement(PluginSortRel sort) |
void |
implement(PluginUnionRel union) |
void |
implement(StoragePluginTableScan scan) |
boolean |
splitProject(org.apache.calcite.rel.core.Project project) |
default void |
visitChild(org.apache.calcite.rel.RelNode input) |
void implement(PluginAggregateRel aggregate) throws IOException
IOException
void implement(PluginFilterRel filter) throws IOException
IOException
void implement(PluginLimitRel limit) throws IOException
IOException
void implement(PluginProjectRel project) throws IOException
IOException
void implement(PluginSortRel sort) throws IOException
IOException
void implement(PluginUnionRel union) throws IOException
IOException
void implement(PluginJoinRel join) throws IOException
IOException
void implement(StoragePluginTableScan scan) throws IOException
IOException
boolean canImplement(org.apache.calcite.rel.core.Aggregate aggregate)
boolean canImplement(org.apache.calcite.rel.core.Filter filter)
boolean canImplement(DrillLimitRelBase limit)
boolean canImplement(org.apache.calcite.rel.core.Project project)
boolean canImplement(org.apache.calcite.rel.core.Sort sort)
boolean canImplement(org.apache.calcite.rel.core.Union union)
boolean canImplement(org.apache.calcite.rel.core.Join scan)
boolean canImplement(org.apache.calcite.rel.core.TableScan scan)
GroupScan getPhysicalOperator() throws IOException
IOException
default void visitChild(org.apache.calcite.rel.RelNode input) throws IOException
IOException
boolean splitProject(org.apache.calcite.rel.core.Project project)
boolean artificialLimit()
Copyright © 1970 The Apache Software Foundation. All rights reserved.