This is a flamegraph for INSERT INTO SummingMergeTree SELECT ... query. It shows ClickHouse is spending significant CPU time on DB::ColumnString::index
Both DB::ColumnString::index() in the graph are called by convertToFullColumnIfLowCardinality() in IMergeTreeIndexAggregator::update()
Because convertToFullColumnIfLowCardinality is called (converting the whole column with heavy memory copy operations) for each data granule when update-ing BloomFilter/Set indexes.
This is a flamegraph for
INSERT INTO SummingMergeTree SELECT ...
query. It shows ClickHouse is spending significant CPU time onDB::ColumnString::index
Both
DB::ColumnString::index()
in the graph are called byconvertToFullColumnIfLowCardinality()
inIMergeTreeIndexAggregator::update()