Siren Platform User Guide

Planner

The planner module is responsible in parsing a (multi) search request and generating a logical model. This logical model is then optimized by leveraging the rule-based Hep engine and statistical Volcano engine from Apache Calcite. The outcome is a physical query plan, which is then executed. The physical query plan is a Directed Acyclic Graph workflow composed of individual computing steps. The workflow is executed as a Job and the individual computing steps are executed as`Tasks`. We can therefore map one (multi) search request to a single job.

siren.planner.pool.job.size

Control the maximum number of concurrent jobs being executed per node. Defaults to 1.

siren.planner.pool.job.queue_size

Control the size of the queue for pending jobs per node. Defaults to 100.

siren.planner.pool.tasks_per_job.size

Control the maximum number of concurrent tasks being executed per job. Defaults to 3.

siren.planner.volcano.enable

Enable or disable the Volcano statistical engine to select the most appropriate join algorithms. Defaults to true.

siren.planner.volcano.join

Defines which distributed join algorithm to be selected when optimizing a request. Valid values are either HASH_JOIN or MERGE_JOIN, case-insensitive. Defaults to HASH_JOIN.

siren.planner.volcano.use_query

Use contextual queries when computing statistics. If false, computed statistics are effectively "global" to the index. Defaults to false.

siren.planner.volcano.cache.enable

Enable or disable a caching layer over Elasticsearch requests sent during query optimizations in order to gather statistics. Defaults to true.

siren.planner.volcano.cache.refresh_interval

The minimum interval time for refreshing the cached response of a statistics-gathering request. The time unit is in minutes and defaults to 60 minutes.

siren.planner.volcano.cache.maximum_size

The maximum number of requests response that can be cached. Defaults to 1000000.