Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

ajustes del servidor de ClickHouse storage_*

Estos parámetros configuran el servidor de ClickHouse y se generan automáticamente a partir del código fuente de ClickHouse.

storage_configuration

Permite una configuración de almacenamiento en varios discos.

La configuración de almacenamiento sigue la estructura:

<storage_configuration>
    <disks>
        <!-- configuration -->
    </disks>
    <policies>
        <!-- configuration -->
    </policies>
</storage_configuration>

Configuración de disks

La configuración de disks sigue la estructura que se muestra a continuación:

<storage_configuration>
    <disks>
        <disk_name_1>
            <path>/mnt/fast_ssd/clickhouse/</path>
        </disk_name_1>
        <disk_name_2>
            <path>/mnt/hdd1/clickhouse/</path>
            <keep_free_space_bytes>10485760</keep_free_space_bytes>
        </disk_name_2>
        <disk_name_3>
            <path>/mnt/hdd2/clickhouse/</path>
            <keep_free_space_bytes>10485760</keep_free_space_bytes>
        </disk_name_3>
        ...
    </disks>
</storage_configuration>

Las subetiquetas anteriores definen los siguientes ajustes para disks:

Ajuste Descripción
<disk_name_N> El nombre del disco, que debe ser único.
path La ruta donde se almacenarán los datos del servidor (catálogos data y shadow). Debe terminar en /
keep_free_space_bytes Tamaño del espacio libre reservado en el disco.

Configuración de políticas

Las subetiquetas anteriores definen los siguientes ajustes para policies:

Ajuste Descripción
policy_name_N Nombre de la política. Los nombres de las políticas deben ser únicos.
volume_name_N Nombre del volumen. Los nombres de los volúmenes deben ser únicos.
disk El disco ubicado dentro del volumen.
max_data_part_size_bytes El tamaño máximo de un fragmento de datos que puede residir en cualquiera de los discos de este volumen. Si la fusión da como resultado un tamaño de fragmento que se prevé superior a max_data_part_size_bytes, el fragmento se escribirá en el siguiente volumen. Básicamente, esta funcionalidad permite almacenar fragmentos nuevos o pequeños en un volumen rápido (SSD) y moverlos a un volumen lento (HDD) cuando alcanzan un tamaño mayor. No utilice esta opción si la política solo tiene un volumen.
move_factor La proporción de espacio libre disponible en el volumen. Si el espacio cae por debajo de ese valor, los datos comenzarán a transferirse al siguiente volumen, si lo hay. Para la transferencia, los fragmentos se ordenan por tamaño de mayor a menor (descendente) y se seleccionan los fragmentos cuyo tamaño total sea suficiente para cumplir la condición de move_factor; si el tamaño total de todos los fragmentos es insuficiente, se moverán todos los fragmentos.
perform_ttl_move_on_insert Deshabilita el movimiento de datos con TTL vencido durante la inserción. De forma predeterminada (si está habilitado), si se inserta una porción de datos que ya ha vencido según la regla de movimiento por TTL, se mueve inmediatamente al volumen o disco especificado en dicha regla. Esto puede ralentizar considerablemente la inserción si el volumen o disco de destino es lento (por ejemplo, S3). Si está deshabilitado, la porción vencida de los datos se escribe en el volumen predeterminado y luego se mueve inmediatamente al volumen especificado en la regla para el TTL vencido.
load_balancing Política de equilibrio entre discos: round_robin o least_used.
least_used_ttl_ms Establece el tiempo de espera (en milisegundos) para actualizar el espacio disponible en todos los discos (0 - actualizar siempre, -1 - no actualizar nunca, el valor predeterminado es 60000). Tenga en cuenta que, si el disco solo lo usa ClickHouse y no estará sujeto al redimensionamiento del sistema de archivos sobre la marcha, puede usar el valor -1. En todos los demás casos, no se recomienda, ya que con el tiempo provocará una asignación incorrecta del espacio.
prefer_not_to_merge Deshabilita la fusión de partes de datos en este volumen. Nota: esto puede ser perjudicial y provocar ralentizaciones. Cuando este ajuste está habilitado (no haga esto), se prohíbe la fusión de datos en este volumen (lo cual es malo). Esto permite controlar cómo interactúa ClickHouse con discos lentos. Recomendamos no usarlo en absoluto.
volume_priority Define la prioridad (orden) en la que se llenan los volúmenes. Cuanto menor sea el valor, mayor será la prioridad. Los valores del parámetro deben ser números naturales y cubrir el intervalo de 1 a N (N es el mayor valor de parámetro especificado) sin huecos.

Para volume_priority:

  • Si todos los volúmenes tienen este parámetro, se priorizan en el orden especificado.
  • Si solo algunos volúmenes lo tienen, los volúmenes que no lo tienen reciben la prioridad más baja. Los que sí lo tienen se priorizan según el valor de la etiqueta; la prioridad del resto se determina por el orden en que aparecen en el archivo de configuración.
  • Si ningún volumen tiene este parámetro, su orden se determina por el orden en que aparecen en el archivo de configuración.
  • La prioridad de los volúmenes no puede ser la misma.

storage_metadata_write_full_object_key

Tipo
Bool
Predeterminado
1
Modificable sin reiniciar
No
Escribe los archivos de metadatos del disco en formato VERSION_FULL_OBJECT_KEY. Está habilitada de forma predeterminada. Esta configuración está obsoleta.

storage_shared_set_join_use_inner_uuid

Tipo
Bool
Predeterminado
1
Modificable sin reiniciar
No
Si está activado, se genera un UUID interno durante la creación de SharedSet y SharedJoin. Solo en ClickHouse Cloud

Navigation