> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# configuraciones de sesión de iceberg_*

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

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

Estas configuraciones 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).

## iceberg\_delete\_data\_on\_drop

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

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

Indica si se deben eliminar todos los archivos de Iceberg al hacer drop.

## iceberg\_file\_entries\_queue\_size

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "100"},{"label": "Nueva configuración para la capacidad, antes fijada en el código, de la cola entre las tareas de decodificación del manifiesto de datos de Iceberg y la consulta."}]}]} />

Capacidad de la cola entre las tareas de decodificación del manifiesto de datos de Iceberg y la consulta, expresada en entradas de archivos de datos.

Las tareas de decodificación se pausan cuando la cola se llena y la consulta no está consumiendo datos, por lo que esto también limita la lectura anticipada.

Debe ser mayor que cero.

## iceberg\_manifest\_decode\_concurrency

**Aliases**: `iceberg_delete_manifest_decode_concurrency`

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "4"},{"label": "Nueva configuración que limita cuántos archivos de manifiesto de Iceberg se decodifican de forma concurrente, tanto los manifiestos de borrado como los de datos. Sustituye a `iceberg_delete_manifest_decode_concurrency` (que se conserva como alias). El valor `2` aproxima el data path anterior a 26.9, que decodificaba un manifiesto a la vez con el fetch del siguiente ya en curso; por tanto, con `compatibility` igual o inferior a 26.8, la decodificación de borrados también se ejecuta con 2 en lugar de su valor predeterminado publicado de 4, lo que preserva el envelope de memoria del data path anterior a costa de cierto solapamiento en la decodificación de borrados."}]}]} />

Número máximo de archivos de manifiesto de Iceberg que se decodifican de forma concurrente durante la lectura de una tabla.

Los manifiestos de borrado se decodifican en su totalidad antes de leer cualquier archivo de datos; los manifiestos de datos se decodifican mientras se genera la lista de archivos de datos de la consulta, y solo se decodifican nuevos a medida que la consulta consume las entries ya decodificadas. Decodificar varios manifiestos a la vez solapa los round-trip al object storage con el trabajo de pruning por entry.

Los valores más altos elevan el pico de memoria cuando la caché de metadata files de Iceberg está deshabilitada o llena, ya que cada manifiesto en curso retiene entonces su propio contenido decodificado.

Debe ser mayor que cero; con `1` los manifiestos se decodifican de uno en uno.

## iceberg\_manifest\_min\_count\_to\_compact

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "100"},{"label": "Alineado con el valor predeterminado documentado de la propiedad de tabla Iceberg `commit.manifest.min-count-to-merge` (100), consulte https:\/\/iceberg.apache.org\/docs\/1.5.2\/configuration\/."}]}, {"id": "row-2","items": [{"label": "26.7"},{"label": "30"},{"label": "Nueva configuración para controlar la compactación de archivos de manifiesto en tablas Iceberg."}]}]} />

Número mínimo de archivos de manifiesto necesario para activar la compactación únicamente de manifiestos mediante OPTIMIZE TABLE ... MANIFEST.
Si el número actual de archivos de manifiesto es menor o igual que este umbral, se omite la compactación.
Requiere que allow\_experimental\_iceberg\_compaction esté habilitado.

El valor predeterminado refleja el valor predeterminado documentado de la propiedad de tabla Iceberg `commit.manifest.min-count-to-merge` (100),
consulte [https://iceberg.apache.org/docs/1.5.2/configuration/](https://iceberg.apache.org/docs/1.5.2/configuration/).

## iceberg\_max\_number\_datafiles\_to\_compact

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

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

Umbral para los archivos de datos de compactación en Iceberg.

## iceberg\_orphan\_files\_older\_than\_seconds

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "259200"},{"label": "Nueva configuración para el umbral predeterminado de antigüedad de los archivos huérfanos"}]}]} />

Umbral predeterminado de antigüedad, en segundos, para eliminar archivos huérfanos en tablas Iceberg. Los archivos más recientes que este umbral no se consideran huérfanos. Se usa cuando se omite el argumento older\_than en la llamada al procedimiento `remove_orphan_files()`. El valor predeterminado es 259200 (3 días).

## iceberg\_snapshot\_id

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

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

Consulta la tabla Iceberg con el ID de instantánea especificado.

## iceberg\_timestamp\_ms

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

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

Consulta la tabla Iceberg con la instantánea vigente en una marca temporal específica.

## iceberg\_tolerate\_conflicting\_manifest\_schemas

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.10"},{"label": "1"},{"label": "Nueva configuración: cuando el encabezado de un archivo de manifiesto de Iceberg incluye un esquema que entra en conflicto con el esquema registrado para el mismo schema-id en metadata.json, se da prioridad al esquema de metadata.json y se registra una advertencia en el log en lugar de hacer fallar la consulta, igualando así el comportamiento de otros motores de consulta. Un valor de `compatibility` inferior a 26.10 restaura el comportamiento estricto anterior."}]}]} />

Si está habilitado y la clave `schema` del encabezado de un archivo de manifiesto de Iceberg incluye un esquema distinto del ya registrado para el mismo schema-id en metadata.json, se utiliza el esquema de metadata.json y se ignora la copia del encabezado del manifiesto, emitiendo una advertencia. Si está deshabilitado, ese conflicto hace fallar la consulta con un error ICEBERG\_SPECIFICATION\_VIOLATION.

El esquema del encabezado del manifiesto es solo una copia del table schema en el momento en que se escribió el manifiesto, y se ha observado que algunos writers (por ejemplo, los jobs de mantenimiento de AWS S3 Tables) almacenan allí copias degradadas. Otros motores de consulta resuelven los esquemas a partir de metadata.json e ignoran las copias divergentes del encabezado, de modo que el valor predeterminado sigue ese mismo criterio. Un conflicto entre dos definiciones de esquema de metadata.json siempre hace fallar la consulta.
