Introduced in: v25.4.0
Estimates the compression ratio of a given column without compressing it.
Syntax
estimateCompressionRatio([codec, block_size_bytes])(column)Arguments
column— Column of any type.Any
Returned value
Returns an estimate compression ratio for the given column. Float64
Examples
Basic usage with default codec
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─┐
│ 5.758875867430677 │
└───────────────────┘Using a specific codec
SELECT estimateCompressionRatio('T64')(number) AS estimate FROM compression_estimate_example┌──────────estimate─┐
│ 3.762758101688538 │
└───────────────────┘Using multiple codecs
SELECT estimateCompressionRatio('T64, ZSTD')(number) AS estimate FROM compression_estimate_example┌───────────estimate─┐
│ 143.60078980434392 │
└────────────────────┘