SQL - резиновая?

12
autocalc
На сайте с 11.05.2011
Offline
52
1132

Дорого времени!

У меня на сайте интегрирована система рейтинга, т.е. голосовать можно сразу по десяткам вопросов, методом "за" и "против", так вот, каждый отданный голос создает новую строку в таблице SQL, и теперь меня беспокоит вопрос разумности такой организации. Уже сейчас за неделю 300 новых строк, что будет дальше, и следует ли что то изменить, или это нормально?

[umka]
На сайте с 25.05.2008
Offline
456
#1

Зависит от того, как часто вы обращаетесь к накопленным данным, и как часто их изменяете.

300 новых строк за неделю — небольшой прирост (субъективно).

Лог в помощь!
autocalc
На сайте с 11.05.2011
Offline
52
#2
'[umka:
;9178789']Зависит от того, как часто вы обращаетесь к накопленным данным, и как часто их изменяете.
300 новых строк за неделю — небольшой прирост (субъективно).

Я не знаток, поэтому смею предположить, что обращение происходит каждый раз при подсчете рейтинга, который в свою очередь происходит во время запроса серверу на генерацию страницы рейтинга. Получается что всегда, или нет?

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

Должно быть две таблицы.

В первой хранятся просто числа рейтинг

Во второй хранятся уже данные юзера, с которыми сравниваются, мол не голосовал ли он.

Так же можно переделать, чтобы были не новые строки, а всё в одной. Зачем их плодить то? Пусть в столбец IP записываются и всё.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
DZ
На сайте с 02.07.2011
Offline
2
#4

SQL это язык запросов, а вот база MySQL или любая подобная достаточно резиновая.

Скажем так: миллион строк в таблице, даже если их этого миллиона надо 10 раз в секунду выбирать десяток строк, это не так много записей, конечно, если грамотно созданы индексы и продуманы (оптимизированы) запросы к базе.

То есть всё зависит не от числа строк а от параметров этих самых строк и SQL запросов, которые оперируют этими строками, с лёгкостью можно оперировать миллионами строк, но можно и на сотне строк "повесить" сервер наглухо.

Если опишите задачу или покажете структуру таблиц и запросы, то можно будет говорить по существу, что делать, как улучшить.

Mik Foxi
На сайте с 02.03.2011
Offline
1176
#5

предмет голосования|количество ЗА|количество ПРОТИВ

эти ж данные чаще всего запрашиваются, таблица получится маленькой и легкой. менять только цифры.

+ отдельную таблицу: лог голосования (кто за что проголосова), чекать при получении голоса от пользователя.

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ Форум на замену серчу: https://foxi.biz/
autocalc
На сайте с 11.05.2011
Offline
52
#6
foxi:
предмет голосования|количество ЗА|количество ПРОТИВ
эти ж данные чаще всего запрашиваются, таблица получится маленькой и легкой. менять только цифры.
+ отдельную таблицу: лог голосования (кто за что проголосова), чекать при получении голоса от пользователя.

я бы применил, но я не спец. в целом удовлетворен, понял что париться не стоит. Всем спасибо!)

S
На сайте с 23.05.2004
Offline
315
#7

В принципе не правильно так делать. База хоть и резиновая, но через год обрабатывать тысячи строк для простого результата голосования - это лишняя нагрузка, а ля вордпресс получится.

LEOnidUKG правильный вариант подсказал, этого надо придерживаться.

Это просто подпись.
R
На сайте с 22.06.2007
Offline
174
#8
LEOnidUKG:
Должно быть две таблицы.
В первой хранятся просто числа рейтинг
Во второй хранятся уже данные юзера, с которыми сравниваются, мол не голосовал ли он.

С точки зрения организация и хранения данных оно может быть и правильно, но такая организация замедлит работу - выборки усложнятся: вместо считывания данных с одной таблицы, будут считываться с двух более сложным запросом.

Dmitry.Z, все правильно сказал.

Stek:
LEOnidUKG правильный вариант подсказал, этого надо придерживаться.

не уверен в этом. Объем сохраняемых даных это уменьшит, но никак не быстродействие.

Reise добавил 11.07.2011 в 00:26

autocalc:
понял что париться не стоит

не стоит, правильно поняли. У вас имхо лучший вариант. Сейчас с винтами проблем нет, проблема с вычислительными ресурсами.

neznaika
На сайте с 28.06.2006
Offline
356
#9

У меня таблицы mySQL весят десятки гигов, ничо, полёт наманый :)

Или вы про другой Structured Query Language говорите?

Дорого покупаю настоящие сайты. Не инвестирую деньги и не беру кредиты.
DV
На сайте с 01.05.2010
Offline
644
#10
VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
12

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