Какие ресурсы необходимы для увеличения скорости работы с большой таблицей sql?

Имеется таблица.
При кол-ве записей в 1.000.000 запрос
select count(id) from smi_objects;
выполняется 1 секунду.

Спустя некоторые время, когда таблица стала размером в 1.300.000 записей, идентичный запрос составляет 20 секунд.
Какими основными аппаратными ресурсами пользуется sql в подобных выборках?
Т.к. количество, на которое увеличилась таблица не пропорциональна увеличению времени исполнения запроса, подозреваю что дело в оперативной памяти, но не уверен.
  • Вопрос задан
  • 455 просмотров
Решения вопроса 1
При миллионе записей 1 секунда на подсчёт количества??

Да у вас вообще индексы есть на эту таблицу и колонку id?

О каких аппаратных ресурсах может идти речь, научитесь СУБД пользоваться.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Smithson
@Smithson
20+ лет админю
ОЗУ, ОЗУ и еще раз ОЗУ.
Как более дешевый паллиатив, можно попробовать перевести базу на более быстрые диски (NAS или SSD).
Но если DB можно закешить в память, то проблем со скоростью чтения у вас не будет :)
На том стоит, например, SAP HANA - пока база помещается в ОЗУ, даже САП работает терпимо. Как база в ОЗУ помещаться перестаёт - ну САП, он и есть САП :)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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