млрд записей. В таблице 2 скип индекса. С момента заливки данных прошли почти сутки, бд до сих пор оклематься не может. Запросы по первичному индексу выполняются минут по 5. Хотя он и выводит мне результат быстро, но запрос не прекращается. Подскажите пожалуйста в чём проблема? Это фоном так индексы просчитываются новые и пересортировка таблицы по первичному происходит?
И заодно, подскажите, кто знает. Как понять, что переиндексирование таблицы закончено?
Что значит "выводит мне результат быстро, но запрос не прекращается"? Это datagrip? Покажите ddl и запрос
нет никакого фоном. Все индексы ВСЕГДА построены окончательно по завершению инсерта
это обычный консольный клиент кликхауса, в терминале
В фоновом режиме ClickHouse выполняет слияния кусков данных для более эффективного хранения. Я вот это скорее имел в виду. Не влияет ли этот процесс
99% мержей случились в момент инсерта, оставшийся 1% ни на что не влияет и закончился минут через 5 после последнего инсерта
запрос по первичному индексу select * ? сколько времени выполняется select count()
да, по первичному. count выдаётся мгновенно
короче ваша проблема вообще никак не связана с инсертами, мержами, индексами
как тогда можно объяснить ситуацию, когда при 500млн записей поиск по первичному индексу отрабатывает менее, чем за секунду, а при 2млрд - 5 минут?
я знаю 48 объяснений, как-то не хочется проверять все. джойн есть? аггрегация? сортировка? покажите explain estimate ваш_select и set send_logs_level='trace'; ваш_select ... format Null;
Обсуждают сегодня