Just as you can tune settings in PostgreSQL, TimescaleDB provides a number of configuration settings that may be useful to your specific installation and performance needs. These can also be set within the postgresql.conf file or as command-line parameters when starting PostgreSQL.

Max background worker processes allocated to TimescaleDB. Set to at least 1 + the number of databases loaded with a TimescaleDB extension in a PostgreSQL instance. Default value is 16.

If enabled, aggregations are converted into partial aggregations during query planning. The first part of the aggregation is executed on a per-chunk basis. Then, these partial results are combined and finalized. Splitting aggregations decreases the size of the created hash tables and increases data locality, which speeds up queries.

Enables or disables the vectorized optimizations in the query executor. For example, the sum() aggregation function on compressed chunks can be optimized in this way.

Set to TRUE to dramatically decrease the amount of data written on a continuous aggregate in the presence of a small number of changes, reduce the i/o cost of refreshing a continuous aggregate, and generate fewer Write-Ahead Logs (WAL)

Warning

Multi-node support is deprecated.

TimescaleDB v2.13 is the last release that includes multi-node support for PostgreSQL versions 13, 14, and 15.

Enables two-phase commit for distributed hypertables. If disabled, it uses a one-phase commit instead, which is faster but can result in inconsistent data. It is by default enabled.

If enabled, TimescaleDB combines different chunks belonging to the same hypertable into a single query per data node. It is by default enabled.

When acting as a access node, TimescaleDB splits batches of inserted tuples across multiple data nodes. It batches up to max_insert_batch_size tuples per data node before flushing. Setting this to 0 disables batching, reverting to tuple-by-tuple inserts. The default value is 1000.

Enables binary format for data exchanged between nodes in the cluster. It is by default enabled.

Enables DDL operations on data nodes by a client and do not restrict execution of DDL operations only by access node. It is by default disabled.

Enables optimization that runs remote queries asynchronously across data nodes. It is by default enabled.

Enable getting and showing EXPLAIN output from remote nodes. This requires sending the query to the data node, so it can be affected by the network connection and availability of data nodes. It is by default disabled.

Pick data fetcher type based on type of queries you plan to run, which can be either copy, cursor, or auto. The default is auto.

Specifies the path used to search user certificates and keys when connecting to data nodes using certificate authentication. Defaults to timescaledb/certs under the PostgreSQL data directory.

Specifies the name of the file where passwords are stored and when connecting to data nodes using password authentication.

Set TimescaleDB in restoring mode. It is disabled by default.

Change access to features based on the TimescaleDB license in use. For example, setting timescaledb.license to apache limits TimescaleDB to features that are implemented under the Apache 2 license. The default value is timescale, which allows access to all features.

Telemetry settings level. Level used to determine which telemetry to send. Can be set to off or basic. Defaults to basic.

Records last time timescaledb-tune ran.

Version of timescaledb-tune used to tune when it runs.

Keywords

Found an issue on this page?Report an issue or Edit this page in GitHub.