> ## 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.

# Configuración de sesión shrink_over_*

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

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

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="shrink_over_allocated_columns_min_waste_bytes">
  ## shrink\_over\_allocated\_columns\_min\_waste\_bytes
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "16777216"},{"label": "Nueva configuración: cantidad mínima absoluta de memoria desperdiciada en una columna para reducir su tamaño al realizar un INSERT."}]}]} />

Cantidad mínima absoluta de memoria desperdiciada (reservada pero no utilizada) en una columna, en bytes, para reducir su tamaño al realizar un INSERT. Consulte [shrink\_over\_allocated\_columns\_min\_waste\_ratio](/docs/es/reference/settings/session-settings/shrink-over#shrink_over_allocated_columns_min_waste_ratio).

Evita reasignar columnas con una sobreasignación pequeña cuando el ahorro de memoria no justifica el coste.

<div id="shrink_over_allocated_columns_min_waste_ratio">
  ## shrink\_over\_allocated\_columns\_min\_waste\_ratio
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "1"},{"label": "Nueva configuración para reducir las columnas sobredimensionadas durante INSERT y disminuir el uso máximo de memoria. Deshabilitada de forma predeterminada (1.0)."}]}]} />

Durante INSERT, las columnas sobredimensionadas (cuya memoria reservada supera la memoria utilizada, por ejemplo, debido al crecimiento en potencias de dos de las columnas de longitud variable) se reducen antes de las costosas etapas de materialización y escritura de partes, a fin de disminuir el uso máximo de memoria.

Una columna se reduce solo cuando `allocatedBytes() > byteSize() * shrink_over_allocated_columns_min_waste_ratio` y el espacio desperdiciado absoluto es de al menos `shrink_over_allocated_columns_min_waste_bytes`.

Valores posibles:

* Float mayor que 1.
* Un valor menor o igual que 1 deshabilita la reducción (el valor predeterminado `1.0` la mantiene deshabilitada).
