> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# configuraciones de sesión de merge_tree_*

> Configuraciones de sesión de ClickHouse del grupo generado merge_tree_*.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Tipo</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Predeterminado</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modificable sin reiniciar
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

export const CloudOnlyBadge = () => {
  return <div className="cloudBadge">
            <div className="cloudIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path fillRule="evenodd" clipRule="evenodd" d="M5.33395 12.6667H12.3739C13.6593 12.6667 14.7073 11.6187 14.7073 10.3334C14.7073 9.04804 13.6593 8.00004 12.3739 8.00004H12.0839V7.33337C12.0839 5.12671 10.2906 3.33337 8.08395 3.33337C6.09928 3.33337 4.45395 4.78537 4.14195 6.68204C2.55728 6.76271 1.29395 8.06204 1.29395 9.66671C1.29395 11.3234 2.63728 12.6667 4.29395 12.6667H5.33395Z" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            {'Solo para ClickHouse Cloud'}
        </div>;
};

Estas opciones de configuración están disponibles en [system.settings](/docs/es/reference/system-tables/settings) y se generan automáticamente a partir del [código fuente](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="merge_tree_coarse_index_granularity">
  ## merge\_tree\_coarse\_index\_granularity
</div>

<SettingsInfoBlock type="UInt64" default_value="8" />

Al buscar datos, ClickHouse comprueba las marcas de datos en el archivo de índice. Si ClickHouse detecta que las claves requeridas están dentro de un rango, divide ese rango en `merge_tree_coarse_index_granularity` subrangos y busca allí las claves requeridas de forma recursiva.

Valores posibles:

* Cualquier entero par positivo.

<div id="merge_tree_compact_parts_min_granules_to_multibuffer_read">
  ## merge\_tree\_compact\_parts\_min\_granules\_to\_multibuffer\_read
</div>

<CloudOnlyBadge />

<SettingsInfoBlock type="UInt64" default_value="16" />

Solo tiene efecto en ClickHouse Cloud. Número de gránulos en la stripe de una parte compacta de tablas MergeTree necesario para usar el lector multibúfer, que admite lectura en paralelo y prefetch. En caso de lectura desde remote fs, el uso del lector multibúfer incrementa el número de solicitudes de lectura. Una parte se lee con un solo búfer cuando contiene menos gránulos que este umbral y menos gránulos que el número de columnas que se están leyendo, porque en ese caso el lector de un solo búfer emite menos solicitudes de lectura que el lector multibúfer.

<div id="merge_tree_determine_task_size_by_prewhere_columns">
  ## merge\_tree\_determine\_task\_size\_by\_prewhere\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Indica si se debe usar solo el tamaño de las columnas `prewhere` para determinar el tamaño de la tarea de lectura.

<div id="merge_tree_generic_exclusion_search_max_steps">
  ## merge\_tree\_generic\_exclusion\_search\_max\_steps
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "Nueva configuración para limitar el número de pasos de la búsqueda de exclusión genérica sobre el índice de clave primaria."}]}]} />

Cuando un filtro no puede evaluarse como un único rango continuo de la clave primaria, por ejemplo, cuando usa columnas clave distintas de la primera, ClickHouse ejecuta un algoritmo iterativo de búsqueda de exclusión genérica sobre las marcas del índice. El mismo algoritmo se usa para el análisis del índice de texto. Esta configuración limita el número de pasos (comprobaciones del índice) que el algoritmo emplea en cada parte de datos.

El presupuesto se consume primero en los rangos de marcas restantes más grandes. Cuando se agota, los rangos que no se analizaron por completo se aceptan en su conjunto, por lo que la consulta sigue siendo correcta, pero puede leer más gránulos de los que seleccionaría una búsqueda sin límite. Un presupuesto menor acelera el análisis del índice a costa de leer más datos. El límite es aproximado, en lugar de ser un tope estricto del coste del análisis: la búsqueda puede superarlo en aproximadamente una ronda de división y, cuando la parte ya está dividida en muchos rangos (por ejemplo, por la caché de condiciones de consulta), cada uno de ellos se comprueba al menos una vez independientemente del límite.

El número de pasos que realizó la búsqueda en cada parte de datos se informa en los mensajes de registro de nivel trace de la consulta, y los eventos de perfil `IndexGenericExclusionSearchStepLimitReached` y `TextIndexGenericExclusionSearchStepLimitReached` cuentan cuántas veces se agotó el presupuesto.

