Class ExecOpSequentialBindJoinSPARQLwithUNION
java.lang.Object
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.UnaryExecutableOpBase
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoin<SPARQLGraphPattern,SPARQLEndpoint>
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoinSPARQL
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.ExecOpSequentialBindJoinSPARQLwithUNION
- All Implemented Interfaces:
StatsProvider,ExecutableOperator,UnaryExecutableOp
Implementation of the sequential, batch-based bind-join algorithm
that uses UNION clauses with FILTERs inside.
For more details about the actual implementation of the algorithm, and its
extra capabilities, refer to
BaseForExecOpSequentialBindJoin.-
Nested Class Summary
Nested classes/interfaces inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoin
BaseForExecOpSequentialBindJoin.MyIntermediateResultElementSink, BaseForExecOpSequentialBindJoin.MyIntermediateResultElementSinkOuterJoin -
Field Summary
FieldsFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoin
allJoinVarsAreCertain, currentBatch, currentSolMapsForRequest, DEFAULT_BATCH_SIZE, fm, fullResult, minimumRequestBlockSize, numberOfRequestOpsUsed, numOfSolMapsRetrievedPerReqOp, query, requestBlockSize, requestBlockSizeWasReduced, statsOfFirstReqOp, statsOfLastReqOp, useOuterJoinSemantics, varsInQueryFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
collectExceptions, qpInfo -
Constructor Summary
ConstructorsConstructorDescriptionExecOpSequentialBindJoinSPARQLwithUNION(SPARQLGraphPattern query, SPARQLEndpoint fm, ExpectedVariables inputVars, boolean useOuterJoinSemantics, int batchSize, boolean collectExceptions, QueryPlanningInfo qpInfo) -
Method Summary
Modifier and TypeMethodDescriptionprotected NullaryExecutableOpcreateExecutableReqOp(Set<org.apache.jena.sparql.engine.binding.Binding> solMaps) Implementations of this function should create an executable operator that can perform a bind join request in which the query of this bind join operator is combined with the given solution mappings.static SPARQLRequestcreateRequest(Set<org.apache.jena.sparql.engine.binding.Binding> solMaps, org.apache.jena.sparql.syntax.Element pattern, Set<org.apache.jena.sparql.core.Var> varsInQuery) static org.apache.jena.sparql.syntax.ElementcreateUnion(Iterable<org.apache.jena.sparql.engine.binding.Binding> solMaps, org.apache.jena.sparql.syntax.Element pattern, Set<org.apache.jena.sparql.core.Var> varsInQuery) Methods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoinSPARQL
createExecutableReqOpForAllMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpSequentialBindJoin
_concludeExecution, _process, _processJoinableInput, alreadyCovered, areAllJoinVarsAreCertain, consumeMySink, createMySink, createStats, joinInFullRetrievalMode, joinInFullRetrievalMode, performRequestAndHandleResponse, reduceRequestBlockSize, resetStats, switchToFullRetrievalModeMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.UnaryExecutableOpBase
_process, concludeExecution, getStats, process, processMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
getExceptionsCaughtDuringExecution, getQueryPlanningInfo, recordExceptionCaughtDuringExecutionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface se.liu.ida.hefquin.engine.queryplan.executable.ExecutableOperator
getExceptionsCaughtDuringExecution, getQueryPlanningInfo
-
Field Details
-
pattern
protected final org.apache.jena.sparql.syntax.Element pattern
-
-
Constructor Details
-
ExecOpSequentialBindJoinSPARQLwithUNION
public ExecOpSequentialBindJoinSPARQLwithUNION(SPARQLGraphPattern query, SPARQLEndpoint fm, ExpectedVariables inputVars, boolean useOuterJoinSemantics, int batchSize, boolean collectExceptions, QueryPlanningInfo qpInfo) - Parameters:
query- - the graph pattern to be evaluated (in a bind-join manner) at the federation member given as 'fm'fm- - the federation member targeted by this operatorinputVars- - the variables to be expected in the solution mappings that will be pushed as input to this operatoruseOuterJoinSemantics- -trueif the 'query' is to be evaluated under outer-join semantics;falsefor inner-join semanticsbatchSize- - the number of solution mappings to be included in each bind-join request; this value must not be smaller thanBaseForExecOpSequentialBindJoin.minimumRequestBlockSizecollectExceptions- -trueif this operator has to collect exceptions (which is handled entirely by one of the super classes);falseif the operator should immediately throw everyExecOpExecutionExceptionqpInfo- - theQueryPlanningInfoobject that was populated for a physical plan whose root operator was the physical operator for which this executable operator was created
-
-
Method Details
-
createExecutableReqOp
protected NullaryExecutableOp createExecutableReqOp(Set<org.apache.jena.sparql.engine.binding.Binding> solMaps) Description copied from class:BaseForExecOpSequentialBindJoinImplementations of this function should create an executable operator that can perform a bind join request in which the query of this bind join operator is combined with the given solution mappings. Implementations can assume that the given solution mappings are already restricted to contain bindings only for the join variables, that none of the given solution mappings contains blank nodes, that none of the given solution mappings is the empty solution mapping, and that the given set of solution mappings is duplicate free and nonempty. The operator created by this function should throw exceptions instead of collecting them.- Specified by:
createExecutableReqOpin classBaseForExecOpSequentialBindJoin<SPARQLGraphPattern,SPARQLEndpoint>
-
createRequest
public static SPARQLRequest createRequest(Set<org.apache.jena.sparql.engine.binding.Binding> solMaps, org.apache.jena.sparql.syntax.Element pattern, Set<org.apache.jena.sparql.core.Var> varsInQuery) -
createUnion
-