Влияет ли размер таблицы БД на скорость обработки?

P
На сайте с 06.01.2009
Offline
592
1545

Здравствуйте. Подскажите, пож-та, в БД сриптами формируется таблица с весьма большим количеством колонок(таблица А). В таблице примерно 30000 строк и 50 колонок. Затем, таблица обрабатывается, и для двух основных колонок в эту таблицу получаем итоговые данные. Только эти две колонки задействованы в дальнейшем для вывода на сайт информации.

Подскажите, пож-та, есть ли смысл итоговые две колонки вынести в отдельную таблицу (таблицу Б) и для вывода данных на сайт брать данные не из большой (А), а из маленькой (Б) ?

Или поскольку при получении данных из табл А мы получаем данные только по двум колонкам (условно остальные не задействованы) не важно какая она по размеру?

Спасибо

LEOnidUKG
На сайте с 25.11.2006
Offline
1749
#1

30 000 строк это вообще ни о чём. Большая это от 1 млн. записей. Вот тогда надо что-то думать.

У вас что-то тормозит или что?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
P
На сайте с 06.01.2009
Offline
592
#2
LEOnidUKG:
30 000 строк это вообще ни о чём. Большая это от 1 млн. записей. Вот тогда надо что-то думать.

У вас что-то тормозит или что?

Вообще не тормозит, просто подумал, может есть смысл сделать так, просто чтобы ускорить загрузку. Там в блок подгрузка товаров идет, а для того чтобы вывести идет сортировка 30000 строк по характеристикам из двух столбцов. Конечно, можно замерить, но я спросил, ответ услышал. Спасибо LEOnidUKG.

LEOnidUKG
На сайте с 25.11.2006
Offline
1749
#3

Достаточно индексы расставить правильно, по каким полям идёт выборка и по каким идёт сортировка. Если несколько полей сортировка или выборки то индексы должны быть сгруппированы.

[Удален]
#4

в случае с 30к записями о скорости можно не думать. если миллионы записей, то индексы и быстрый SSD

Aisamiery
На сайте с 12.04.2015
Offline
300
#5

Все ваши 30к записей влазят в пул БД, а в самой оперативной памяти вы никак не ускорите штатно. Край, чтоб не лезть в табличку каждый раз, закешируйте результат выборки, так как не особо и динамичная у вас табличка.

PS. У меня по 6.5кк табличке выборка идет примерно 0.3 секунды (по индексам естественно, без них примерно 25-30 секунд)

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий