本文整理汇总了Java中org.apache.calcite.tools.RelBuilderFactory类的典型用法代码示例。如果您正苦于以下问题:Java RelBuilderFactory类的具体用法?Java RelBuilderFactory怎么用?Java RelBuilderFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
RelBuilderFactory类属于org.apache.calcite.tools包,在下文中一共展示了RelBuilderFactory类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: proto
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/** Creates a {@link RelBuilderFactory}, a partially-created RelBuilder.
* Just add a {@link RelOptCluster} and a {@link RelOptSchema} */
public static RelBuilderFactory proto(final Context context) {
return new RelBuilderFactory() {
@Override
public RelBuilder create(RelOptCluster cluster, RelOptSchema schema) {
return new RelBuilder(context, cluster, schema);
}
};
}
开发者ID:dremio,项目名称:dremio-oss,代码行数:11,代码来源:RelBuilder.java
示例2: BeamAggregationRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
public BeamAggregationRule(
Class<? extends Aggregate> aggregateClass,
Class<? extends Project> projectClass,
RelBuilderFactory relBuilderFactory) {
super(
operand(aggregateClass,
operand(projectClass, any())),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:beam,代码行数:10,代码来源:BeamAggregationRule.java
示例3: FlinkAggregateExpandDistinctAggregatesRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
public FlinkAggregateExpandDistinctAggregatesRule(
Class<? extends LogicalAggregate> clazz,
boolean useGroupingSets,
RelBuilderFactory relBuilderFactory) {
super(operand(clazz, any()), relBuilderFactory, null);
this.useGroupingSets = useGroupingSets;
}
开发者ID:axbaretto,项目名称:flink,代码行数:8,代码来源:FlinkAggregateExpandDistinctAggregatesRule.java
示例4: OLAPJoinPushThroughJoinRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
public OLAPJoinPushThroughJoinRule(String description, Class<? extends Join> clazz, RelBuilderFactory relBuilderFactory) {
super(operand(clazz,
operand(clazz, operand(RelNode.class, any()), operand(RelNode.class, null, new Predicate<RelNode>() {
@Override
public boolean apply(@Nullable RelNode input) {
return !(input instanceof TableScan);
}
}, any())),
operand(TableScan.class, any())), relBuilderFactory, description);
}
开发者ID:apache,项目名称:kylin,代码行数:13,代码来源:OLAPJoinPushThroughJoinRule.java
示例5: FilterJoinRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a FilterProjectTransposeRule with an explicit root operand and
* factories.
*/
protected FilterJoinRule(RelOptRuleOperand operand, String id, boolean smart, RelBuilderFactory relBuilderFactory,
Predicate predicate) {
super(operand, relBuilderFactory, "FilterJoinRule:" + id);
this.smart = smart;
this.predicate = Preconditions.checkNotNull(predicate);
}
开发者ID:apache,项目名称:kylin,代码行数:11,代码来源:FilterJoinRule.java
示例6: ConfigImpl
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
private ConfigImpl(boolean convertTableAccess, boolean decorrelationEnabled,
boolean trimUnusedFields, boolean createValuesRel, boolean explain,
boolean expand, int inSubQueryThreshold,
RelBuilderFactory relBuilderFactory) {
this.convertTableAccess = convertTableAccess;
this.decorrelationEnabled = decorrelationEnabled;
this.trimUnusedFields = trimUnusedFields;
this.createValuesRel = createValuesRel;
this.explain = explain;
this.expand = expand;
this.inSubQueryThreshold = inSubQueryThreshold;
this.relBuilderFactory = relBuilderFactory;
}
开发者ID:apache,项目名称:calcite,代码行数:14,代码来源:SqlToRelConverter.java
示例7: CassandraToEnumerableConverterRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a CassandraToEnumerableConverterRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public CassandraToEnumerableConverterRule(
RelBuilderFactory relBuilderFactory) {
super(RelNode.class, Predicates.<RelNode>alwaysTrue(),
CassandraRel.CONVENTION, EnumerableConvention.INSTANCE,
relBuilderFactory, "CassandraToEnumerableConverterRule");
}
开发者ID:apache,项目名称:calcite,代码行数:12,代码来源:CassandraToEnumerableConverterRule.java
示例8: getVolcanoPlanner
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
private RelOptPlanner getVolcanoPlanner(RelNode root) {
final RelBuilderFactory builderFactory =
RelBuilder.proto(PigRelFactories.ALL_PIG_REL_FACTORIES);
final RelOptPlanner planner = root.getCluster().getPlanner(); // VolcanoPlanner
for (RelOptRule r : PigRules.ALL_PIG_OPT_RULES) {
planner.addRule(r);
}
planner.removeRule(FilterAggregateTransposeRule.INSTANCE);
planner.removeRule(FilterJoinRule.FILTER_ON_JOIN);
planner.addRule(
new FilterAggregateTransposeRule(PigFilter.class, builderFactory, PigAggregate.class));
planner.addRule(new FilterIntoJoinRule(true, builderFactory, TRUE_PREDICATE));
planner.setRoot(root);
return planner;
}
开发者ID:apache,项目名称:calcite,代码行数:16,代码来源:PigRelBuilderStyleTest.java
示例9: DruidPostAggregationProjectRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidPostAggregationProjectRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidPostAggregationProjectRule(
RelBuilderFactory relBuilderFactory) {
super(
operand(Project.class,
operand(DruidQuery.class, none())),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:13,代码来源:DruidRules.java
示例10: SemiJoinProjectTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a SemiJoinProjectTransposeRule.
*/
private SemiJoinProjectTransposeRule(RelBuilderFactory relBuilderFactory) {
super(
operand(SemiJoin.class,
some(operand(LogicalProject.class, any()))),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:10,代码来源:SemiJoinProjectTransposeRule.java
示例11: DruidAggregateProjectRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidAggregateProjectRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidAggregateProjectRule(RelBuilderFactory relBuilderFactory) {
super(
operand(Aggregate.class,
operand(Project.class,
operand(DruidQuery.class, none()))),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:13,代码来源:DruidRules.java
示例12: DruidSortProjectTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidSortProjectTransposeRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidSortProjectTransposeRule(RelBuilderFactory relBuilderFactory) {
super(
operand(Sort.class,
operand(Project.class, operand(DruidQuery.class, none()))),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:12,代码来源:DruidRules.java
示例13: DruidProjectSortTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidProjectSortTransposeRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidProjectSortTransposeRule(RelBuilderFactory relBuilderFactory) {
super(
operand(Project.class,
operand(Sort.class, operand(DruidQuery.class, none()))),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:12,代码来源:DruidRules.java
示例14: JdbcToEnumerableConverterRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/** Creates a JdbcToEnumerableConverterRule. */
public JdbcToEnumerableConverterRule(JdbcConvention out,
RelBuilderFactory relBuilderFactory) {
super(RelNode.class, Predicates.<RelNode>alwaysTrue(), out,
EnumerableConvention.INSTANCE, relBuilderFactory,
"JdbcToEnumerableConverterRule:" + out);
}
开发者ID:apache,项目名称:calcite,代码行数:8,代码来源:JdbcToEnumerableConverterRule.java
示例15: DruidAggregateFilterTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidAggregateFilterTransposeRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidAggregateFilterTransposeRule(
RelBuilderFactory relBuilderFactory) {
super(
operand(Aggregate.class,
operand(Filter.class,
operand(DruidQuery.class, none()))),
relBuilderFactory);
}
开发者ID:apache,项目名称:calcite,代码行数:14,代码来源:DruidRules.java
示例16: DruidAggregateExtractProjectRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DruidAggregateExtractProjectRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DruidAggregateExtractProjectRule(
RelBuilderFactory relBuilderFactory) {
super(
operand(Aggregate.class,
operand(DruidQuery.class, none())),
relBuilderFactory);
}
开发者ID:apache,项目名称:calcite,代码行数:13,代码来源:DruidRules.java
示例17: AggregateProjectPullUpConstantsRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates an AggregateProjectPullUpConstantsRule.
*
* @param aggregateClass Aggregate class
* @param inputClass Input class, such as {@link LogicalProject}
* @param relBuilderFactory Builder for relational expressions
* @param description Description, or null to guess description
*/
public AggregateProjectPullUpConstantsRule(
Class<? extends Aggregate> aggregateClass,
Class<? extends RelNode> inputClass,
RelBuilderFactory relBuilderFactory, String description) {
super(
operand(aggregateClass, null, Aggregate.IS_SIMPLE,
operand(inputClass, any())),
relBuilderFactory, description);
}
开发者ID:apache,项目名称:calcite,代码行数:18,代码来源:AggregateProjectPullUpConstantsRule.java
示例18: DeltaAggregateTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DeltaAggregateTransposeRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DeltaAggregateTransposeRule(RelBuilderFactory relBuilderFactory) {
super(
operand(Delta.class,
operand(Aggregate.class, null, Aggregate.NO_INDICATOR, any())),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:12,代码来源:StreamRules.java
示例19: DeltaSortTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a DeltaSortTransposeRule.
*
* @param relBuilderFactory Builder for relational expressions
*/
public DeltaSortTransposeRule(RelBuilderFactory relBuilderFactory) {
super(
operand(Delta.class,
operand(Sort.class, any())),
relBuilderFactory, null);
}
开发者ID:apache,项目名称:calcite,代码行数:12,代码来源:StreamRules.java
示例20: FilterAggregateTransposeRule
import org.apache.calcite.tools.RelBuilderFactory; //导入依赖的package包/类
/**
* Creates a FilterAggregateTransposeRule.
*
* <p>If {@code filterFactory} is null, creates the same kind of filter as
* matched in the rule. Similarly {@code aggregateFactory}.</p>
*/
public FilterAggregateTransposeRule(
Class<? extends Filter> filterClass,
RelBuilderFactory builderFactory,
Class<? extends Aggregate> aggregateClass) {
this(
operand(filterClass,
operand(aggregateClass, any())),
builderFactory);
}
开发者ID:apache,项目名称:calcite,代码行数:16,代码来源:FilterAggregateTransposeRule.java
注:本文中的org.apache.calcite.tools.RelBuilderFactory类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论