Fabien Lande
10/13/2025, 4:21 PMCREATE TABLE IF NOT EXISTS test
(
id bigint,
lo_code string,
hi_code string,
value decimal,
timestamp datetime
) ENGINE=OLAP
DUPLICATE KEY (id)
DISTRIBUTED BY HASH (id)
ORDER BY (id);
The table contains 1,000,000 rows and there are no duplicate id values present. I run the following query:
select id, value from test where id=1;
One row is returned.
I'm assuming that the above table has a prefix index since the table contains an ORDER BY clause.
When I look at the query profile, ShortKeyFilterRows is zero, but RemainingRowsAfterShortKeyFilter indicates that many rows have been filtered:
- RemainingRowsAfterShortKeyFilter: 62.500K (62500)
- ShortKeyFilter: 862ns
- ShortKeyFilterRows: 0
- ShortKeyRangeNumber: 0
- ZoneMapIndexFilterRows: 54.308K (54308)
- ZoneMapIndexFiter: 36.699us
- PredFilter: 10.206us
- PredFilterRows: 8.191K (8191)
Does anyone know why ShortKeyFilterRows shows zero yet RemainingRowsAfterShortKeyFilter is less than the table size (1M rows)?
I expected to see something like the following:
- RemainingRowsAfterShortKeyFilter: 1
- ShortKeyFilterRows: 999,999Robert Raharjo
10/13/2025, 5:36 PMShortKeyFilterRows: 0 , it might be that your dataset is too small - try increasing your dataset and rerun the query again.