> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-detect-table-modification.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ajustes de sesión de distributed_plan_*

> Ajustes de sesión de ClickHouse del grupo generado distributed_plan_*.

export const ExperimentalBadge = () => {
  return <a href="https://clickhouse.com/docs/reference/settings/beta-and-experimental-features#experimental-features" className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            Funcionalidad experimental
        </a>;
};

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["Versión", "Valor predeterminado", "Comentario"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        Historial de versiones
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

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>;
};

Estos ajustes están disponibles en [system.settings](/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="distributed_plan_default_reader_bucket_count">
  ## distributed\_plan\_default\_reader\_bucket\_count
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "8"},{"label": "Nueva configuración experimental."}]}]} />

Número predeterminado de tareas para la lectura paralela en una consulta distribuida. Las tareas se reparten entre las réplicas.
Lo utiliza el planificador distribuido basado en reglas. El optimizador basado en costos elige el grado de paralelismo de lectura según el costo estimado y no utiliza esta configuración.

<div id="distributed_plan_default_shuffle_join_bucket_count">
  ## distributed\_plan\_default\_shuffle\_join\_bucket\_count
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "8"},{"label": "Nueva configuración experimental."}]}]} />

Número predeterminado de buckets para distributed shuffle-hash-join.
Lo utiliza el planificador distribuido basado en reglas. El optimizador basado en costos elige el grado de paralelismo según el costo estimado y no utiliza esta configuración.

<div id="distributed_plan_execute_locally">
  ## distributed\_plan\_execute\_locally
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "0"},{"label": "Nueva configuración experimental."}]}]} />

Ejecuta localmente todas las tareas de un plan de consulta distribuida. Útil para pruebas y depuración.

<div id="distributed_plan_force_exchange_kind">
  ## distributed\_plan\_force\_exchange\_kind
</div>

<ExperimentalBadge />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": ""},{"label": "Nueva configuración experimental."}]}]} />

Fuerza el tipo especificado de operadores Exchange entre las etapas de una consulta distribuida.

Valores posibles:

* '' - no forzar ningún tipo de operadores Exchange; dejar que el optimizador elija,
* 'Persisted' - usar archivos temporales en almacenamiento de objetos,
* 'Streaming' - transmitir los datos de Exchange a través de la red.

<div id="distributed_plan_force_shuffle_aggregation">
  ## distributed\_plan\_force\_shuffle\_aggregation
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.7"},{"label": "0"},{"label": "Nueva configuración experimental"}]}]} />

Usa la estrategia de agregación Shuffle en lugar de PartialAggregation + Merge en el plan de consulta distribuida.

<div id="distributed_plan_max_rows_to_broadcast">
  ## distributed\_plan\_max\_rows\_to\_broadcast
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.7"},{"label": "20000"},{"label": "Nueva configuración experimental."}]}]} />

Número máximo de filas para usar un broadcast join en lugar de un shuffle join en el plan de consulta distribuida.
Una heurística para el planificador distribuido basado en reglas. Cuando el optimizador basado en costos está habilitado, la elección entre broadcast y shuffle se realiza según el costo estimado y esta configuración no tiene efecto.

<div id="distributed_plan_optimize_exchanges">
  ## distributed\_plan\_optimize\_exchanges
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "Nueva configuración experimental."}]}]} />

Elimina intercambios innecesarios del plan de consulta distribuida. Desactívelo para depuración.

<div id="distributed_plan_prefer_replicas_over_workers">
  ## distributed\_plan\_prefer\_replicas\_over\_workers
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "0"},{"label": "Nueva configuración para serializar el plan distribuido para las réplicas"}]}]} />

Serializa el plan de consulta distribuida para su ejecución en las réplicas.

<div id="distributed_plan_workers_num">
  ## distributed\_plan\_workers\_num
</div>

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "0"},{"label": "Nueva configuración experimental para indicar cuántos workers sin estado se reservarán para una consulta distribuida. Cero desactiva esta reserva."}]}]} />

Cuántos workers sin estado se usarán para ejecutar esta consulta. Cero desactiva la reserva de workers sin estado para los planes distribuidos.
