Module org.apache.jena.arq
Package org.apache.jena.sparql.algebra.optimize
package org.apache.jena.sparql.algebra.optimize
-
ClassDescriptionA copying transform that applies an Op Transform to the algebra operator of E_Exist and E_NoExistsAn expression transform that simplifies expressions by constant folding wherever possibleAn expr visitor that applies a OpVisitor to the algebra operator of E_Exist and E_NoExistsOptimization of algebra expressions.The minimal optimizer.The standard optimization sequence.Factory for rewritersTransforms generic
DISTINCT
plusORDER BY
combinations toREDUCED
plusORDER BY
which typically gives better performance and memory consumption because engines have to keep less data in-memory to evaluate it.A transform that tries to in-line/eliminate assignmentsAn optimizer that aims to combine multiple extend clauses together.Redo FILTER (A&&B) as FILTER(A) FILTER(B) (as an expr list).Filter disjunction.A transform that aims to optimize queries where there is an equality constraint on a variable to speed up evaluation e.gOptimizer for transforming implicit joins.A transform that aims to optimize queries where there is an inequality constraint on a variable in an attempt to speed up evaluation e.gRewrite an algebra expression to put filters as close to their bound variables.Rewrite an algebra expression to put filters as close to their bound variables in a BGP.Optimizer for transforming implicit joins.Choose join strategyMerge BGPs, additionally merges the specialOpTriple
operator which is a BGP of a single triple pattern that may be introduced by other transforms (join BGP1 BGP2) => BGP (sequence ...BGP1 BGP2 ...)Improved optimization forORDER BY
plusDISTINCT
orREDUCED
combinations, see JENA-441 for original proposal and discussion.Perform the equivalent of the transactions in the SPARQL 1.1 spec.The path transformation step mostly per the SPARQL 1.1 spec with some enhancement e.g. expanding alternative paths into unions.Expand basic graph patterns and quad patterns to joins of(triple)
and(quad)
.Optimizer that ensures that table empty is promoted as high up a query as is possibleRewrite to replace a property function property with the call to the property function implementationA transform capable of removing assignments from the algebra treeA Transformer that applies a reordering to all BGPs and Quad Patterns present in the algebraRename variables so that names can be treated globally.Optimization that changes queries that usesOFFSET/LIMIT
andORDER BY
to execute usingTop N
: i.e. while executing, keep only the top N items seen.An after visitor for tracking variable usageA before visitor for tracking variable usageTracker for variable usageA visitor which tracks variable usage