Introduit dans : v25.4.0
Estime le ratio de compression d’une colonne donnée sans la compresser.
Syntaxe
estimateCompressionRatio([codec, block_size_bytes])(column)
Paramètres
codec — Chaîne contenant un codec de compression ou plusieurs codecs séparés par des virgules dans une seule chaîne. String
block_size_bytes — Taille de bloc des données compressées. Cela revient à définir à la fois max_compress_block_size et min_compress_block_size. La valeur par défaut est de 1 MiB (1048576 octets). La valeur maximale autorisée est de 256 MiB (268435456 octets). UInt64
Arguments
column — Colonne de n’importe quel type. Any
Valeur renvoyée
Renvoie une estimation du ratio de compression pour la colonne donnée. Float64
Exemples
Utilisation de base avec le codec par défaut
CREATE TABLE compression_estimate_example
(
`number` UInt64
)
ENGINE = MergeTree()
ORDER BY number
SETTINGS min_bytes_for_wide_part = 0;
INSERT INTO compression_estimate_example
SELECT number FROM system.numbers LIMIT 100_000;
SELECT estimateCompressionRatio(number) AS estimate FROM compression_estimate_example
┌───────────estimate─┐
│ 1.9988506608699999 │
└────────────────────┘
Utiliser un codec spécifique
SELECT estimateCompressionRatio('T64')(number) AS estimate FROM compression_estimate_example
┌──────────estimate─┐
│ 3.762758101688538 │
└───────────────────┘
Utiliser plusieurs codecs
SELECT estimateCompressionRatio('T64, ZSTD')(number) AS estimate FROM compression_estimate_example
┌───────────estimate─┐
│ 143.60078980434392 │
└────────────────────┘
Dernière modification le 25 juin 2026