Passer au contenu principal

Description

Contient des informations sur les parts de données des tables MergeTree. Chaque ligne décrit une part de données.

Colonnes

  • partition (String) — Identifiant de partition (représentation sous forme de chaîne dérivée de l’expression de clé de partition de la table).
  • name (String) — Nom de la part de données. La structure de nommage des parts peut être utilisée pour déterminer de nombreux aspects des données, ainsi que des schémas d’ingestion et de fusion. Le format de nommage des parts est le suivant :
<partition_id>_<minimum_block_number>_<maximum_block_number>_<level>_<data_version>
  • Définitions :
    • partition_id - identifie la clé de partition
    • minimum_block_number - identifie le numéro de bloc minimal dans la part. ClickHouse fusionne toujours des blocs continus
    • maximum_block_number - identifie le numéro de bloc maximal dans la part
    • level - est incrémenté de 1 à chaque fusion supplémentaire de la part. Un niveau de 0 indique qu’il s’agit d’une nouvelle part qui n’a pas encore été fusionnée. Il est important de garder à l’esprit que toutes les parts dans ClickHouse sont toujours immuables
    • data_version - valeur facultative, incrémentée lorsqu’une part est mutée (là encore, les données mutées sont toujours écrites uniquement dans une nouvelle part, puisque les parts sont immuables)
  • uuid (UUID) — L’UUID de la part de données.
  • part_type (String) — Le format de stockage de la part de données. Valeurs possibles : Wide — chaque colonne est stockée dans un fichier distinct, Compact — toutes les colonnes sont stockées dans un seul fichier. Le format de stockage des données est contrôlé par les paramètres min_bytes_for_wide_part et min_rows_for_wide_part de la table MergeTree.
  • active (UInt8) — Indicateur signalant si la part de données est active. Si une part de données est active, elle est utilisée dans une table. Sinon, elle est sur le point d’être supprimée. Les parts de données inactives apparaissent après des opérations de fusion et de mutation.
  • marks (UInt64) — Le nombre de marks. Pour obtenir le nombre approximatif de lignes dans une part de données, multipliez le nombre de marks par la granularité de l’index (généralement 8192) (cette indication ne fonctionne pas avec la granularité adaptative).
  • rows (UInt64) — Le nombre de lignes.
  • files (UInt64) — Le nombre de fichiers dans la part de données.
  • bytes_on_disk (UInt64) — La taille totale en octets de tous les fichiers de la part de données.
  • data_compressed_bytes (UInt64) — La taille totale des données compressées dans la part de données. Les fichiers auxiliaires (par exemple, les fichiers contenant les marks) ne sont pas inclus.
  • data_uncompressed_bytes (UInt64) — La taille totale des données non compressées dans la part de données. Les fichiers auxiliaires (par exemple, les fichiers contenant les marks) ne sont pas inclus.
  • primary_key_size (UInt64) — La quantité de mémoire (en octets) utilisée par les valeurs de clé primaire dans le fichier primary.idx/cidx sur le disque.
  • marks_bytes (UInt64) — La taille du fichier contenant les marks.
  • secondary_indices_compressed_bytes (UInt64) — La taille totale des données compressées des index secondaires dans la part de données. Les fichiers auxiliaires (par exemple, les fichiers contenant les marks) ne sont pas inclus.
  • secondary_indices_uncompressed_bytes (UInt64) — La taille totale des données non compressées des index secondaires dans la part de données. Les fichiers auxiliaires (par exemple, les fichiers contenant les marks) ne sont pas inclus.
  • secondary_indices_marks_bytes (UInt64) — La taille du fichier contenant les marks des index secondaires.
  • modification_time (DateTime) — La date et l’heure auxquelles le répertoire contenant la part de données a été modifié. Cela correspond généralement à la date et à l’heure de création de la part de données.
  • remove_time (DateTime) — La date et l’heure auxquelles la part de données est devenue inactive.
  • refcount (UInt32) — Le nombre d’endroits où la part de données est utilisée. Une valeur supérieure à 2 indique que la part de données est utilisée dans des requêtes ou des opérations de fusion.
  • min_date (Date) — La valeur minimale de la clé de date dans la part de données.
  • max_date (Date) — La valeur maximale de la clé de date dans la part de données.
  • min_time (DateTime) — La valeur minimale de la clé de date et d’heure dans la part de données.
  • max_time (DateTime) — La valeur maximale de la clé de date et d’heure dans la part de données.
  • partition_id (String) — ID de la partition.
  • min_block_number (Int64) — Le nombre minimal de parts de données qui composent la part actuelle après fusion.
  • max_block_number (Int64) — Le nombre maximal de parts de données qui composent la part actuelle après fusion.
  • level (UInt32) — Profondeur de l’arbre de fusion. Zéro signifie que la part actuelle a été créée par insert plutôt que par fusion d’autres parts.
  • data_version (UInt64) — Nombre utilisé pour déterminer quelles mutations doivent être appliquées à la partie de données (mutations dont la version est supérieure à data_version).
  • primary_key_bytes_in_memory (UInt64) — Quantité de mémoire (en octets) utilisée par les valeurs de la clé primaire. Vaut 0 lorsque primary_key_lazy_load est activé et que la clé n’est pas chargée. Lorsqu’elle est non nulle, les octets résident dans la part elle-même et sont comptabilisés dans jemalloc.mergetree_arena.active_bytes. Ils ne sont JAMAIS comptabilisés dans PrimaryIndexCacheBytes — ces deux cas s’excluent mutuellement pour chaque part : un index se trouve soit dans la part (cette métrique), soit dans le PrimaryIndexCache partagé (l’autre), selon primary_key_lazy_load et use_primary_key_cache.
  • primary_key_bytes_in_memory_allocated (UInt64) — Quantité de mémoire (en octets) réservée aux valeurs de la clé primaire. Vaut 0 lorsque primary_key_lazy_load est activé et que la clé n’est pas chargée. Lorsqu’elle est non nulle, elle est incluse dans jemalloc.mergetree_arena.active_bytes. Voir la note sur primary_key_bytes_in_memory pour la relation avec PrimaryIndexCacheBytes.
  • index_granularity_bytes_in_memory (UInt64) — Quantité de mémoire (en octets) utilisée par les valeurs de granularité d’index (vaut 0 dans le cas de primary_key_lazy_load=1 et use_primary_key_cache=1). Lorsqu’ils sont non nuls, ces octets appartiennent à la part et sont comptabilisés dans jemalloc.mergetree_arena.active_bytes.
  • index_granularity_bytes_in_memory_allocated (UInt64) — Quantité de mémoire (en octets) réservée aux valeurs de granularité d’index (vaut 0 dans le cas de primary_key_lazy_load=1 et use_primary_key_cache=1). Lorsqu’elle est non nulle, elle est incluse dans jemalloc.mergetree_arena.active_bytes.
  • is_frozen (UInt8) — Indicateur signalant qu’une sauvegarde des données de la partition existe. 1 : la sauvegarde existe. 0 : la sauvegarde n’existe pas. Pour plus de détails, voir FREEZE PARTITION.
  • database (String) — Nom de la base de données.
  • table (String) — Nom de la table.
  • engine (String) — Nom du moteur de table sans paramètres.
  • disk_name (String) — Nom du disque qui stocke la partie de données.
  • path (String) — Chemin absolu vers le dossier contenant les fichiers de la partie de données.
  • hash_of_all_files (String) — sipHash128 des fichiers compressés.
  • hash_of_uncompressed_files (String) — sipHash128 des fichiers non compressés (fichiers avec marks, fichier d’index, etc.).
  • uncompressed_hash_of_compressed_files (String) — sipHash128 des données des fichiers compressés comme si elles n’étaient pas compressées.
  • delete_ttl_info_min (DateTime) — Valeur minimale de la clé de date et d’heure pour la règle TTL DELETE.
  • delete_ttl_info_max (DateTime) — Valeur maximale de la clé de date et d’heure pour la règle TTL DELETE.
  • move_ttl_info.expression (Array(String)) — Tableau d’expressions. Chaque expression définit une règle TTL MOVE.
  • move_ttl_info.min (Array(DateTime)) — Tableau de valeurs de date et d’heure. Chaque élément décrit la valeur minimale de la clé pour une règle TTL MOVE.
  • move_ttl_info.max (Array(DateTime)) — Tableau de valeurs de date et d’heure. Chaque élément décrit la valeur maximale de la clé pour une règle TTL MOVE.
  • default_compression_codec (String) — Nom du codec utilisé pour compresser cette partie de données (lorsqu’aucun codec explicite n’est défini pour les colonnes).
  • recompression_ttl_info.expression (Array(String)) — Expression TTL.
  • recompression_ttl_info.min (Array(DateTime)) — Valeur minimale de l’expression TTL calculée dans cette part. Utilisée pour déterminer s’il existe au moins une ligne dont le TTL a expiré.
  • recompression_ttl_info.max (Array(DateTime)) — La valeur maximale de l’expression TTL calculée dans cette part. Utilisée pour déterminer si toutes les lignes ont un TTL expiré.
  • group_by_ttl_info.expression (Array(String)) — L’expression TTL.
  • group_by_ttl_info.min (Array(DateTime)) — La valeur minimale de l’expression TTL calculée dans cette part. Utilisée pour déterminer si au moins une ligne a un TTL expiré.
  • group_by_ttl_info.max (Array(DateTime)) — La valeur maximale de l’expression TTL calculée dans cette part. Utilisée pour déterminer si toutes les lignes ont un TTL expiré.
  • rows_where_ttl_info.expression (Array(String)) — L’expression TTL.
  • rows_where_ttl_info.min (Array(DateTime)) — La valeur minimale de l’expression TTL calculée dans cette part. Utilisée pour déterminer si au moins une ligne a un TTL expiré.
  • rows_where_ttl_info.max (Array(DateTime)) — La valeur maximale de l’expression TTL calculée dans cette part. Utilisée pour déterminer si toutes les lignes ont un TTL expiré.
  • projections (Array(String)) — La liste des noms de projections calculés pour cette part.
  • visible (UInt8) — Indicateur indiquant si cette part est visible pour les requêtes SELECT.
  • creation_tid (Tuple(UInt64, UInt64, UUID)) — ID de la transaction qui a créé ou tente de créer cet objet.
  • removal_tid_lock (UInt64) — Hachage de removal_tid, utilisé pour verrouiller un objet en vue de sa suppression.
  • removal_tid (Tuple(UInt64, UInt64, UUID)) — ID de la transaction qui a supprimé ou tente de supprimer cet objet
  • creation_csn (UInt64) — CSN de la transaction qui a créé cet objet
  • removal_csn (UInt64) — CSN de la transaction qui a supprimé cet objet
  • has_lightweight_delete (UInt8) — Indicateur indiquant si la part possède un masque de lightweight delete.
  • last_removal_attempt_time (DateTime) — La dernière fois que le serveur a tenté de supprimer cette part.
  • removal_state (String) — L’état actuel du processus de suppression de la part.

Exemple

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:                     []

Voir aussi

Dernière modification le 29 juin 2026