Ver/alterar configurações do otimizador / paralelismo
Oracle
SHOW PARAMETER optimizer;
-- Session: ALTER SESSION SET optimizer_mode = FIRST_ROWS_10;
-- Parallelism: ALTER SESSION FORCE PARALLEL QUERY PARALLEL 4;Configurações como optimizer_index_cost_adj e parallel_degree_policy afetam a escolha do plano; altere-as com cuidado.
PostgreSQL
SHOW random_page_cost;
SHOW max_parallel_workers_per_gather;
-- Session: SET enable_seqscan = off;Em SSDs, recomenda-se random_page_cost ~1.1. As flags enable_* servem para diagnóstico, não como correção permanente.
MySQL
SELECT @@optimizer_switch;
SET SESSION optimizer_switch='index_merge=off';optimizer_switch liga/desliga otimizações individuais; teste em nível de sessão.
SQL Server
-- Instance-level MAXDOP and cost threshold:
EXEC sp_configure 'max degree of parallelism', 8; RECONFIGURE;
-- Database level: ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 8;MAXDOP=0 é ilimitado; geralmente 4-8 para OLTP. O padrão de 5 do 'cost threshold for parallelism' é baixo demais para a maioria.
MongoDB
# There are no optimizer parameters; indexes and query shape are decisive.
db.customer.find({...}).explain('allPlansExecution')allPlansExecution mostra todos os planos avaliados pelo planner.
Redis
# Not applicable.Não há planner; io-threads e a escolha da estrutura de dados determinam o desempenho.
Elasticsearch
GET <index>/_settings?include_defaults=true
# search limits such as search.max_buckets, index.max_result_windowNão há otimizador; o número de shards, o routing e a estrutura da consulta determinam o desempenho.