Class ExecOpParallelBindJoinSPARQLwithVALUES
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.BaseForUnaryExecOpWithCollectedInput
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoin<SPARQLGraphPattern,SPARQLEndpoint,SPARQLRequest,SolMapsResponse>
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoinSPARQL
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.ExecOpParallelBindJoinSPARQLwithVALUES
- All Implemented Interfaces:
StatsProvider,ExecutableOperator,UnaryExecutableOp
Implementation of the parallel, batch-based bind-join algorithm that
uses a VALUES clause to capture the potential join partners that are
sent to the federation member.
For more details about the actual implementation of the algorithm, and its
extra capabilities, refer to
BaseForExecOpParallelBindJoin.-
Nested Class Summary
Nested classes/interfaces inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoin
BaseForExecOpParallelBindJoin.MyResponseProcessor -
Field Summary
FieldsFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoin
allJoinVarsAreCertain, batches, batchSize, currentBatch, DEFAULT_BATCH_SIZE, fm, fullResult, futures, numberOfRequestsUsed, numOfSolMapsRetrievedPerReq, query, requestDurationsInMS, solMapsCoveredByCurrentBatch, solMapsCoveredPerBatch, statsOfFullRetrievalReqOp, useOuterJoinSemantics, varsInQueryFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForUnaryExecOpWithCollectedInput
collectedInputSolMaps, minimumCollectionSizeFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
collectExceptions, qpInfo -
Constructor Summary
ConstructorsConstructorDescriptionExecOpParallelBindJoinSPARQLwithVALUES(SPARQLGraphPattern query, SPARQLEndpoint fm, ExpectedVariables inputVars, boolean useOuterJoinSemantics, int batchSize, boolean collectExceptions, QueryPlanningInfo qpInfo) -
Method Summary
Modifier and TypeMethodDescriptionprotected SPARQLRequestcreateRequest(Set<org.apache.jena.sparql.engine.binding.Binding> batch) Implementations of this function should create a bind-join request for the given batch of solution mappings.Methods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoinSPARQL
createExecutableReqOpForAll, extractSolMapsMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpParallelBindJoin
_concludeExecution, _processCollectedInput, alreadyCovered, batchUp, createStats, handleCollectedSolMaps, initiateProcessingOfBatches, innerJoin, joinInFullRetrievalMode, joinInFullRetrievalMode, leftOuterJoin, obtainFullResult, recordException, resetStats, switchToFullRetrievalModeMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForUnaryExecOpWithCollectedInput
_concludeExecution, _process, _processMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.UnaryExecutableOpBase
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
-
ExecOpParallelBindJoinSPARQLwithVALUES
public ExecOpParallelBindJoinSPARQLwithVALUES(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 requestcollectExceptions- -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
-
createRequest
Description copied from class:BaseForExecOpParallelBindJoinImplementations of this function should create a bind-join request for the given batch of 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.- Specified by:
createRequestin classBaseForExecOpParallelBindJoin<SPARQLGraphPattern,SPARQLEndpoint, SPARQLRequest, SolMapsResponse>
-