Saltar al contenido principal

Descripción

Contiene información sobre las partes de datos de las tablas MergeTree. Cada fila describe una parte de datos.

Columnas

  • partition (String) — Identificador de la partición (representación textual derivada de la expresión de la clave de partición de la tabla).
  • name (String) — Nombre de la parte de datos. La estructura de nomenclatura de la parte puede usarse para determinar muchos aspectos de los datos, así como los patrones de ingesta y fusión. El formato de nomenclatura de la parte es el siguiente:
<partition_id>_<minimum_block_number>_<maximum_block_number>_<level>_<data_version>
  • Definiciones:
    • partition_id - identifica la clave de partición
    • minimum_block_number - identifica el número de bloque mínimo de la parte. ClickHouse siempre fusiona bloques continuos
    • maximum_block_number - identifica el número de bloque máximo de la parte
    • level - se incrementa en uno con cada fusión adicional de la parte. Un nivel de 0 indica que esta es una parte nueva que no se ha fusionado. Es importante recordar que todas las partes de ClickHouse son siempre inmutables
    • data_version - valor opcional que se incrementa cuando una parte se modifica (de nuevo, los datos modificados siempre se escriben únicamente en una parte nueva, ya que las partes son inmutables)
  • uuid (UUID) — El UUID de la parte de datos.
  • part_type (String) — El formato de almacenamiento de la parte de datos. Valores posibles: Wide — cada columna se almacena en un archivo independiente; Compact — todas las columnas se almacenan en un solo archivo. El formato de almacenamiento de datos se controla mediante la configuración min_bytes_for_wide_part y min_rows_for_wide_part de la tabla MergeTree.
  • active (UInt8) — Indicador que señala si la parte de datos está activa. Si una parte de datos está activa, se usa en una tabla. De lo contrario, está a punto de eliminarse. Las partes de datos inactivas aparecen después de operaciones de fusión y mutación.
  • marks (UInt64) — El número de marcas. Para obtener el número aproximado de filas de una parte de datos, multiplique las marcas por la granularidad del índice (normalmente 8192) (esta indicación no funciona con granularidad adaptativa).
  • rows (UInt64) — El número de filas.
  • files (UInt64) — El número de archivos de la parte de datos.
  • bytes_on_disk (UInt64) — Tamaño total en bytes de todos los archivos de la parte de datos.
  • data_compressed_bytes (UInt64) — Tamaño total de los datos comprimidos de la parte de datos. No se incluyen los archivos auxiliares (por ejemplo, los archivos con marcas).
  • data_uncompressed_bytes (UInt64) — Tamaño total de los datos sin comprimir de la parte de datos. No se incluyen los archivos auxiliares (por ejemplo, los archivos con marcas).
  • primary_key_size (UInt64) — La cantidad de memoria (en bytes) utilizada por los valores de la clave primaria en el archivo primary.idx/cidx en disco.
  • marks_bytes (UInt64) — El tamaño del archivo con marcas.
  • secondary_indices_compressed_bytes (UInt64) — Tamaño total de los datos comprimidos de los índices secundarios en la parte de datos. No se incluyen los archivos auxiliares (por ejemplo, los archivos con marcas).
  • secondary_indices_uncompressed_bytes (UInt64) — Tamaño total de los datos sin comprimir de los índices secundarios en la parte de datos. No se incluyen los archivos auxiliares (por ejemplo, los archivos con marcas).
  • secondary_indices_marks_bytes (UInt64) — El tamaño del archivo con marcas de los índices secundarios.
  • modification_time (DateTime) — La hora a la que se modificó el directorio de la parte de datos. Esto suele corresponder a la hora de creación de la parte de datos.
  • remove_time (DateTime) — La hora en que la parte de datos pasó a estar inactiva.
  • refcount (UInt32) — El número de lugares en los que se utiliza la parte de datos. Un valor mayor que 2 indica que la parte de datos se usa en consultas o fusiones.
  • min_date (Date) — El valor mínimo de la clave de fecha en la parte de datos.
  • max_date (Date) — El valor máximo de la clave de fecha en la parte de datos.
  • min_time (DateTime) — El valor mínimo de la clave de fecha y hora en la parte de datos.
  • max_time (DateTime) — El valor máximo de la clave de fecha y hora en la parte de datos.
  • partition_id (String) — ID de la partición.
  • min_block_number (Int64) — El número mínimo de partes de datos que componen la parte actual después de la fusión.
  • max_block_number (Int64) — El número máximo de partes de datos que componen la parte actual después de la fusión.
  • level (UInt32) — Profundidad del árbol de fusiones. Cero significa que la parte actual se creó mediante insert y no mediante la fusión de otras partes.
  • data_version (UInt64) — Número que se utiliza para determinar qué mutaciones deben aplicarse a la data part (mutaciones con una versión superior a data_version).
  • primary_key_bytes_in_memory (UInt64) — La cantidad de memoria (en bytes) utilizada por los valores de la clave primaria. Será 0 cuando primary_key_lazy_load esté habilitado y la clave no esté cargada. Cuando no es 0, los bytes residen en la propia parte y se contabilizan en jemalloc.mergetree_arena.active_bytes. NUNCA se cuentan en PrimaryIndexCacheBytes — son mutuamente excluyentes por parte: un índice reside o bien en la parte (esta métrica) o bien en el PrimaryIndexCache compartido (la otra), según primary_key_lazy_load y use_primary_key_cache.
  • primary_key_bytes_in_memory_allocated (UInt64) — La cantidad de memoria (en bytes) reservada para los valores de la clave primaria. Será 0 cuando primary_key_lazy_load esté habilitado y la clave no esté cargada. Cuando no es 0, se incluye en jemalloc.mergetree_arena.active_bytes. Consulte la nota sobre primary_key_bytes_in_memory para ver la relación con PrimaryIndexCacheBytes.
  • index_granularity_bytes_in_memory (UInt64) — La cantidad de memoria (en bytes) utilizada por los valores de granularidad del índice (será 0 en caso de primary_key_lazy_load=1 y use_primary_key_cache=1). Cuando no es 0, los bytes pertenecen a la parte y se contabilizan en jemalloc.mergetree_arena.active_bytes.
  • index_granularity_bytes_in_memory_allocated (UInt64) — La cantidad de memoria (en bytes) reservada para los valores de granularidad del índice (será 0 en caso de primary_key_lazy_load=1 y use_primary_key_cache=1). Cuando no es 0, se incluye en jemalloc.mergetree_arena.active_bytes.
  • is_frozen (UInt8) — Indicador que muestra que existe una copia de seguridad de los datos de una partición. 1, la copia de seguridad existe. 0, la copia de seguridad no existe. Para más detalles, consulte FREEZE PARTITION.
  • database (String) — Nombre de la base de datos.
  • table (String) — Nombre de la tabla.
  • engine (String) — Nombre del motor de la tabla sin parámetros.
  • disk_name (String) — Nombre del disco que almacena la data part.
  • path (String) — Ruta absoluta a la carpeta con los archivos de la data part.
  • hash_of_all_files (String) — sipHash128 de archivos comprimidos.
  • hash_of_uncompressed_files (String) — sipHash128 de archivos sin comprimir (archivos con marcas, archivo de índice, etc.).
  • uncompressed_hash_of_compressed_files (String) — sipHash128 de los datos de los archivos comprimidos como si estuvieran sin comprimir.
  • delete_ttl_info_min (DateTime) — El valor mínimo de la clave de fecha y hora para la regla TTL DELETE.
  • delete_ttl_info_max (DateTime) — El valor máximo de la clave de fecha y hora para la regla TTL DELETE.
  • move_ttl_info.expression (Array(String)) — Array de expresiones. Cada expresión define una regla TTL MOVE.
  • move_ttl_info.min (Array(DateTime)) — Array de valores de fecha y hora. Cada elemento describe el valor mínimo de la clave para una regla TTL MOVE.
  • move_ttl_info.max (Array(DateTime)) — Array de valores de fecha y hora. Cada elemento describe el valor máximo de la clave para una regla TTL MOVE.
  • default_compression_codec (String) — El nombre del códec utilizado para comprimir esta data part (en caso de que no haya un códec explícito para las columnas).
  • recompression_ttl_info.expression (Array(String)) — La expresión TTL.
  • recompression_ttl_info.min (Array(DateTime)) — El valor mínimo de la expresión TTL calculada dentro de esta parte. Se utiliza para determinar si hay al menos una fila con TTL vencido.
  • recompression_ttl_info.max (Array(DateTime)) — El valor máximo de la expresión TTL calculada dentro de esta parte. Permite saber si todas las filas tienen el TTL expirado.
  • group_by_ttl_info.expression (Array(String)) — La expresión TTL.
  • group_by_ttl_info.min (Array(DateTime)) — El valor mínimo de la expresión TTL calculada dentro de esta parte. Permite saber si al menos una fila tiene el TTL expirado.
  • group_by_ttl_info.max (Array(DateTime)) — El valor máximo de la expresión TTL calculada dentro de esta parte. Permite saber si todas las filas tienen el TTL expirado.
  • rows_where_ttl_info.expression (Array(String)) — La expresión TTL.
  • rows_where_ttl_info.min (Array(DateTime)) — El valor mínimo de la expresión TTL calculada dentro de esta parte. Permite saber si al menos una fila tiene el TTL expirado.
  • rows_where_ttl_info.max (Array(DateTime)) — El valor máximo de la expresión TTL calculada dentro de esta parte. Permite saber si todas las filas tienen el TTL expirado.
  • projections (Array(String)) — La lista de nombres de las proyecciones calculadas para esta parte.
  • visible (UInt8) — Indicador de si esta parte es visible para las consultas SELECT.
  • creation_tid (Tuple(UInt64, UInt64, UUID)) — ID de la transacción que ha creado o está intentando crear este objeto.
  • removal_tid_lock (UInt64) — Hash de removal_tid, usado para bloquear un objeto para su eliminación.
  • removal_tid (Tuple(UInt64, UInt64, UUID)) — ID de la transacción que ha eliminado o está intentando eliminar este objeto
  • creation_csn (UInt64) — CSN de la transacción que ha creado este objeto
  • removal_csn (UInt64) — CSN de la transacción que ha eliminado este objeto
  • has_lightweight_delete (UInt8) — Indicador de si la parte tiene una máscara de eliminación ligera.
  • last_removal_attempt_time (DateTime) — La última vez que el server intentó eliminar esta parte.
  • removal_state (String) — El estado actual del proceso de eliminación de la parte.

