Skip to main content

Frequently asked questions

What are some examples of parameters that DBtune tunes?

DB parameters govern various aspects of database behavior, including memory allocation (buffer pool sizes), caching policies, and other settings. In PostgreSQL, common examples include shared_buffers and work_mem. DBtune helps fine-tune these parameters for improved performance.

The full list is accessible at the PostgreSQL page.

What should I do if my workload changes?

If your workload, hardware, or PostgreSQL version changes, simply run a new DBtune optimization session to re-calibrate the configuration for your updated environment.

Does DBtune tune queries or indexes?

DBtune focuses exclusively on optimizing database configuration settings. It does not propose changes to queries, indexes, or database design.

What data does DBtune access besides database parameters?

DBtune requires performance metrics (throughput in transactions per second (TPS) and average query runtime in milliseconds (ms)) and access to the database configuration file. It treats your database as a black box, meaning it doesn't access user tables or data, and uses standard database commands to gather metrics like pg_stats.

The full list is accessible at the PostgreSQL page.

Can I run DBtune in a production environment?

Yes, many customers successfully run DBtune in production. Alternatively, you can optimize a shadow system and then apply the optimized configuration to your production system.

What happens during the tuning process?

DBtune employs an Optimizer as a Service (OaaS) model, functioning like a recommendation engine to find the ideal database configuration. It adapts to new workloads, database systems, and hardware through observation. The DBtune agent (open-source) is installed on your machine and connects to your database, ensuring privacy as it only monitors performance.

The image below summarizes the DBtune software architecture for self-hosted database instances.

DBtune How it works

What is the difference between PGTune and DBtune?

PGTune uses a simplistic heuristic algorithm that doesn't adapt to observed workloads. DBtune's learning-based approach leads to greater and more consistent performance improvements over time.

What databases does DBtune support today?

DBtune fully supports PostgreSQL >v10, with beta support for AWS Aurora and RDS. Support for MySQL, FoundationDB, RocksDB and SAP HANA is under development. Contact info@dbtune.com for inquiries.

Do I need to enable the restarting of the database?

No. DBtune by default only uses reloads of the database instance which don’t create downtime. DBtune gives you the flexibility to allow the restart of the database during the tuning process. In that case DBtune adds two additional parameters to the optimization space as explained in PostgreSQL.

Can I try DBtune on a synthetic workload?

Yes! Refer to our synthetic workload guide to try DBtune on an AWS or Azure cloud instance before deploying it in your production environment.