Uses of Interface
se.liu.ida.hefquin.engine.queryplan.logical.LogicalPlan
Packages that use LogicalPlan
Package
Description
-
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryplan.logical
Subinterfaces of LogicalPlan in se.liu.ida.hefquin.engine.queryplan.logicalModifier and TypeInterfaceDescriptioninterfaceinterfaceinterfaceinterfaceMethods in se.liu.ida.hefquin.engine.queryplan.logical that return LogicalPlanModifier and TypeMethodDescriptionstatic LogicalPlanLogicalPlanUtils.createPlanWithBinaryJoin(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpJoinas root operator and the given plans as its two subplans.static LogicalPlanLogicalPlanUtils.createPlanWithBinaryUnion(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpUnionas root operator and the given plans as its two subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMinus(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMinusas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayJoin(boolean mayReduce, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith aLogicalOpMultiwayJoinas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayJoin(boolean mayReduce, List<LogicalPlan> subPlans, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMultiwayJoinas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayUnion(boolean mayReduce, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith aLogicalOpMultiwayUnionas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayUnion(boolean mayReduce, List<LogicalPlan> subPlans, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMultiwayUnionas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithSubPlans(LogicalOperator rootOp, Iterable<QueryPlanProperty> qpInfo, List<LogicalPlan> subPlans) Creates aLogicalPlanwith the given operator as root operator and the plans given in the list as subplans.static LogicalPlanLogicalPlanUtils.createPlanWithSubPlans(LogicalOperator rootOp, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith the given operator as root operator and the given plans as subplans.LogicalPlan.getSubPlan(int i) LogicalPlanWithUnaryRoot.getSubPlan()Convenience method that always should return the same as what is returned by callinggetSubPlan(int)with a value of 0.LogicalPlanWithBinaryRoot.getSubPlan1()Convenience method that always should return the same as what is returned by callinggetSubPlan(int)with a value of 0.LogicalPlanWithBinaryRoot.getSubPlan2()Convenience method that always should return the same as what is returned by callinggetSubPlan(int)with a value of 1.Methods in se.liu.ida.hefquin.engine.queryplan.logical that return types with arguments of type LogicalPlanModifier and TypeMethodDescriptionLogicalPlanWithNaryRoot.getSubPlans()Convenience method that always should return an iterator over the same sub-plans that can be accessed viagetSubPlan(int).Methods in se.liu.ida.hefquin.engine.queryplan.logical with parameters of type LogicalPlanModifier and TypeMethodDescriptionstatic intLogicalPlanUtils.countSubplans(LogicalPlan plan) static LogicalPlanLogicalPlanUtils.createPlanWithBinaryJoin(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpJoinas root operator and the given plans as its two subplans.static LogicalPlanLogicalPlanUtils.createPlanWithBinaryUnion(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpUnionas root operator and the given plans as its two subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMinus(boolean mayReduce, LogicalPlan subPlan1, LogicalPlan subPlan2, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMinusas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayJoin(boolean mayReduce, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith aLogicalOpMultiwayJoinas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayUnion(boolean mayReduce, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith aLogicalOpMultiwayUnionas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithSubPlans(LogicalOperator rootOp, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Creates aLogicalPlanwith the given operator as root operator and the given plans as subplans.static booleanLogicalPlanUtils.isSourceAssignment(LogicalPlan plan) Returns true if the given logical plan is a source assignment.voidLogicalPlanWalker.LogicalWalkerVisitor.walk(LogicalPlan plan) static voidLogicalPlanWalker.walk(LogicalPlan plan, LogicalPlanVisitor beforeVisitor, LogicalPlanVisitor afterVisitor) Method parameters in se.liu.ida.hefquin.engine.queryplan.logical with type arguments of type LogicalPlanModifier and TypeMethodDescriptionstatic LogicalPlanLogicalPlanUtils.createPlanWithMultiwayJoin(boolean mayReduce, List<LogicalPlan> subPlans, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMultiwayJoinas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithMultiwayUnion(boolean mayReduce, List<LogicalPlan> subPlans, Iterable<QueryPlanProperty> qpInfo) Creates aLogicalPlanwith aLogicalOpMultiwayUnionas root operator and the given plans as its subplans.static LogicalPlanLogicalPlanUtils.createPlanWithSubPlans(LogicalOperator rootOp, Iterable<QueryPlanProperty> qpInfo, List<LogicalPlan> subPlans) Creates aLogicalPlanwith the given operator as root operator and the plans given in the list as subplans. -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryplan.logical.impl
Classes in se.liu.ida.hefquin.engine.queryplan.logical.impl that implement LogicalPlanModifier and TypeClassDescriptionclassclassclassclassThis class represents a logical plan that produces the empty result.classFields in se.liu.ida.hefquin.engine.queryplan.logical.impl declared as LogicalPlanModifier and TypeFieldDescriptionprotected static final LogicalPlanLogicalPlanWithoutResult.instanceMethods in se.liu.ida.hefquin.engine.queryplan.logical.impl that return LogicalPlanModifier and TypeMethodDescriptionstatic LogicalPlanLogicalPlanWithoutResult.getInstance()LogicalPlanWithBinaryRootImpl.getSubPlan(int i) LogicalPlanWithNaryRootImpl.getSubPlan(int i) LogicalPlanWithNullaryRootImpl.getSubPlan(int i) LogicalPlanWithoutResult.getSubPlan(int i) LogicalPlanWithUnaryRootImpl.getSubPlan()LogicalPlanWithUnaryRootImpl.getSubPlan(int i) LogicalPlanWithBinaryRootImpl.getSubPlan1()LogicalPlanWithBinaryRootImpl.getSubPlan2()Methods in se.liu.ida.hefquin.engine.queryplan.logical.impl that return types with arguments of type LogicalPlanConstructors in se.liu.ida.hefquin.engine.queryplan.logical.impl with parameters of type LogicalPlanModifierConstructorDescriptionLogicalPlanWithBinaryRootImpl(BinaryLogicalOp rootOp, Iterable<QueryPlanProperty> qpInfo, LogicalPlan subPlan1, LogicalPlan subPlan2) Constructor.LogicalPlanWithNaryRootImpl(NaryLogicalOp rootOp, Iterable<QueryPlanProperty> qpInfo, LogicalPlan... subPlans) Constructor.LogicalPlanWithUnaryRootImpl(UnaryLogicalOp rootOp, Iterable<QueryPlanProperty> qpInfo, LogicalPlan subPlan) Constructor.Constructor parameters in se.liu.ida.hefquin.engine.queryplan.logical.impl with type arguments of type LogicalPlanModifierConstructorDescriptionLogicalPlanWithNaryRootImpl(NaryLogicalOp rootOp, Iterable<QueryPlanProperty> qpInfo, List<LogicalPlan> subPlans) Constructor. -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryplan.utils
Fields in se.liu.ida.hefquin.engine.queryplan.utils with type parameters of type LogicalPlanModifier and TypeFieldDescriptionprotected final Map<LogicalPlan, PhysicalPlan> LogicalToPhysicalPlanConverterImpl.Worker.convertedSubPlansMethods in se.liu.ida.hefquin.engine.queryplan.utils with parameters of type LogicalPlanModifier and TypeMethodDescriptionLogicalToPhysicalPlanConverter.convert(LogicalPlan lp, boolean keepMultiwayJoins, QueryProcContext ctxt) LogicalToPhysicalPlanConverterImpl.convert(LogicalPlan lp, boolean keepMultiwayJoins, QueryProcContext ctxt) LogicalToPhysicalPlanConverterImpl.Worker.convert(LogicalPlan lp, boolean keepMultiwayJoins) protected PhysicalPlan[]LogicalToPhysicalPlanConverterImpl.Worker.convertChildren(LogicalPlan lp, boolean keepMultiwayJoins) Converts the sub-plans of the given logical plan (if any) and returns a list of the resulting physical plans.TextBasedLogicalPlanPrinterImpl.createPrintablePlan(LogicalPlan lp) TextBasedLogicalPlanPrinterImpl.createPrintableSubPlans(LogicalPlan lp) voidLogicalPlanPrinter.print(LogicalPlan plan, PrintStream out, LogicalPlanPrinter.LogicalPlanStage planType) Prints the given plan to the given stream.voidLogicalPlanPrinter.print(LogicalPlan plan, LogicalPlanPrinter.LogicalPlanStage planType) Prints the given plan to the stream(s) that are stored in this printer.voidTextBasedLogicalPlanPrinterImpl.print(LogicalPlan plan, PrintStream out, LogicalPlanPrinter.LogicalPlanStage planType) voidTextBasedLogicalPlanPrinterImpl.print(LogicalPlan plan, LogicalPlanPrinter.LogicalPlanStage planType) -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc
Methods in se.liu.ida.hefquin.engine.queryproc that return LogicalPlanModifier and TypeMethodDescriptionQueryPlanningStats.getResultingLogicalPlan()QueryPlanningStats.getResultingSourceAssignment()LogicalOptimizer.optimize(LogicalPlan inputPlan, boolean keepNaryOperators, QueryProcContext ctxt) Methods in se.liu.ida.hefquin.engine.queryproc that return types with arguments of type LogicalPlanModifier and TypeMethodDescriptionSourcePlanner.createSourceAssignment(Query query, QueryProcContext ctxt) The logical plan returned by this method is a source assignment (see Definition 8 of our FedQPL paper); that is, the only types of operators that it contains are request operators (), multiway joins (invalid reference
LogicalOpRequest), and multiway unions (invalid reference
LogicalOpMultiwayJoin).invalid reference
LogicalOpMultiwayUnionMethods in se.liu.ida.hefquin.engine.queryproc with parameters of type LogicalPlanModifier and TypeMethodDescriptionvoidCardinalityEstimator.addCardinalities(LogicalPlan... plans) Annotates each of the given plans (including, recursively, each of their subplans) with estimates regarding their result cardinalities.LogicalOptimizer.optimize(LogicalPlan inputPlan, boolean keepNaryOperators, QueryProcContext ctxt) PhysicalOptimizer.optimize(LogicalPlan initialPlan, QueryProcContext ctxt) -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.cardinality
Methods in se.liu.ida.hefquin.engine.queryproc.impl.cardinality that return types with arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected Set<LogicalPlan> RequestBasedCardinalityEstimator.extractNullarySubPlans(LogicalPlan... plans) Returns all relevant nullary subplans that are somewhere within any of the given plans, where such a subplan is considered relevant if it does not yet have a cardinality estimate.Methods in se.liu.ida.hefquin.engine.queryproc.impl.cardinality with parameters of type LogicalPlanModifier and TypeMethodDescriptionvoidCardinalityEstimationWorker.addCardinalities(LogicalPlan... plans) Determine a cardinality estimate for each of the given plans recursively, assuming that every nullary subplan within each of the given plans is already annotated with a cardinality estimate.voidCardinalityEstimationWorkerImpl.addCardinalities(LogicalPlan... plans) voidRequestBasedCardinalityEstimator.addCardinalities(LogicalPlan... plans) voidRequestBasedCardinalityEstimator.addCardinalitiesForRequests(LogicalPlan... plans) Makes sure that every nullary subplan within each of the given plans is annotated with cardinality estimates (which are determined by issuing cardinality requests).protected voidCardinalityEstimationWorkerImpl.addCardinality(LogicalPlan plan) Assumes that all nullary subplans within the given plan are already annotated with a cardinality estimate.protected Set<LogicalPlan> RequestBasedCardinalityEstimator.extractNullarySubPlans(LogicalPlan... plans) Returns all relevant nullary subplans that are somewhere within any of the given plans, where such a subplan is considered relevant if it does not yet have a cardinality estimate.protected voidRequestBasedCardinalityEstimator.extractNullarySubPlans(LogicalPlan plan, Set<LogicalPlan> extractedSubPlans) Extracts all relevant nullary subplans that are somewhere within the given plan and adds these subplans to the given set, where such a subplan is considered relevant if it does not yet have a cardinality estimate.Method parameters in se.liu.ida.hefquin.engine.queryproc.impl.cardinality with type arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected voidRequestBasedCardinalityEstimator.extractNullarySubPlans(LogicalPlan plan, Set<LogicalPlan> extractedSubPlans) Extracts all relevant nullary subplans that are somewhere within the given plan and adds these subplans to the given set, where such a subplan is considered relevant if it does not yet have a cardinality estimate. -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer
Fields in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer declared as LogicalPlanModifier and TypeFieldDescriptionprotected final LogicalPlanApplyVocabularyMappings.Worker.inputPlanprotected LogicalPlanApplyVocabularyMappings.Worker.rewrittenPlanMethods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer that return LogicalPlanModifier and TypeMethodDescriptionApplyVocabularyMappings.apply(LogicalPlan inputPlan) Rewrites an initial logical plan into a second plan which incorporates translations of local to global vocabulary and request-operator rewriting.HeuristicForLogicalOptimization.apply(LogicalPlan inputPlan) Applies this heuristics to the given plan and returns the resulting, potentially rewritten plan.ApplyVocabularyMappings.Worker.getRewrittenPlan()HeuristicsBasedLogicalOptimizerImpl.optimize(LogicalPlan inputPlan, boolean keepNaryOperators, QueryProcContext ctxt) static LogicalPlanApplyVocabularyMappings.rewriteReqOf(SPARQLGraphPattern pattern, FederationMember fm, boolean mayReduce) Creates a logical plan where all requests are TriplePatternRequests for use when a federation member's interface is a TPF-server.static LogicalPlanApplyVocabularyMappings.rewriteToUseLocalVocabulary(LogicalPlan inputPlan) Rewrites the given logical plan with a request operator as root into a logical plan that uses the local vocabulary of the federation member of the request.Methods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer with parameters of type LogicalPlanModifier and TypeMethodDescriptionApplyVocabularyMappings.apply(LogicalPlan inputPlan) Rewrites an initial logical plan into a second plan which incorporates translations of local to global vocabulary and request-operator rewriting.HeuristicForLogicalOptimization.apply(LogicalPlan inputPlan) Applies this heuristics to the given plan and returns the resulting, potentially rewritten plan.HeuristicsBasedLogicalOptimizerImpl.optimize(LogicalPlan inputPlan, boolean keepNaryOperators, QueryProcContext ctxt) static LogicalPlanApplyVocabularyMappings.rewriteToUseLocalVocabulary(LogicalPlan inputPlan) Rewrites the given logical plan with a request operator as root into a logical plan that uses the local vocabulary of the federation member of the request.Constructors in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer with parameters of type LogicalPlan -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics
Fields in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics declared as LogicalPlanModifier and TypeFieldDescriptionprotected LogicalPlanFilterPushDown.Worker.createdPlanprotected LogicalPlanProjectPushDown.Worker.createdPlanprotected final LogicalPlanFilterPushDown.Worker.inputPlanprotected final LogicalPlanProjectPushDown.Worker.inputPlanprotected LogicalPlanMergeRequests.Worker.returnPlanprotected final LogicalPlanFilterPushDown.Worker.subPlanUnderFilterprotected final LogicalPlanProjectPushDown.Worker.subPlanUnderProjectFields in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics with type parameters of type LogicalPlanModifier and TypeFieldDescriptionprotected final List<LogicalPlan> MergeRequests.Worker.rewrittenSubPlansMethods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics that return LogicalPlanModifier and TypeMethodDescriptionprotected LogicalPlanCardinalityBasedJoinOrderingBase._apply(LogicalPlan inputPlan) protected LogicalPlanRemoveSubPlansWithEmptyResults._apply(LogicalPlan inputPlan) CardinalityBasedJoinOrderingBase.apply(LogicalPlan inputPlan) FilterPushDown.apply(LogicalPlan inputPlan) GreedyBasedReordering.apply(LogicalPlan inputPlan) MergeRequests.apply(LogicalPlan inputPlan) ProjectPushDown.apply(LogicalPlan inputPlan) PullUpLtgOverJoin.apply(LogicalPlan inputPlan) PullUpLtgOverUnion.apply(LogicalPlan inputPlan) PushJoinUnderUnionWithRequests.apply(LogicalPlan inputPlan) RemovePairsOfG2lAndL2g.apply(LogicalPlan inputPlan) RemoveSubPlansWithEmptyResults.apply(LogicalPlan inputPlan) RemoveUnnecessaryL2gAndG2l.apply(LogicalPlan inputPlan) UnionPullUp.apply(LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.applyToPlanWithFilterAsRootOperator(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.applyToPlanWithProjectAsRootOperator(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject, LogicalPlan inputPlan) protected LogicalPlanGreedyBasedReordering.constructBinaryPlan(boolean mayReduce, List<QueryAnalyzer> selectedSubPlans) protected LogicalPlanFilterPushDown.createPlanAfterPushingInSubPlan(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForAddOpUnderFilter(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Assumes that the given child operator is either aLogicalOpGPAdd, or aLogicalOpGPOptAdd.protected LogicalPlanProjectPushDown.createPlanForAddOpUnderProject(LogicalOpProject parentProjectOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Pushes a project operator below a gpAdd or gpOptAdd operator.protected LogicalPlanFilterPushDown.createPlanForBindUnderFilter(LogicalOpFilter filterOp, LogicalOpBind bindOp, LogicalPlan subPlanUnderBind, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForBindUnderProject(LogicalOpProject projectOp, LogicalOpBind bindOp, LogicalPlan subPlanUnderBind, LogicalPlan inputPlan) Attempts to push a project operator below a bind operator.protected LogicalPlanFilterPushDown.createPlanForFilterUnderFilter(LogicalOpFilter parentFilterOp, LogicalOpFilter childFilterOp, LogicalPlan subPlanUnderChildFilterOp) protected LogicalPlanProjectPushDown.createPlanForFixedSolMapUnderProject(LogicalOpProject projectOp, LogicalOpFixedSolMap fixedSolMapOp, LogicalPlan inputPlan) Applies a project operator to a fixed solution mapping operator.protected LogicalPlanProjectPushDown.createPlanForJoinLikeOpUnderProject(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject, LogicalPlan inputPlan) Pushes a projection below a n-ary operator by splitting required variables per branch.protected LogicalPlanFilterPushDown.createPlanForJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForL2GOrG2LUnderFilter(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Assumes that the given child operator is either aLogicalOpLocalToGlobalor aLogicalOpGlobalToLocal.protected LogicalPlanProjectPushDown.createPlanForL2GOrG2LUnderProject(LogicalOpProject projectOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp) Assumes that the given child operator is either aLogicalOpLocalToGlobalor aLogicalOpGlobalToLocal.protected LogicalPlanFilterPushDown.createPlanForLeftJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan nonoptSubPlan, LogicalPlan optSubPlan, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForMinusUnderFilter(LogicalOpFilter filterOp, LogicalOpMinus op, LogicalPlan subPlanUnderFilter) protected LogicalPlanFilterPushDown.createPlanForMultiwayLeftJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForProjectUnderProject(LogicalOpProject parentProjectOp, LogicalOpProject childProjectOp, LogicalPlan subPlanUnderChildProjectOp) Merges a parent and child project operator into a single project operator.protected LogicalPlanFilterPushDown.createPlanForRequestUnderFilter(LogicalOpFilter filterOp, LogicalOpRequest<?, ?> reqOp, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForRequestUnderProject(LogicalOpProject projectOp, LogicalOpRequest<?, ?> reqOp, LogicalPlan inputPlan) Pushing a project operator into request operator is not possible yet TODO #570protected LogicalPlanFilterPushDown.createPlanForUnaryOpUnderFilter(LogicalOpFilter filterOp, UnaryLogicalOp op, LogicalPlan subPlanUnderOp) protected LogicalPlanProjectPushDown.createPlanForUnaryOpUnderProject(LogicalOpProject projectOp, UnaryLogicalOp op, LogicalPlan subPlanUnderOp) Returns a plan in which the given project operator is pushed under the given unary operator, with the subplan underneath being a version of the given subplan in which the project push down heuristic has been applied recursively.protected LogicalPlanFilterPushDown.createPlanForUnfoldUnderFilter(LogicalOpFilter filterOp, LogicalOpUnfold unfoldOp, LogicalPlan subPlanUnderUnfold, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForUnfoldUnderProject(LogicalOpProject projectOp, LogicalOpUnfold unfoldOp, LogicalPlan subPlanUnderUnfold, LogicalPlan inputPlan) Attempts to push a project operator below an unfold operator.protected LogicalPlanFilterPushDown.createPlanForUnionUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter) protected LogicalPlanProjectPushDown.createPlanForUnionUnderProject(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject) Pushes the project operator into each subplan under the union operator.protected LogicalPlanMergeRequests.createPlanWithSingleRequestOp(SPARQLGraphPattern p, boolean mayReduce, FederationMember fm) protected static LogicalPlanPullUpLtgOverUnion.extractLtgOverNaryOp(LogicalPlan inputPlan) FilterPushDown.Worker.getCreatedPlan()ProjectPushDown.Worker.getCreatedPlan()MergeRequests.Worker.getRewrittenPlan()protected LogicalPlanMergeRequests.mergeSPARQLRequestsViaJoin(FederationMember fm, boolean mayReduce, List<LogicalPlan> reqPlans) Assumes that the given list contains at least two plans and that all plans in the list consist only of a request operator.protected LogicalPlanFilterPushDown.pushToNonOptSubPlan(org.apache.jena.sparql.expr.ExprList filterExprsWithoutAND, LogicalPlan nonoptSubPlan, org.apache.jena.sparql.expr.ExprList toBeKept, boolean mayReduce) protected LogicalPlanGreedyBasedReordering.reorderSubPlans(boolean mayReduce, LogicalPlan inputPlan) protected LogicalPlanPushJoinUnderUnionWithRequests.rewrite(boolean mayReduce, LogicalPlan unionPlan, List<LogicalPlan> subPlansAsInput) UnionPullUp.rewritePlanWithJoinOverUnion(boolean mayReduce, List<LogicalPlan> plansWithUnionRoot, List<LogicalPlan> plansWithNonUnionRoot) Based on the assumptions that i) the plans in the given lists have all been subplans of a join and ii) the given list of union-rooted plans is nonempty, pulls the unions out of these union-rooted plans by joining all their subplans with one another, and also with all the plans given in the other list (plansWithNonUnionRoot).UnionPullUp.rewritePlanWithUnaryRootAndUnionChild(boolean mayReduce, UnaryLogicalOp rootOp, LogicalPlan subPlan) Based on the assumption that the given subplan has a union operator as its root operator, this function pulls up that union by pushing the given unary operator to be the root of each of the children of the union.UnionPullUp.rewritePlanWithUnionRootAndUnionChild(boolean mayReduce, List<LogicalPlan> plansWithUnionRoot, List<LogicalPlan> plansWithNonUnionRoot) Based on the assumptions that i) the plans in the given lists have all been subplans of a union and ii) the given list of union-rooted plans is nonempty, merges all these union-rooted plans (plansWithUnionRoot) into a single union-root plan that has all the subplans of the given union-rooted plans as its subplans, together with all the plans given in the other list (plansWithNonUnionRoot).Methods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics that return types with arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected Pair<LogicalPlan, Integer> CardinalityBasedJoinOrderingBase.determineNextPlan(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, List<LogicalPlan> nextCandidates) Returns the plan from the given list of next candidates that has the lowest join cardinality with a plan consisting of the given selected plans, and that join cardinality will be returned as well.Methods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics with parameters of type LogicalPlanModifier and TypeMethodDescriptionprotected LogicalPlanCardinalityBasedJoinOrderingBase._apply(LogicalPlan inputPlan) protected LogicalPlanRemoveSubPlansWithEmptyResults._apply(LogicalPlan inputPlan) CardinalityBasedJoinOrderingBase.apply(LogicalPlan inputPlan) FilterPushDown.apply(LogicalPlan inputPlan) GreedyBasedReordering.apply(LogicalPlan inputPlan) MergeRequests.apply(LogicalPlan inputPlan) ProjectPushDown.apply(LogicalPlan inputPlan) PullUpLtgOverJoin.apply(LogicalPlan inputPlan) PullUpLtgOverUnion.apply(LogicalPlan inputPlan) PushJoinUnderUnionWithRequests.apply(LogicalPlan inputPlan) RemovePairsOfG2lAndL2g.apply(LogicalPlan inputPlan) RemoveSubPlansWithEmptyResults.apply(LogicalPlan inputPlan) RemoveUnnecessaryL2gAndG2l.apply(LogicalPlan inputPlan) UnionPullUp.apply(LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.applyToPlanWithFilterAsRootOperator(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.applyToPlanWithProjectAsRootOperator(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject, LogicalPlan inputPlan) static booleanRemovePairsOfG2lAndL2g.checkIfG2lAndL2gPairsRemovable(LogicalPlan plan) If a pair of g2l and l2g operators use the same vocabulary mapping, these two operators can be omittedprotected booleanRemoveUnnecessaryL2gAndG2l.checkIfL2gOrG2lNeeded(LogicalPlan plan) This function is used to check if a l2g or g2l operator is needed.static booleanPullUpLtgOverJoin.checkIfLtgCanBeExtractedOverJoin(LogicalPlan inputPlan) Check if l2g operator can be pulled up over join by checking: i) the root operator is a join (binary or multiway), ii) every subplan under this join has an l2g operator as its root, iii) all these l2g operators have the same vocab.mapping, and iv) that vocab.mapping is an "equivalence-only" mapping.static booleanPullUpLtgOverUnion.checkIfLtgCanBeExtractedOverUnion(LogicalPlan unionPlan) Check if l2g operator can be pulled up over union by checking: i) the root operator is a union (binary or multiway), ii) every subplan under this join has an l2g operator as its root, and iii) all these l2g operators have the same vocab.mappingprotected Set<org.apache.jena.sparql.core.Var> ProjectPushDown.computeJoinVars(LogicalPlan joinPlan) Determines the set of all join variables between the subplans of the given plan, where a join variable is a variable (certain or possible) that occurs in at least two subplan.protected static booleanCardinalityBasedJoinOrderingBase.containsJoinOp(LogicalPlan logicalPlan) Recursively checks whether the given logical plan contains any join operators (LogicalOpJoin or LogicalOpMultiwayJoin).protected LogicalPlanFilterPushDown.createPlanAfterPushingInSubPlan(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForAddOpUnderFilter(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Assumes that the given child operator is either aLogicalOpGPAdd, or aLogicalOpGPOptAdd.protected LogicalPlanProjectPushDown.createPlanForAddOpUnderProject(LogicalOpProject parentProjectOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Pushes a project operator below a gpAdd or gpOptAdd operator.protected LogicalPlanFilterPushDown.createPlanForBindUnderFilter(LogicalOpFilter filterOp, LogicalOpBind bindOp, LogicalPlan subPlanUnderBind, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForBindUnderProject(LogicalOpProject projectOp, LogicalOpBind bindOp, LogicalPlan subPlanUnderBind, LogicalPlan inputPlan) Attempts to push a project operator below a bind operator.protected LogicalPlanFilterPushDown.createPlanForFilterUnderFilter(LogicalOpFilter parentFilterOp, LogicalOpFilter childFilterOp, LogicalPlan subPlanUnderChildFilterOp) protected LogicalPlanProjectPushDown.createPlanForFixedSolMapUnderProject(LogicalOpProject projectOp, LogicalOpFixedSolMap fixedSolMapOp, LogicalPlan inputPlan) Applies a project operator to a fixed solution mapping operator.protected LogicalPlanProjectPushDown.createPlanForJoinLikeOpUnderProject(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject, LogicalPlan inputPlan) Pushes a projection below a n-ary operator by splitting required variables per branch.protected LogicalPlanFilterPushDown.createPlanForJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForL2GOrG2LUnderFilter(LogicalOpFilter parentFilterOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp, LogicalPlan inputPlan) Assumes that the given child operator is either aLogicalOpLocalToGlobalor aLogicalOpGlobalToLocal.protected LogicalPlanProjectPushDown.createPlanForL2GOrG2LUnderProject(LogicalOpProject projectOp, UnaryLogicalOp childOp, LogicalPlan subPlanUnderChildOp) Assumes that the given child operator is either aLogicalOpLocalToGlobalor aLogicalOpGlobalToLocal.protected LogicalPlanFilterPushDown.createPlanForLeftJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan nonoptSubPlan, LogicalPlan optSubPlan, LogicalPlan inputPlan) protected LogicalPlanFilterPushDown.createPlanForMinusUnderFilter(LogicalOpFilter filterOp, LogicalOpMinus op, LogicalPlan subPlanUnderFilter) protected LogicalPlanFilterPushDown.createPlanForMultiwayLeftJoinUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForProjectUnderProject(LogicalOpProject parentProjectOp, LogicalOpProject childProjectOp, LogicalPlan subPlanUnderChildProjectOp) Merges a parent and child project operator into a single project operator.protected LogicalPlanFilterPushDown.createPlanForRequestUnderFilter(LogicalOpFilter filterOp, LogicalOpRequest<?, ?> reqOp, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForRequestUnderProject(LogicalOpProject projectOp, LogicalOpRequest<?, ?> reqOp, LogicalPlan inputPlan) Pushing a project operator into request operator is not possible yet TODO #570protected LogicalPlanFilterPushDown.createPlanForUnaryOpUnderFilter(LogicalOpFilter filterOp, UnaryLogicalOp op, LogicalPlan subPlanUnderOp) protected LogicalPlanProjectPushDown.createPlanForUnaryOpUnderProject(LogicalOpProject projectOp, UnaryLogicalOp op, LogicalPlan subPlanUnderOp) Returns a plan in which the given project operator is pushed under the given unary operator, with the subplan underneath being a version of the given subplan in which the project push down heuristic has been applied recursively.protected LogicalPlanFilterPushDown.createPlanForUnfoldUnderFilter(LogicalOpFilter filterOp, LogicalOpUnfold unfoldOp, LogicalPlan subPlanUnderUnfold, LogicalPlan inputPlan) protected LogicalPlanProjectPushDown.createPlanForUnfoldUnderProject(LogicalOpProject projectOp, LogicalOpUnfold unfoldOp, LogicalPlan subPlanUnderUnfold, LogicalPlan inputPlan) Attempts to push a project operator below an unfold operator.protected LogicalPlanFilterPushDown.createPlanForUnionUnderFilter(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter) protected LogicalPlanProjectPushDown.createPlanForUnionUnderProject(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject) Pushes the project operator into each subplan under the union operator.protected intCardinalityBasedJoinOrderingBase.determineIdxOfSmallestCardinality(LogicalPlan[] plans) Compares the given plans in terms of their estimated cardinalities and, for the plan that has the smallest estimated cardinality, returns the index of this plan within the given list.protected abstract intCardinalityBasedJoinOrderingBase.estimateJoinCardinality(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, LogicalPlan nextCandidate) Implementations of this function estimate the cardinality of the join between the result of joining the given selected plans and the result of the given next candidate.protected intCardinalityBasedJoinOrderingWithRequests.estimateJoinCardinality(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, LogicalPlan nextCandidate) protected static LogicalPlanPullUpLtgOverUnion.extractLtgOverNaryOp(LogicalPlan inputPlan) protected static Set<TriplePattern> RemoveUnnecessaryL2gAndG2l.extractTPs(LogicalPlan plan) booleanUnionPullUp.hasUnionRoot(LogicalPlan plan) protected booleanRemoveSubPlansWithEmptyResults.isProvablyEmpty(LogicalPlan plan) Returnstrueif, according to the cardinality estimate that has been determined for the given plan, the plan is guaranteed to produce an empty result.protected LogicalPlanFilterPushDown.pushToNonOptSubPlan(org.apache.jena.sparql.expr.ExprList filterExprsWithoutAND, LogicalPlan nonoptSubPlan, org.apache.jena.sparql.expr.ExprList toBeKept, boolean mayReduce) protected booleanCardinalityBasedJoinOrderingBase.reorder(LogicalPlan[] plans) Changes the order of the subplans in the given array by using the greedy algorithm described above for this class.protected LogicalPlanGreedyBasedReordering.reorderSubPlans(boolean mayReduce, LogicalPlan inputPlan) protected LogicalPlanPushJoinUnderUnionWithRequests.rewrite(boolean mayReduce, LogicalPlan unionPlan, List<LogicalPlan> subPlansAsInput) UnionPullUp.rewritePlanWithUnaryRootAndUnionChild(boolean mayReduce, UnaryLogicalOp rootOp, LogicalPlan subPlan) Based on the assumption that the given subplan has a union operator as its root operator, this function pulls up that union by pushing the given unary operator to be the root of each of the children of the union.Method parameters in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics with type arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected Pair<LogicalPlan, Integer> CardinalityBasedJoinOrderingBase.determineNextPlan(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, List<LogicalPlan> nextCandidates) Returns the plan from the given list of next candidates that has the lowest join cardinality with a plan consisting of the given selected plans, and that join cardinality will be returned as well.protected abstract intCardinalityBasedJoinOrderingBase.estimateJoinCardinality(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, LogicalPlan nextCandidate) Implementations of this function estimate the cardinality of the join between the result of joining the given selected plans and the result of the given next candidate.protected intCardinalityBasedJoinOrderingWithRequests.estimateJoinCardinality(List<LogicalPlan> selectedPlans, int joinCardOfSelectedPlans, LogicalPlan nextCandidate) protected LogicalPlanMergeRequests.mergeSPARQLRequestsViaJoin(FederationMember fm, boolean mayReduce, List<LogicalPlan> reqPlans) Assumes that the given list contains at least two plans and that all plans in the list consist only of a request operator.protected SPARQLGraphPatternMergeRequests.mergeSPARQLRequestsViaUnion(List<LogicalPlan> reqPlans) Assumes that the given list contains at least two plans and that all plans in the list consist only of a request operator.protected LogicalPlanPushJoinUnderUnionWithRequests.rewrite(boolean mayReduce, LogicalPlan unionPlan, List<LogicalPlan> subPlansAsInput) UnionPullUp.rewritePlanWithJoinOverUnion(boolean mayReduce, List<LogicalPlan> plansWithUnionRoot, List<LogicalPlan> plansWithNonUnionRoot) Based on the assumptions that i) the plans in the given lists have all been subplans of a join and ii) the given list of union-rooted plans is nonempty, pulls the unions out of these union-rooted plans by joining all their subplans with one another, and also with all the plans given in the other list (plansWithNonUnionRoot).UnionPullUp.rewritePlanWithUnionRootAndUnionChild(boolean mayReduce, List<LogicalPlan> plansWithUnionRoot, List<LogicalPlan> plansWithNonUnionRoot) Based on the assumptions that i) the plans in the given lists have all been subplans of a union and ii) the given list of union-rooted plans is nonempty, merges all these union-rooted plans (plansWithUnionRoot) into a single union-root plan that has all the subplans of the given union-rooted plans as its subplans, together with all the plans given in the other list (plansWithNonUnionRoot).protected voidMergeRequests.separateSubPlansOfMultiwayOps(List<LogicalPlan> subPlans, Map<FederationMember, List<LogicalPlan>> reqOnlyPlansPerFedMember, List<LogicalPlan> nonReqSubPlans) protected voidMergeRequests.separateSubPlansOfMultiwayOps(List<LogicalPlan> subPlans, Map<FederationMember, List<LogicalPlan>> reqOnlyPlansPerFedMember, List<LogicalPlan> nonReqSubPlans) Constructors in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics with parameters of type LogicalPlanModifierConstructorDescriptionWorker(LogicalOpFilter filterOp, LogicalPlan subPlanUnderFilter, LogicalPlan inputPlan) Worker(LogicalOpProject projectOp, LogicalPlan subPlanUnderProject, LogicalPlan inputPlan) Constructor parameters in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics with type arguments of type LogicalPlan -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics.utils
Fields in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics.utils declared as LogicalPlanMethods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics.utils that return LogicalPlanMethods in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics.utils with parameters of type LogicalPlanModifier and TypeMethodDescriptionprotected Set<TriplePattern> QueryAnalyzer.extractTPsAndRecordFms(LogicalPlan plan) Constructors in se.liu.ida.hefquin.engine.queryproc.impl.loptimizer.heuristics.utils with parameters of type LogicalPlan -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.planning
Methods in se.liu.ida.hefquin.engine.queryproc.impl.planning that return LogicalPlanModifier and TypeMethodDescriptionQueryPlanningStatsImpl.getResultingLogicalPlan()QueryPlanningStatsImpl.getResultingSourceAssignment()Constructors in se.liu.ida.hefquin.engine.queryproc.impl.planning with parameters of type LogicalPlanModifierConstructorDescriptionQueryPlanningStatsImpl(long overallQueryPlanningTime, long sourcePlanningTime, long logicalOptimizationTime, long physicalOptimizationTime, SourcePlanningStats sourcePlanningStats, LogicalPlan resultingSourceAssignment, LogicalPlan resultingLogicalPlan, PhysicalPlan resultingPhysicalPlan, PhysicalOptimizationStats queryOptimizationStats) -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.poptimizer
Methods in se.liu.ida.hefquin.engine.queryproc.impl.poptimizer with parameters of type LogicalPlanModifier and TypeMethodDescriptionPhysicalOptimizerBase.optimize(LogicalPlan lp, QueryProcContext ctxt) -
Uses of LogicalPlan in se.liu.ida.hefquin.engine.queryproc.impl.srcsel
Methods in se.liu.ida.hefquin.engine.queryproc.impl.srcsel that return LogicalPlanModifier and TypeMethodDescriptionprotected LogicalPlanExhaustiveSourcePlannerImpl.createPlan(org.apache.jena.sparql.algebra.Op jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlan(org.apache.jena.sparql.algebra.Op jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlan(org.apache.jena.sparql.algebra.Op jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanExhaustiveSourcePlannerImpl.createPlanForBGP(org.apache.jena.sparql.algebra.op.OpBGP bgpOp, QueryProcContext ctxt, boolean mayReduce) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForBGP(org.apache.jena.sparql.algebra.op.OpBGP pattern, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForBGP(org.apache.jena.sparql.core.BasicPattern pattern, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForBGP(BGP bgp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForBind(org.apache.jena.sparql.algebra.op.OpExtend jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForDistinct(org.apache.jena.sparql.algebra.op.OpDistinct jenaOp, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForFilter(org.apache.jena.sparql.algebra.op.OpFilter jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForFilter(org.apache.jena.sparql.algebra.op.OpFilter jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForJoin(List<org.apache.jena.sparql.algebra.Op> ops, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForJoin(org.apache.jena.sparql.algebra.op.OpJoin jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForJoin(org.apache.jena.sparql.algebra.op.OpJoin jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForLeftJoin(org.apache.jena.sparql.algebra.op.OpConditional jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForLeftJoin(org.apache.jena.sparql.algebra.op.OpConditional jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForLeftJoin(org.apache.jena.sparql.algebra.op.OpLeftJoin jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForLeftJoin(org.apache.jena.sparql.algebra.op.OpLeftJoin jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForMinus(org.apache.jena.sparql.algebra.op.OpMinus jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForOpTable(org.apache.jena.sparql.algebra.op.OpTable opTable) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForProject(org.apache.jena.sparql.algebra.op.OpProject jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForSequence(org.apache.jena.sparql.algebra.op.OpSequence jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForServicePattern(org.apache.jena.sparql.algebra.op.OpService jenaOp, boolean mayReduce, QueryProcContext ctxt) This function assumes that the given operator comes from a SERVICE clause that did not have a PARAMS part (or an empty one), and it produces a plan with a request operator as root.protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForServiceWithParams(OpServiceWithParams jenaOp, boolean mayReduce, LogicalPlan subplan, QueryProcContext ctxt) This function assumes that the given operator comes from a SERVICE clause that had a nonempty PARAMS part, and it produces a plan with a gpAdd operator as root and the given subplan as input to this root operator.protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForTriplePattern(org.apache.jena.sparql.algebra.op.OpTriple pattern, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForUnfold(org.apache.jena.sparql.algebra.op.OpUnfold jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForUnion(org.apache.jena.sparql.algebra.op.OpUnion jenaOp, boolean mayReduce, QueryProcContext ctxt) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForUnion(org.apache.jena.sparql.algebra.op.OpUnion jenaOp, boolean mayReduce, FederationMember fm) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForValues(org.apache.jena.sparql.algebra.op.OpTable jenaOp, QueryProcContext ctxt) protected LogicalPlanExhaustiveSourcePlannerImpl.createRequestSubPlan(org.apache.jena.graph.Triple tp, FederationMember fm, boolean mayReduce) protected LogicalPlanExhaustiveSourcePlannerImpl.createSubPlanForTP(org.apache.jena.graph.Triple tp, QueryProcContext ctxt, boolean mayReduce) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayJoin(boolean mayReduce, LogicalPlan... subPlans) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayJoin(List<LogicalPlan> subPlans, boolean mayReduce) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayLeftJoin(LogicalPlan leftSubPlan, LogicalPlan rightSubPlan, boolean mayReduce) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayUnion(boolean mayReduce, LogicalPlan... subPlans) Methods in se.liu.ida.hefquin.engine.queryproc.impl.srcsel that return types with arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected Pair<LogicalPlan, SourcePlanningStats> ServiceClauseBasedSourcePlannerImpl.createSourceAssignment(org.apache.jena.sparql.algebra.Op jenaOp, QueryProcContext ctxt) protected abstract Pair<LogicalPlan, SourcePlanningStats> SourcePlannerBase.createSourceAssignment(org.apache.jena.sparql.algebra.Op jenaOp, QueryProcContext ctxt) final Pair<LogicalPlan, SourcePlanningStats> SourcePlannerBase.createSourceAssignment(Query query, QueryProcContext ctxt) Methods in se.liu.ida.hefquin.engine.queryproc.impl.srcsel with parameters of type LogicalPlanModifier and TypeMethodDescriptionprotected LogicalPlanServiceClauseBasedSourcePlannerImpl.createPlanForServiceWithParams(OpServiceWithParams jenaOp, boolean mayReduce, LogicalPlan subplan, QueryProcContext ctxt) This function assumes that the given operator comes from a SERVICE clause that had a nonempty PARAMS part, and it produces a plan with a gpAdd operator as root and the given subplan as input to this root operator.protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayJoin(boolean mayReduce, LogicalPlan... subPlans) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayLeftJoin(LogicalPlan leftSubPlan, LogicalPlan rightSubPlan, boolean mayReduce) protected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayUnion(boolean mayReduce, LogicalPlan... subPlans) Method parameters in se.liu.ida.hefquin.engine.queryproc.impl.srcsel with type arguments of type LogicalPlanModifier and TypeMethodDescriptionprotected LogicalPlanServiceClauseBasedSourcePlannerImpl.mergeIntoMultiwayJoin(List<LogicalPlan> subPlans, boolean mayReduce)