estimateCompressionRatio
Introducido en: v25.4.0
Calcula el ratio de compresión estimado de una columna dada sin comprimirla.
Sintaxis
estimateCompressionRatio([codec, block_size_bytes])(column)Parámetros
codec— Cadena que contiene un códec de compresión o varios códecs separados por comas en una sola cadena.Stringblock_size_bytes— Tamaño de bloque de los datos comprimidos. Equivale a establecer tantomax_compress_block_sizecomomin_compress_block_size. El valor predeterminado es 1 MiB (1048576 bytes). El valor máximo permitido es 256 MiB (268435456 bytes).UInt64
Argumentos
column— Columna de cualquier tipo.Any
Valor devuelto
Devuelve una estimación del ratio de compresión de la columna dada. Float64
Ejemplos
Uso básico con el códec predeterminado
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 │
└────────────────────┘Uso de un códec específico
SELECT estimateCompressionRatio('T64')(number) AS estimate FROM compression_estimate_example┌──────────estimate─┐
│ 3.762758101688538 │
└───────────────────┘Uso de múltiples códecs
SELECT estimateCompressionRatio('T64, ZSTD')(number) AS estimate FROM compression_estimate_example┌───────────estimate─┐
│ 143.60078980434392 │
└────────────────────┘