Skip to main content
Estas opciones de configuración están disponibles en system.settings y se generan automáticamente a partir del código fuente.

max_threads

El número máximo de hilos de procesamiento de consultas, excluidos los hilos utilizados para recuperar datos de servidores remotos (consulte el parámetro ‘max_distributed_connections’). Este parámetro se aplica a los hilos que ejecutan en paralelo las mismas etapas del pipeline de procesamiento de consultas. Por ejemplo, al leer de una tabla, si es posible evaluar expresiones con funciones, filtrar con WHERE y preagregar para GROUP BY en paralelo usando al menos ‘max_threads’ hilos, entonces se usan ‘max_threads’. Para las consultas que se completan rápidamente debido a un LIMIT, puede establecer un valor más bajo de ‘max_threads’. Por ejemplo, si el número necesario de filas se encuentra en cada bloque y max_threads = 8, entonces se recuperan 8 bloques, aunque habría bastado con leer solo uno. Cuanto menor sea el valor de max_threads, menos memoria se consume. De forma predeterminada, la configuración max_threads coincide con el número de hilos de hardware (número de núcleos de CPU) disponibles para ClickHouse. Como caso especial, en procesadores x86 con menos de 32 núcleos de CPU y SMT (p. ej., Intel HyperThreading), ClickHouse usa de forma predeterminada el número de núcleos lógicos (= 2 x número de núcleos físicos). Sin SMT (p. ej., Intel HyperThreading), esto corresponde al número de núcleos de CPU. Para los usuarios de ClickHouse Cloud, el valor predeterminado se mostrará como auto(N), donde N coincide con el tamaño de vCPU de su servicio; por ejemplo, 2vCPU/8GiB, 4vCPU/16GiB, etc. Consulte la pestaña de configuración en la Cloud Console para ver una lista de todos los tamaños de servicio.

max_threads_for_indexes

El número máximo de hilos que procesan índices.

max_threads_min_free_memory_per_thread

Reduce max_threads cuando el servidor está bajo presión de memoria, para evitar iniciar consultas con mucho paralelismo que probablemente alcancen el límite de memoria. La memoria libre se calcula como el valor de max_server_memory_usage del servidor menos la memoria que registra actualmente el rastreador global de memoria. Si esa memoria libre es inferior a max_threads multiplicado por este valor, max_threads se reduce al mayor N tal que N * value <= free_memory, con un mínimo de 1. Establezca 0 para desactivar este límite. Por ejemplo, con el valor predeterminado de 1 GiB y 32 GiB de memoria libre, max_threads queda limitado a 32; con 1 GiB de memoria libre, se reduce a 1. Esta configuración se aplica al paralelismo del lado de lectura (SELECT, UNION, INTERSECT/EXCEPT y el lado SELECT de INSERT ... SELECT). Para el lado de escritura, consulte max_insert_threads_min_free_memory_per_thread.
Última modificación el 23 de julio de 2026