Class QueryJoinOptimizer.JoinVisitor
- java.lang.Object
-
- org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor<java.lang.RuntimeException>
-
- org.eclipse.rdf4j.query.algebra.evaluation.impl.QueryJoinOptimizer.JoinVisitor
-
- All Implemented Interfaces:
QueryModelVisitor<java.lang.RuntimeException>
- Enclosing class:
- QueryJoinOptimizer
@Deprecated protected class QueryJoinOptimizer.JoinVisitor extends AbstractQueryModelVisitor<java.lang.RuntimeException>
Deprecated.This class is protected for historic reasons only, and will be made private in a future major release.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.Set<java.lang.String>
boundVars
Deprecated.
-
Constructor Summary
Constructors Modifier Constructor Description protected
JoinVisitor()
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected java.util.List<Var>
getConstantVars(java.lang.Iterable<Var> vars)
Deprecated.protected java.util.List<TupleExpr>
getExtensions(java.util.List<TupleExpr> expressions)
Deprecated.protected int
getForeignVarFreq(java.util.List<Var> ownUnboundVars, java.util.Map<Var,java.lang.Integer> varFreqMap)
Deprecated.protected <L extends java.util.List<TupleExpr>>
LgetJoinArgs(TupleExpr tupleExpr, L joinArgs)
Deprecated.private TupleExpr
getNextSubselect(java.util.List<TupleExpr> currentList, java.util.List<TupleExpr> joinArgs)
Deprecated.protected java.util.List<Var>
getStatementPatternVars(TupleExpr tupleExpr)
Deprecated.protected java.util.List<TupleExpr>
getSubSelects(java.util.List<TupleExpr> expressions)
Deprecated.protected double
getTupleExprCardinality(TupleExpr tupleExpr, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.protected double
getTupleExprCost(TupleExpr tupleExpr, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.protected java.util.List<Var>
getUnboundVars(java.lang.Iterable<Var> vars)
Deprecated.protected <M extends java.util.Map<Var,java.lang.Integer>>
MgetVarFreqMap(java.util.List<Var> varList, M varFreqMap)
Deprecated.void
meet(Join node)
Deprecated.void
meet(LeftJoin leftJoin)
Deprecated.void
meet(StatementPattern node)
Deprecated.private void
optimizePriorityJoin(java.util.Set<java.lang.String> origBoundVars, TupleExpr join)
Deprecated.protected java.util.List<TupleExpr>
reorderSubselects(java.util.List<TupleExpr> subselects)
Deprecated.Determines an optimal ordering of subselect join arguments, based on variable bindings.protected TupleExpr
selectNextTupleExpr(java.util.List<TupleExpr> expressions, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.Selects from a list of tuple expressions the next tuple expression that should be evaluated.-
Methods inherited from class org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor
meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meetBinaryTupleOperator, meetBinaryValueOperator, meetCompareSubQueryValueOperator, meetNAryValueOperator, meetNode, meetOther, meetSubQueryValueOperator, meetUnaryTupleOperator, meetUnaryValueOperator, meetUpdateExpr
-
-
-
-
Method Detail
-
meet
public void meet(LeftJoin leftJoin)
Deprecated.- Specified by:
meet
in interfaceQueryModelVisitor<java.lang.RuntimeException>
- Overrides:
meet
in classAbstractQueryModelVisitor<java.lang.RuntimeException>
-
meet
public void meet(StatementPattern node) throws java.lang.RuntimeException
Deprecated.- Specified by:
meet
in interfaceQueryModelVisitor<java.lang.RuntimeException>
- Overrides:
meet
in classAbstractQueryModelVisitor<java.lang.RuntimeException>
- Throws:
java.lang.RuntimeException
-
optimizePriorityJoin
private void optimizePriorityJoin(java.util.Set<java.lang.String> origBoundVars, TupleExpr join)
Deprecated.
-
meet
public void meet(Join node)
Deprecated.- Specified by:
meet
in interfaceQueryModelVisitor<java.lang.RuntimeException>
- Overrides:
meet
in classAbstractQueryModelVisitor<java.lang.RuntimeException>
-
getJoinArgs
protected <L extends java.util.List<TupleExpr>> L getJoinArgs(TupleExpr tupleExpr, L joinArgs)
Deprecated.
-
getStatementPatternVars
protected java.util.List<Var> getStatementPatternVars(TupleExpr tupleExpr)
Deprecated.
-
getVarFreqMap
protected <M extends java.util.Map<Var,java.lang.Integer>> M getVarFreqMap(java.util.List<Var> varList, M varFreqMap)
Deprecated.
-
getExtensions
protected java.util.List<TupleExpr> getExtensions(java.util.List<TupleExpr> expressions)
Deprecated.
-
getSubSelects
protected java.util.List<TupleExpr> getSubSelects(java.util.List<TupleExpr> expressions)
Deprecated.
-
reorderSubselects
protected java.util.List<TupleExpr> reorderSubselects(java.util.List<TupleExpr> subselects)
Deprecated.Determines an optimal ordering of subselect join arguments, based on variable bindings. An ordering is considered optimal if for each consecutive element it holds that first of all its shared variables with all previous elements is maximized, and second, the union of all its variables with all previous elements is maximized.Example: reordering
[f] [a b c] [e f] [a d] [b e]
should result in:
[a b c] [a d] [b e] [e f] [f]
- Parameters:
subselects
- the original ordering of expressions- Returns:
- the optimized ordering of expressions
-
getNextSubselect
private TupleExpr getNextSubselect(java.util.List<TupleExpr> currentList, java.util.List<TupleExpr> joinArgs)
Deprecated.
-
selectNextTupleExpr
protected TupleExpr selectNextTupleExpr(java.util.List<TupleExpr> expressions, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.Selects from a list of tuple expressions the next tuple expression that should be evaluated. This method selects the tuple expression with highest number of bound variables, preferring variables that have been bound in other tuple expressions over variables with a fixed value.
-
getTupleExprCardinality
@Deprecated protected double getTupleExprCardinality(TupleExpr tupleExpr, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.
-
getTupleExprCost
protected double getTupleExprCost(TupleExpr tupleExpr, java.util.Map<TupleExpr,java.lang.Double> cardinalityMap, java.util.Map<TupleExpr,java.util.List<Var>> varsMap, java.util.Map<Var,java.lang.Integer> varFreqMap, java.util.Set<java.lang.String> boundVars)
Deprecated.
-
getConstantVars
protected java.util.List<Var> getConstantVars(java.lang.Iterable<Var> vars)
Deprecated.
-
getUnboundVars
protected java.util.List<Var> getUnboundVars(java.lang.Iterable<Var> vars)
Deprecated.
-
-