У нас есть таблица в mariadb с большим количеством строк, как 3 миллиона.Эта таблица была проиндексирована.У нас есть работа, которая вставляет 3 миллиона записей в эту таблицу.Запрос на эту таблицу занимает больше минуты.Наблюдение - это быстрый запрос после того, как данные были вставлены (скажем, через 30 минут).Наше наблюдение состоит в том, что индексация таблиц требует времени, и как только индексация завершена, запросы выполняются быстро.Пример запроса похож на
select count(distinct userd_id) from users;
Где индексируется столбец user_id.Ниже приведено объяснение запроса
+------+-------------+---------------------------+-------+---------------+-------------------------+---------+------+---------+------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+---------------------------+-------+---------------+-------------------------+---------+------+---------+------------------------------+
| 1 | SIMPLE | users | index | NULL | index_on_user_id | 13 | NULL | 3505169 | Using index; Using temporary |
+------+-------------+---------------------------+-------+---------------+-------------------------+---------+------+---------+------------------------------+
. Какую лучшую конфигурацию мы можем сделать, чтобы сократить время выполнения запроса.Система имеет 8 ядер и 32 ГБ оперативной памяти, а устройство - 500 ГБ.