uk.ac.bbk.dcs.automed.qproc.optimise.optimisers
Keywords: uk.ac.bbk.dcs.automed.qproc.optimise.optimisers package

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package uk.ac.bbk.dcs.automed.qproc.optimise.optimisers

Class Summary
ChooseOptimiser | This Class optimises expressions involving the "choose" built-in function.
CollectionOperatorReorganiser | This optimiser is to reorganise the order of arguments in expressions containing ++, --, intersect & union operators, so that constructs from the same schema come closer in the query tree and therefore bigger sub queries can be sent to the a datasource wrapper.
CompGenReorganiser | This optimiser is used to reorganise the generators in comprehensions.
ComprehensionDistributor | This optimiser is used to decompose a comprehension whose generators contain append expressions, such as [x|x<-(E1++E2)].
ComprehensionSimplification | This Class optimises expressions involving the "choose" built-in function.
ConstantSimplification | This optimiser eliminates Constructors Null, Any, Void, Nil, SNil and BNil where possible.
RelationSKJEliminator | This class removes self-join of relations over their key arising from the AutoMed relational model encoding For example, [{k1,n,m}|{p1,n}<-[{{k1,..,kn},a1}|{k1,..,kn,a1,a2}<-<>]; {p2,m}<-[{{k1,..,kn},a2}|{k1,..,kn,a1,a2}<-<>]; p1 = p2] becomes: [{{k1,...,kn},a1,a2}|{k1,..,kn,a1,a2}<-<>] Although table <> may contain several key attributes, we assume that {p1,n} and {p2,m} will be pair The steps for the simplification are: 1.
SQLWrapperSKJOptimiser | Removes self-key joins occurring because of the dual layer of schemas that the `SQLWrapperFactory` class introduces.
UnnestOptimiser | Unnests comprehensions.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES