public class Programs
extends java.lang.Object
Program
s.Modifier and Type | Class and Description |
---|---|
private static class |
Programs.DecorrelateProgram
Program that de-correlates a query.
|
(package private) static class |
Programs.RuleSetProgram
Program backed by a
RuleSet . |
private static class |
Programs.SequenceProgram
Program that runs sub-programs, sending the output of the previous as
input to the next.
|
private static class |
Programs.TrimFieldsProgram
Program that trims fields.
|
Modifier and Type | Field and Description |
---|---|
static Program |
CALC_PROGRAM
Program that converts filters and projects to
Calc s. |
static com.google.common.collect.ImmutableList<RelOptRule> |
CALC_RULES
Deprecated.
|
static com.google.common.collect.ImmutableSet<RelOptRule> |
RULE_SET |
static Program |
SUB_QUERY_PROGRAM
Program that expands sub-queries.
|
Modifier | Constructor and Description |
---|---|
private |
Programs() |
Modifier and Type | Method and Description |
---|---|
static Program |
calc(RelMetadataProvider metadataProvider) |
static Program |
getProgram() |
static Program |
hep(java.lang.Iterable<? extends RelOptRule> rules,
boolean noDag,
RelMetadataProvider metadataProvider)
Creates a program that executes a list of rules in a HEP planner.
|
static Program |
heuristicJoinOrder(java.lang.Iterable<? extends RelOptRule> rules,
boolean bushy,
int minJoinCount)
Creates a program that invokes heuristic join-order optimization
(via
JoinToMultiJoinRule ,
MultiJoin and
LoptOptimizeJoinRule )
if there are 6 or more joins (7 or more relations). |
static java.util.List<Program> |
listOf(java.util.List<RuleSet> ruleSets)
Creates a list of programs based on a list of rule sets.
|
static java.util.List<Program> |
listOf(RuleSet... ruleSets)
Creates a list of programs based on an array of rule sets.
|
static Program |
of(HepProgram hepProgram,
boolean noDag,
RelMetadataProvider metadataProvider)
Creates a program that executes a
HepProgram . |
static Program |
of(RuleSet ruleSet)
Creates a program that executes a rule set.
|
static Program |
ofRules(java.lang.Iterable<? extends RelOptRule> rules)
Creates a program from a list of rules.
|
static Program |
ofRules(RelOptRule... rules)
Creates a program from a list of rules.
|
static Program |
sequence(Program... programs)
Creates a program that executes a sequence of programs.
|
static Program |
standard()
Returns the standard program used by Prepare.
|
static Program |
standard(RelMetadataProvider metadataProvider)
Returns the standard program with user metadata provider.
|
static Program |
subquery(RelMetadataProvider metadataProvider)
Deprecated.
|
static Program |
subQuery(RelMetadataProvider metadataProvider) |
@Deprecated public static final com.google.common.collect.ImmutableList<RelOptRule> CALC_RULES
public static final Program CALC_PROGRAM
Calc
s.public static final Program SUB_QUERY_PROGRAM
public static final com.google.common.collect.ImmutableSet<RelOptRule> RULE_SET
public static java.util.List<Program> listOf(RuleSet... ruleSets)
public static java.util.List<Program> listOf(java.util.List<RuleSet> ruleSets)
public static Program ofRules(RelOptRule... rules)
public static Program ofRules(java.lang.Iterable<? extends RelOptRule> rules)
public static Program sequence(Program... programs)
public static Program hep(java.lang.Iterable<? extends RelOptRule> rules, boolean noDag, RelMetadataProvider metadataProvider)
public static Program of(HepProgram hepProgram, boolean noDag, RelMetadataProvider metadataProvider)
HepProgram
.public static Program heuristicJoinOrder(java.lang.Iterable<? extends RelOptRule> rules, boolean bushy, int minJoinCount)
JoinToMultiJoinRule
,
MultiJoin
and
LoptOptimizeJoinRule
)
if there are 6 or more joins (7 or more relations).public static Program calc(RelMetadataProvider metadataProvider)
@Deprecated public static Program subquery(RelMetadataProvider metadataProvider)
public static Program subQuery(RelMetadataProvider metadataProvider)
public static Program getProgram()
public static Program standard()
public static Program standard(RelMetadataProvider metadataProvider)
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.