Ejemplo

SELECT * FROM system.parts LIMIT 1 FORMAT Vertical;
Row 1:
──────
partition:                             tuple()
name:                                  all_1_4_1_6
part_type:                             Wide
active:                                1
marks:                                 2
rows:                                  6
bytes_on_disk:                         310
data_compressed_bytes:                 157
data_uncompressed_bytes:               91
secondary_indices_compressed_bytes:    58
secondary_indices_uncompressed_bytes:  6
secondary_indices_marks_bytes:         48
marks_bytes:                           144
modification_time:                     2020-06-18 13:01:49
remove_time:                           1970-01-01 00:00:00
refcount:                              1
min_date:                              1970-01-01
max_date:                              1970-01-01
min_time:                              1970-01-01 00:00:00
max_time:                              1970-01-01 00:00:00
partition_id:                          all
min_block_number:                      1
max_block_number:                      4
level:                                 1
data_version:                          6
primary_key_bytes_in_memory:           8
primary_key_bytes_in_memory_allocated: 64
is_frozen:                             0
database:                              default
table:                                 months
engine:                                MergeTree
disk_name:                             default
path:                                  /var/lib/clickhouse/data/default/months/all_1_4_1_6/
hash_of_all_files:                     2d0657a16d9430824d35e327fcbd87bf
hash_of_uncompressed_files:            84950cc30ba867c77a408ae21332ba29
uncompressed_hash_of_compressed_files: 1ad78f1c6843bbfb99a2c931abe7df7d
delete_ttl_info_min:                   1970-01-01 00:00:00
delete_ttl_info_max:                   1970-01-01 00:00:00
move_ttl_info.expression:              []
move_ttl_info.min:                     []
move_ttl_info.max:                     []

Ver también

Última modificación el 29 de junio de 2026