Работа с большими базами данных

12
ishipilov
На сайте с 25.12.2011
Offline
101
951

Есть у меня БД MySQL объемом в 100 МБ. Движок под эту БД написан самописный на CodeIgniter, в среднем всего около 4 запросов на страницу.

Но странички грузятся все равно медленно - около 3-5 секунд на страничку.

Подозреваю, что сервер (VDS) недостаточно хороший под эту БД - всего 400 MB, 750 Mhz.

Собственно вопрос. Единственный выход для ускорения работы сайта - это переходить на более дорогостоящий тарифный план или же можно как-то подкрутить mysql????

DV
На сайте с 01.05.2010
Offline
644
#1
ishipilov:
Подозреваю, что сервер (VDS) недостаточно хороший

Надо подтвердить или развеять подозрения, во-первых.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
IL
На сайте с 20.04.2007
Offline
435
#2
ishipilov:
в среднем всего около 4 запросов на страницу.

А времени (на запросы) сколько?

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
Mik Foxi
На сайте с 02.03.2011
Offline
1076
#3

так может у вас запросы к базе кривые и такая же кривая структура базы, раз это самопис.

тогда вам и выделенный сервер не поможет. что там за запросы?

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.
LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#4
Работа с большими базами данных

и

Есть у меня БД MySQL объемом в 100 МБ.

Вообще никак не соотносятся. ТС, у вас КРОШЕЧНАЯ база данных. Ну просто малютка.

Но странички грузятся все равно медленно - около 3-5 секунд на страничку.

Это проблема:

1. написан самописный на CodeIgniter

2. Кривая структура БД

---------- Добавлено 11.12.2013 в 14:10 ----------

это переходить на более дорогостоящий тарифный план или же можно как-то подкрутить mysql????

Ни то и не другое.

С самого начала изучать mysql. Что такое индексы, как их проставлять. Потом изучать язык программирования и пересматривать запросы. Так же думать, может быть кэш всё таки подключать или нет?

Короче опять НЕ программисты захотели поиграть в программистов.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
SeVlad
На сайте с 03.11.2008
Offline
1609
#5
ishipilov:
Но странички грузятся все равно медленно - около 3-5 секунд на страничку.

Присоединяюсь ко всему вышесказанному и добавлю - откуда такая уверенность, что проблема в БД?

LEOnidUKG:
опять НЕ программисты захотели поиграть в программистов.

Чаще происходит другое - кодеры уверены что они программисты.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
QM
На сайте с 25.01.2010
Offline
168
#6
ishipilov:
Есть у меня БД MySQL объемом в 100 МБ.

Это копеечная база данных.

Можно залить все проблемы переездом на более дорогой тариф - но сначала попробовали бы оптимизировать сервер (конфиг my.cnf и прочие), провести аудит кода и т.п.

Вот например, что пишет tuning-primer.sh ?

Chalk
На сайте с 05.11.2009
Offline
48
#7

100 МБ - большая база данных? Смешно. Не знаю вашего уровня в программировании и администрировании, но, возможно, проблема именно в этом? Ваш самопис использует кеширование?

A
На сайте с 19.07.2010
Offline
130
#8
SeVlad:
Чаще происходит другое - кодеры уверены что они программисты.

угу, а программисты уверены, что они пуп земли и DBA (database administrator) не нужен... пока не ляпнется очередная чудо-база.

.............
ishipilov
На сайте с 25.12.2011
Offline
101
#9
SeVlad:
Присоединяюсь ко всему вышесказанному и добавлю - откуда такая уверенность, что проблема в БД?

есть аналогичные сайты с БД менее 10 МБ. грузятся очень быстро.

По поводу того что 100 МБ - это БД малютка, то лично я с такими в первый раз столкнулся.

в БД есть одна большая таблица с описаниями товаров (их там около 130к) размером в 100MB.

структура:

id	int(11)

original_id int(11)
name text
url text
currencyId varchar(5)
picture text
thumbnail text
description text
model text
price float
vendor text
categoryId int(11)

Собственно основная работа идет с ней (2 запроса - сначала описание конкретного товара, потом "похожие товары" рандомно из той же категории). Очень много типов text, но не был уверен в размере varchar, поэтому выбрал его (возможно в этом проблема?). Выборка идет по id и categoryId.

q_metainfo, собственно и спрашиваю по поводу конфигурации. Посоветуете ссылочки/литературку?? и в каком направлении копать?

И еще. сравнил скорости отдачи на локалке (денвер) и сервере - разница существенна (1сек/5сек). т.е. подозреваю что причина все-таки в производительности/конфигурации сервера.

насчет кэша - спасибо, сделал, помогло. Но все равно хотелось бы чтобы странички даже при первом вызове грузились быстрее.

LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#10
потом "похожие товары" рандомно из той же категории)

Рандом через mysql? ORDER BY RAND()?

Ну вы конечно ДА...

Ещё раз спрашиваю, в вашей БД хоть 1 индекс то есть? Вы вообще знаете что это такое?

12

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