@rst630

Почему при выборе всех полей в clickhouse запрос очень долгий?

SELECT * FROM `bulletins` WHERE `time` BETWEEN 1597770000 AND 1605718800 ORDER BY `time` DESC LIMIT 1;

1 rows in set. Elapsed: 25.872 sec. Processed 25.72 million rows, 35.89 GB (993.97 thousand rows/s., 1.39 GB/s.)

SELECT id FROM `bulletins` WHERE `time` BETWEEN 1597770000 AND 1605718800 ORDER BY `time` DESC LIMIT 1;

1 rows in set. Elapsed: 0.123 sec. Processed 25.72 million rows, 308.59 MB (209.23 million rows/s., 2.51 GB/s.)

Из-за такого поведения приходится делать двойной запрос с предвыборкой - select * where id in (select id .......)

Если выбирать не все поля а вручную указать большинство из них, то тормоза такие же, чем больше полей указываешь тем тормознее получается. Понятно что он похоже читает все эти поля при выборке, но как избежать такого поведения? Есть еще варианты кроме запроса с подзапросом?
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы