public class SparqlFederationEvalStrategy extends FederationEvalStrategy
Joins are executed using ControlledWorkerBoundJoin
.
This implementation uses the SPARQL 1.1 VALUES operator for the bound-join evaluation
scache, executor, federationContext
dataset, serviceResolver, tripleSource
Constructor and Description |
---|
SparqlFederationEvalStrategy(FederationContext federationContext) |
createSourceSelectionCache, evaluate, evaluate, evaluate, evaluate, evaluateAtStatementSources, evaluateAtStatementSources, evaluateAtStatementSources, evaluateExclusiveTupleExpr, evaluateLeftJoin, evaluateNaryUnion, evaluateNJoin, evaluateService, evaluateService, evaluateSingleSourceQuery, getStatements, optimize, optimizeExclusiveExpressions, optimizeJoinOrder, performSourceSelection, propagateServices
evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, getLimit, getService, getUUID, getVarValue, getZeroLengthPathIterator, isReducedOrDistinct, isTrue, isUnbound, setFederatedServiceResolver, setOptimizerPipeline, setTrackResultSize, setTrackTime
public SparqlFederationEvalStrategy(FederationContext federationContext)
public CloseableIteration<BindingSet,QueryEvaluationException> evaluateBoundJoinStatementPattern(StatementTupleExpr stmt, List<BindingSet> bindings) throws QueryEvaluationException
FederationEvalStrategy
evaluateBoundJoinStatementPattern
in class FederationEvalStrategy
QueryEvaluationException
protected CloseableIteration<BindingSet,QueryEvaluationException> evaluateBoundJoinStatementPattern_UNION(StatementTupleExpr stmt, List<BindingSet> bindings) throws QueryEvaluationException
QueryEvaluationException
public CloseableIteration<BindingSet,QueryEvaluationException> evaluateGroupedCheck(CheckStatementPattern stmt, List<BindingSet> bindings) throws QueryEvaluationException
FederationEvalStrategy
evaluateGroupedCheck
in class FederationEvalStrategy
QueryEvaluationException
public CloseableIteration<BindingSet,QueryEvaluationException> executeJoin(ControlledWorkerScheduler<BindingSet> joinScheduler, CloseableIteration<BindingSet,QueryEvaluationException> leftIter, TupleExpr rightArg, Set<String> joinVars, BindingSet bindings, QueryInfo queryInfo) throws QueryEvaluationException
FederationEvalStrategy
SynchronousJoin
- SynchronousBoundJoin
-
ControlledWorkerJoin
- ControlledWorkerBoundJoin
For endpoint federation use controlled worker bound join, for local federation use controlled worker join. The
other operators are there for completeness.
Use FederationEvalStrategy.executor
to execute the join (it is a runnable).executeJoin
in class FederationEvalStrategy
QueryEvaluationException
public CloseableIteration<BindingSet,QueryEvaluationException> evaluateExclusiveGroup(ExclusiveGroup group, BindingSet bindings) throws RepositoryException, MalformedQueryException, QueryEvaluationException
evaluateExclusiveGroup
in class FederationEvalStrategy
RepositoryException
MalformedQueryException
QueryEvaluationException
Copyright © 2015-2022 Eclipse Foundation. All Rights Reserved.