Estas configuraciones están disponibles en system.settings y se generan automáticamente a partir del código fuente.
enable_adaptive_memory_spill_scheduler
Hace que el procesador vuelque datos al almacenamiento externo de forma adaptativa. Actualmente, se admite grace join.
enable_add_distinct_to_in_subqueries
Habilita DISTINCT en las subconsultas IN. Esta configuración implica una compensación: al habilitarla, puede reducir considerablemente el tamaño de las tablas temporales transferidas en las subconsultas IN distribuidas y acelerar de forma significativa la transferencia de datos entre segmentos, ya que garantiza que solo se envíen valores únicos.
Sin embargo, habilitar esta configuración añade trabajo adicional de merging en cada nodo, ya que debe realizarse la deduplicación (DISTINCT). Use esta configuración cuando la transferencia de red sea un cuello de botella y el costo adicional de merging sea aceptable.
enable_automatic_decision_for_merging_across_partitions_for_final
Si está habilitada, ClickHouse activará automáticamente esta optimización cuando la expresión de la clave de partición sea determinista y todas las columnas utilizadas en ella estén incluidas en la clave primaria.
Esta derivación automática garantiza que las filas con los mismos valores de clave primaria siempre pertenecerán a la misma partición, por lo que es seguro evitar las fusiones entre particiones.
enable_early_constant_folding
Habilita la optimización de consultas mediante la cual se analizan los resultados de funciones y subconsultas, y se reescribe la consulta si hay constantes
enable_extended_results_for_datetime_functions
Habilita o deshabilita la devolución de resultados de tipo Date32 con un rango ampliado (en comparación con el tipo Date)
o de tipo DateTime64 con un rango ampliado (en comparación con el tipo DateTime).
Valores posibles:
0 — Las funciones devuelven Date o DateTime para todos los tipos de argumentos.
1 — Las funciones devuelven Date32 o DateTime64 para argumentos Date32 o DateTime64, y Date o DateTime en los demás casos.
La siguiente tabla muestra el comportamiento de esta configuración para varias funciones de fecha y hora.
Alias: allow_experimental_full_text_index
Si se establece en true, permite utilizar el índice de texto.
enable_global_with_statement
Propagar las sentencias WITH a las consultas UNION y a todas las subconsultas
Habilita o deshabilita pread para archivos HDFS. De forma predeterminada, se usa hdfsPread. Si se deshabilita, se usarán hdfsRead y hdfsSeek para leer archivos HDFS.
Habilita o deshabilita la compresión de datos en la respuesta a una petición HTTP.
Para obtener más información, lea la descripción de la interfaz HTTP.
Valores posibles:
- 0 — Deshabilitado.
- 1 — Habilitado.
enable_identifier_resolve_cache
Activa la caché de resolución de identificadores en el analizador de consultas. La caché comparte nodos de alias ya resueltos para evitar la explosión del AST cuando se hace referencia al mismo alias varias veces. Establézcalo en false para desactivar la caché si se sospecha que produce resultados incorrectos.
Muestra la traza de pila del creador de un job cuando este produce una excepción. Está deshabilitado de forma predeterminada para evitar el impacto en el rendimiento.
enable_lazy_columns_replication
Habilita la replicación diferida de columnas en JOIN y ARRAY JOIN; permite evitar copiar innecesariamente las mismas filas varias veces en memoria.
Habilita las expresiones de tabla comunes materializadas; tiene preferencia sobre enable_global_with_statement
enable_memory_bound_merging_of_aggregation_results
Activa la estrategia de fusión con límite de memoria para la agregación.
enable_multiple_prewhere_read_steps
Traslada más condiciones de WHERE a PREWHERE y realiza lecturas desde disco y filtrado en varios pasos si hay varias condiciones combinadas con AND
enable_named_columns_in_function_tuple
Genera tuplas con nombre en la función tuple() cuando todos los nombres son únicos y pueden tratarse como identificadores sin comillas.
Habilita o deshabilita la ordenación mediante la sintaxis ORDER BY ALL; consulte ORDER BY.
Valores posibles:
- 0 — Deshabilita ORDER BY ALL.
- 1 — Habilita ORDER BY ALL.
Ejemplo
Consulta:
Resultado:
enable_parallel_blocks_marshalling
Afecta solo a las consultas distribuidas. Si está habilitada, los bloques se (des)serializarán y (des)comprimirán en los hilos del pipeline (es decir, con un mayor paralelismo que el predeterminado) antes/después de enviarlos al iniciador.
enable_parsing_to_custom_serialization
Si es true, los datos pueden parsearse directamente en columnas con serialización personalizada (p. ej., Sparse) según las pistas de serialización obtenidas de la tabla.
enable_producing_buckets_out_of_order_in_aggregation
Permite que la agregación eficiente en memoria (consulte distributed_aggregation_memory_efficient) produzca buckets fuera de orden.
Puede mejorar el rendimiento cuando los tamaños de los buckets de agregación son desiguales, al permitir que una réplica envíe buckets con identificadores más altos al iniciador mientras sigue procesando algunos buckets pesados con identificadores más bajos.
La desventaja es un uso de memoria potencialmente mayor.
enable_reads_from_query_cache
Si está activado, los resultados de las consultas SELECT se obtienen de la caché de consultas.
Valores posibles:
- 0 - Deshabilitado
- 1 - Habilitado
enable_s3_requests_logging
Habilita un registro muy detallado de las solicitudes de S3. Solo tiene sentido para depuración.
enable_scalar_subquery_optimization
Si se establece en true, evita que las subconsultas escalares deserialicen y serialicen valores escalares grandes, y puede evitar ejecutar la misma subconsulta más de una vez.
enable_scopes_for_with_statement
Si está deshabilitada, las declaraciones en las cláusulas WITH padre se comportarán como si se hubieran declarado en el ámbito actual.
Ten en cuenta que esta es una configuración de compatibilidad del analizador para permitir ejecutar algunas consultas no válidas que el analizador antiguo podía ejecutar.
enable_sharding_aggregator
Habilita la optimización de GROUP BY fragmentado, que distribuye las filas entre los hilos aplicando un hash a la clave de agrupación, de modo que cada hilo agregue un subconjunto disjunto de claves sin una fase de combinación.
Es eficiente para claves de alta cardinalidad con datos distribuidos uniformemente, pero puede verse afectada por distribuciones de claves muy sesgadas o por consultas con muy pocas claves distintas.
Posibles valores:
- 0 — La optimización de agregación fragmentada está deshabilitada.
- 1 — La optimización de agregación fragmentada está habilitada.
enable_shared_storage_snapshot_in_query
Si está habilitado, todas las subconsultas dentro de una misma consulta compartirán la misma StorageSnapshot para cada tabla.
Esto garantiza una vista coherente de los datos en toda la consulta, incluso si se accede varias veces a la misma tabla.
Esto es necesario para consultas en las que la consistencia interna de las partes de datos es importante. Ejemplo:
Sin esta configuración, la consulta externa y la interna pueden operar sobre instantáneas de datos diferentes, lo que puede dar lugar a resultados incorrectos.
Al habilitar esta configuración, se desactiva la optimización que elimina de las instantáneas las partes de datos innecesarias una vez finalizada la etapa de planificación.
Como resultado, las consultas de larga duración pueden conservar partes obsoletas durante toda su ejecución, lo que retrasa la limpieza de partes y aumenta la presión sobre el almacenamiento.Actualmente, esta configuración solo se aplica a tablas de la familia MergeTree.
Valores posibles:
- 0 - Deshabilitado
- 1 - Habilitado
enable_sharing_sets_for_mutations
Permite compartir objetos Set creados para las subconsultas IN entre distintas tareas de la misma mutación. Esto reduce el uso de memoria y el consumo de CPU
Permite consultas continuas SELECT ... FROM t STREAM [CURSOR '{...}'].
Cuando está desactivado, cualquier expresión de tabla que use el modificador STREAM se rechaza
en el momento de generar el plan. Este es el control general de la
funcionalidad de consultas en streaming; otras capacidades pueden estar controladas por sus propios ajustes.
Alias: allow_experimental_time_time64_type
Permite crear los tipos de datos Time y Time64.
enable_unaligned_array_join
Permite ARRAY JOIN con varios arrays de distintos tamaños. Cuando esta configuración está habilitada, los arrays se redimensionarán hasta igualar el más largo.
Permite habilitar o deshabilitar la decodificación/codificación de la ruta en el URI en las tablas con motor URL.
Deshabilitado de forma predeterminada.
Si está habilitado, elimina las filas duplicadas durante FINAL marcando las filas como eliminadas y filtrándolas después, en lugar de fusionarlas
enable_writes_to_query_cache
Si está habilitado, los resultados de las consultas SELECT se almacenan en la caché de consultas.
Valores posibles:
- 0 - Deshabilitado
- 1 - Habilitado