Module @comunica/actor-optimize-query-operation-filter-pushdown - v4.0.2

Comunica Filter Pushdown Optimize Query Operation Actor

npm version

An Optimize Query Operation actor that pushes down filter expressions into the query plan as deep as possible.

This module is part of the Comunica framework, and should only be used by developers that want to build their own query engine.

Click here if you just want to query with Comunica.

$ yarn add @comunica/actor-optimize-query-operation-filter-pushdown

After installing, this package can be added to your engine's configuration as follows:

{
  "@context": [
    ...
    "https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-optimize-query-operation-filter-pushdown/^1.0.0/components/context.jsonld"
  ],
  "actors": [
    ...
    {
      "@id": "urn:comunica:default:optimize-query-operation/actors#filter-pushdown",
      "@type": "ActorOptimizeQueryOperationFilterPushdown"
    }
  ]
}
  • aggressivePushdown: If filters should be pushed down as deep as possible. If false, filters will only be pushed down if the source(s) accept them, or if the filter is very selective. (defaults to false)
  • maxIterations: The maximum number of full iterations across the query can be done for attempting to push down filters. (defaults to 10)
  • splitConjunctive: If conjunctive filters should be split into nested filters before applying filter pushdown. This can enable pushing down deeper. (defaults to true)
  • mergeConjunctive: If nested filters should be merged into conjunctive filters after applying filter pushdown. (defaults to true)
  • pushIntoLeftJoins: If filters should be pushed into left-joins. (defaults to false)
  • pushEqualityIntoPatterns: If simple equality filters should be pushed into patterns and paths. This only applies to equality filters with terms that are not literals that have no canonical lexical form. (defaults to true)

Classes

ActorOptimizeQueryOperationFilterPushdown

Interfaces

IActorOptimizeQueryOperationFilterPushdownArgs