ClickHouse optimizes Top-N queries (ORDER BY ... LIMIT N) using granule-level data skipping with minmax indexes. By comparing min/max metadata against the current Top-N threshold, it can skip entire granules before reading any data. Static filtering works for queries without predicates by preselecting granules with the

10m read time From clickhouse.com
Post cover image
Table of contents
Optimizing common query patterns #How ClickHouse already optimizes Top-N queries #The missing piece: skipping data before it is ever read #Static Top-N filtering (no predicates) #Dynamic Top-N threshold filtering (with predicates) #Production-scale validation #Turning Top-N into a metadata problem #

Sort: