# Package org.eclipse.rdf4j.federated.optimizer

- Interface Summary
  Interface | Description
  --- | ---
  FedXCostModel | Interface for a cost model used in `StatementGroupAndJoinOptimizer`.
  FedXOptimizer | Interface for any FedX optimizer

- Class Summary
  Class | Description
  --- | ---
  DefaultFedXCostModel | Default implementation of the `FedXCostModel`
  ExclusiveTupleExprOptimizer | A specialized optimizer which identifies and marks `ExclusiveTupleExpr`.
  FilterOptimizer | Filter optimizer to push down FILTER expressions as far as possible.
  FilterOptimizer.FilterBindingFinder |
  FilterOptimizer.FilterExprInsertVisitor |
  FilterOptimizer.VarFinder |
  GenericInfoOptimizer | Generic optimizer Tasks: - Collect information (hasUnion, hasFilter, hasService) - Collect all statements in a list (for source selection), do not collect SERVICE expressions - Collect all Join arguments and group them in the NJoin structure for easier optimization (flatten)
  LimitOptimizer | An optimizer that attempts to push upper limits into BGPs of the query.
  NaryJoinArgumentsComparator | Comparator: partial order: OwnedStatementSourcePatternGroup -> OwnedStatementSourcePattern -> StatementSourcePattern
  OptimizerUtil |
  ServiceOptimizer | Optimizer for SERVICE nodes.
  SourceSelection | Perform source selection during optimization
  SourceSelection.ParallelCheckTask | Task for sending an ASK request to the endpoints (for source selection)
  SourceSelection.SourceSelectionExecutorWithLatch |
  StatementGroupAndJoinOptimizer | Optimizer with the following tasks: 1.
  UnionOptimizer | Optimizer to flatten the UNION operations.