El valor 0 (predeterminado) significa pasos ilimitados.

Valores posibles:

* 0 para pasos ilimitados, o cualquier entero positivo.

<div id="merge_tree_max_bytes_to_use_cache">
  ## merge\_tree\_max\_bytes\_to\_use\_cache
</div>

<SettingsInfoBlock type="UInt64" default_value="2013265920" />

Si ClickHouse debe leer más de `merge_tree_max_bytes_to_use_cache` bytes en una consulta, no utiliza la caché de bloques sin comprimir.

La caché de bloques sin comprimir almacena los datos extraídos para las consultas. ClickHouse utiliza esta caché para acelerar las respuestas a consultas pequeñas repetidas. Esta configuración evita que las consultas que leen grandes cantidades de datos degraden la caché. La configuración del servidor [uncompressed\_cache\_size](/docs/es/reference/settings/server-settings/settings#uncompressed_cache_size) define el tamaño de la caché de bloques sin comprimir.

Valores posibles:

* Cualquier entero positivo.

<div id="merge_tree_max_rows_to_use_cache">
  ## merge\_tree\_max\_rows\_to\_use\_cache
</div>

<SettingsInfoBlock type="UInt64" default_value="1048576" />

Si ClickHouse tiene que leer más de `merge_tree_max_rows_to_use_cache` filas en una consulta, no utiliza la caché de bloques sin comprimir.

La caché de bloques sin comprimir almacena los datos extraídos para las consultas. ClickHouse utiliza esta caché para acelerar las respuestas a consultas pequeñas repetidas. Esta configuración evita que consultas que leen grandes cantidades de datos desplacen el contenido de la caché. La configuración del servidor [uncompressed\_cache\_size](/docs/es/reference/settings/server-settings/settings#uncompressed_cache_size) define el tamaño de la caché de bloques sin comprimir.

Valores posibles:

* Cualquier entero positivo.

<div id="merge_tree_min_bytes_for_concurrent_read">
  ## merge\_tree\_min\_bytes\_for\_concurrent\_read
</div>

<SettingsInfoBlock type="UInt64" default_value="251658240" />

Si el número de bytes que se va a leer de un archivo de una tabla con motor [MergeTree](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) supera `merge_tree_min_bytes_for_concurrent_read`, ClickHouse intenta leer ese archivo de forma concurrente en varios hilos.

Valor posible:

* Entero positivo.

<div id="merge_tree_min_bytes_for_concurrent_read_for_remote_filesystem">
  ## merge\_tree\_min\_bytes\_for\_concurrent\_read\_for\_remote\_filesystem
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "0"},{"label": "La configuración está obsoleta"}]}]} />

La cantidad mínima de bytes que deben leerse de un archivo para que el motor [MergeTree](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) pueda paralelizar la lectura al leer desde un sistema de archivos remoto. No recomendamos usar esta configuración.

Valores posibles:

* Entero positivo.

<div id="merge_tree_min_bytes_for_seek">
  ## merge\_tree\_min\_bytes\_for\_seek
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Si la distancia entre dos bloques de datos que deben leerse de un archivo es menor que `merge_tree_min_bytes_for_seek` bytes, ClickHouse lee secuencialmente un rango del archivo que contiene ambos bloques, lo que evita un seek adicional.

Valores posibles:

* Cualquier entero positivo.

<div id="merge_tree_min_bytes_per_task_for_remote_reading">
  ## merge\_tree\_min\_bytes\_per\_task\_for\_remote\_reading
</div>

**Alias**: `filesystem_prefetch_min_bytes_for_single_read_task`

<SettingsInfoBlock type="UInt64" default_value="2097152" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.8"},{"label": "2097152"},{"label": "El valor se ha unificado con `filesystem_prefetch_min_bytes_for_single_read_task`"}]}]} />

Número mínimo de bytes que se deben leer por tarea.

<div id="merge_tree_min_read_task_size">
  ## merge\_tree\_min\_read\_task\_size
</div>

<SettingsInfoBlock type="NonZeroUInt64" default_value="8" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "8"},{"label": "Nueva opción"}]}]} />

