тп, предполагается выполнение запросов с фильтром на col1, добавил на col1 идекс с типом set, запросы стали выполняться еще медленнее, размер таблицы 2.2ккк без примари кея (order by tuple() ), гранулярность таблицы дефолтная, гранулярность индекса 4. что я делаю не так?
А skip index вообще сработал ?
а как проверить?
set send_logs_level='trace';
Set очень специфический индекс, на практике очень редко получается добиться ускорения с ним. Лучше minmax или bloom. Ну и так же проблема в том что данные у вас не сортируются. Если у вас значения в колонке в рандомно порядке, data skipping индексы вам не помогут в большинстве случаев. Лучше сделать order by
да, спасибо, мне примерно тоже самое константин в личку посоветовал) сейчас переделываю таблицу на order_by по всем колонкам по которым предполагается фильтрация от меньшей кардинальности к большей (col1, col2… col9) где col 1 имеет 100 уникальных значений а col9 500к. правильный подход?
в целом да, ещё важно смотреть какие поля у вас чаще всего в where используются
Обсуждают сегодня