Pular para o conteúdo principal

estimateCompressionRatio

Introduzido em: v25.4.0 Estima a taxa de compressão de uma determinada coluna sem compactá-la.
Nos exemplos abaixo, o resultado pode variar conforme o codec de compressão padrão do servidor. Consulte Codecs de compressão de colunas.
Sintaxe
estimateCompressionRatio([codec, block_size_bytes])(column)
Parâmetros
  • codec — String que contém um codec de compressão ou vários codecs separados por vírgulas em uma única string. String
  • block_size_bytes — Tamanho do bloco de dados comprimidos. Isso é semelhante a definir tanto max_compress_block_size quanto min_compress_block_size. O valor padrão é 1 MiB (1048576 bytes). O valor máximo permitido é 256 MiB (268435456 bytes). UInt64
Argumentos
  • column — Coluna de qualquer tipo. Any
Valor retornado Retorna uma estimativa da taxa de compressão para a coluna especificada. Float64 Exemplos Uso básico com o codec padrão
Query
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
Response
┌───────────estimate─┐
│ 1.9988506608699999 │
└────────────────────┘
Usando um codec específico
Query
SELECT estimateCompressionRatio('T64')(number) AS estimate FROM compression_estimate_example
Response
┌──────────estimate─┐
│ 3.762758101688538 │
└───────────────────┘
Uso de vários codecs
Query
SELECT estimateCompressionRatio('T64, ZSTD')(number) AS estimate FROM compression_estimate_example
Response
┌───────────estimate─┐
│ 143.60078980434392 │
└────────────────────┘
Última modificação em 10 de junho de 2026