Límite inferior estricto del tamaño de la tarea (incluso cuando el número de gránulos es bajo y el número de hilos disponibles es alto, no asignaremos tareas más pequeñas

<div id="merge_tree_min_rows_for_concurrent_read">
  ## merge\_tree\_min\_rows\_for\_concurrent\_read
</div>

<SettingsInfoBlock type="UInt64" default_value="163840" />

Si el número de filas que se deben leer de un archivo de una tabla [MergeTree](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) supera `merge_tree_min_rows_for_concurrent_read`, ClickHouse intenta realizar la lectura concurrente de este archivo en varios hilos.

Valores posibles:

* Entero positivo.

<div id="merge_tree_min_rows_for_concurrent_read_for_remote_filesystem">
  ## merge\_tree\_min\_rows\_for\_concurrent\_read\_for\_remote\_filesystem
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "0"},{"label": "La configuración está obsoleta"}]}]} />

El número mínimo de filas que se deben leer de un archivo para que el motor [MergeTree](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) pueda paralelizar la lectura al leer desde un sistema de archivos remoto. No recomendamos usar esta configuración.

Valores posibles:

* Entero positivo.

<div id="merge_tree_min_rows_for_seek">
  ## merge\_tree\_min\_rows\_for\_seek
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Si la distancia entre dos bloques de datos que se van a leer en un archivo es inferior a `merge_tree_min_rows_for_seek` filas, ClickHouse no reposiciona la lectura dentro del archivo, sino que lee los datos de forma secuencial.

Valores posibles:

* Cualquier entero positivo.

<div id="merge_tree_read_split_ranges_into_intersecting_and_non_intersecting_injection_probability">
  ## merge\_tree\_read\_split\_ranges\_into\_intersecting\_and\_non\_intersecting\_injection\_probability
</div>

<SettingsInfoBlock type="Float" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "0"},{"label": "Para probar `PartsSplitter`: divide los rangos de lectura en rangos que se intersecan y rangos que no se intersecan cada vez que se lee desde MergeTree con la probabilidad especificada."}]}]} />

Para probar `PartsSplitter`: divide los rangos de lectura en rangos que se intersecan y rangos que no se intersecan cada vez que se lee desde MergeTree con la probabilidad especificada.

<div id="merge_tree_storage_snapshot_sleep_ms">
  ## merge\_tree\_storage\_snapshot\_sleep\_ms
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "Nueva configuración para depurar la consistencia de la instantánea de almacenamiento en las consultas"}]}]} />

Introduce un retraso artificial (en milisegundos) al crear una instantánea de almacenamiento para tablas MergeTree.
Se usa solo con fines de prueba y depuración.

Valores posibles:

* 0 - Sin retraso (predeterminado)
* N - Retraso en milisegundos

<div id="merge_tree_use_const_size_tasks_for_remote_reading">
  ## merge\_tree\_use\_const\_size\_tasks\_for\_remote\_reading
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Si se deben usar tareas de tamaño constante para leer desde una tabla remota.

<div id="merge_tree_use_deserialization_prefixes_cache">
  ## merge\_tree\_use\_deserialization\_prefixes\_cache
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "Una nueva configuración para controlar el uso de la caché de prefijos de deserialización en MergeTree"}]}]} />

Activa el almacenamiento en caché de los metadatos de las columnas procedentes de los prefijos de archivo durante la lectura desde discos remotos en MergeTree.

<div id="merge_tree_use_prefixes_deserialization_thread_pool">
  ## merge\_tree\_use\_prefixes\_deserialization\_thread\_pool
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "Una nueva configuración que controla el uso del pool de hilos para la deserialización paralela de prefijos en MergeTree"}]}]} />

Habilita el uso del pool de hilos para la lectura paralela de prefijos en las partes wide de MergeTree. El tamaño de ese pool de hilos se controla mediante la configuración del servidor `max_prefixes_deserialization_thread_pool_size`.

<div id="merge_tree_use_v1_object_and_dynamic_serialization">
  ## merge\_tree\_use\_v1\_object\_and\_dynamic\_serialization
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.11"},{"label": "0"},{"label": "Se añade la nueva versión de serialización V2 para los tipos JSON y Dynamic"}]}]} />

Cuando está habilitada, MergeTree usará la versión de serialización V1 de los tipos JSON y Dynamic en lugar de V2. Cambiar esta configuración solo surte efecto tras reiniciar el servidor.
