estimateCompressionRatio
추가된 버전: v25.4.0
지정된 컬럼의 압축률을 실제로 압축하지 않고 추정합니다.
구문
estimateCompressionRatio([codec, block_size_bytes])(column)매개변수
codec— 압축 코덱 하나 또는 쉼표로 구분된 여러 코덱이 포함된String입니다.Stringblock_size_bytes— 압축 데이터의 블록 크기입니다. 이는max_compress_block_size와min_compress_block_size를 함께 설정하는 것과 유사합니다. 기본값은 1 MiB(1048576바이트)입니다. 허용되는 최대값은 256 MiB(268435456바이트)입니다.UInt64
인수
column— 임의 타입의 컬럼입니다.Any
반환 값
지정된 컬럼의 예상 압축률을 반환합니다. Float64
예시
기본 코덱을 사용하는 기본 사용법
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 │
└────────────────────┘특정 코덱 사용하기
SELECT estimateCompressionRatio('T64')(number) AS estimate FROM compression_estimate_example┌──────────estimate─┐
│ 3.762758101688538 │
└───────────────────┘여러 코덱 사용하기
SELECT estimateCompressionRatio('T64, ZSTD')(number) AS estimate FROM compression_estimate_example┌───────────estimate─┐
│ 143.60078980434392 │
└────────────────────┘