Общие > Базы данных
Как лучше организовать структуру модерируемой таблицы?
(1/1)
webxtor:
У меня есть таблица, в которой хранятся некоторые данные, внесенные пользователями.
Появилась задача пропускать все изменения и создания новых записей через модератора. Сайт расчитан на большую посещаемость, а обьем данных таблицы будет около 300 тыс записей.
Стоит ли создавать новую таблицу, где хранить ожидающие модерации данные, с целью снизить нагрузку на таблицу, из которой постоянно идет выборка?
Еще есть вариант немного изменить структуру таблицы, добавив новое поле moderated TINYINT(1), но в таком случае выборка получит еще одно условие в where: and moderated=1, что немного уменьшит скорость работы.
Как же лучше посупить?
Спасибо за внимание!
commander:
webxtor
1. Изобретать велосипед, нужно тогда, когда это оправдано и все имеюшиеся средства уже израсходованы... (например индексы).
--- Цитировать --- с целью снизить нагрузку на таблицу, из которой постоянно идет выборка?
--- Конец цитаты ---
2. ИХМО не правильно сформулировано понятие... нагрузка тут совсем не причем, если имееться ввиду уменьшение кол-ва записей в таблице, то безусловно имеет... но только после того как выполнен п.1 ...
--- Цитировать ---Еще есть вариант немного изменить структуру таблицы, добавив новое поле moderated TINYINT(1), но в таком случае выборка получит еще одно условие в where: and moderated=1, что немного уменьшит скорость работы.
--- Конец цитаты ---
3. Поясните это изречение...
webxtor:
2. Имеется в виду и количество записей и неоправданно постоянно увеличивающийся id (который auto_increment) с каждым новым редактированием. И мне казалось, что увеличение запросов к таблице (кроме выборки будут еще запросы касательно редактирования и модерирования) снизит производительность и надежность хранения данных. Однако, похоже для таких средних обьемов боятся нечего..
3. Ну вот у меня есть таблица моя. Из нее идет выборка по id или по category_id. Если в этой же таблице хранить еще и данные, ожидающие модерации, то нужно будет добавить еще как минимум одно поле - original_id. Теперь я думаю, что можно поле category_id для таких записей оставлять пустым, и оно автоматически не будет участвовать в выборке. Ну а moderated будет указывать на то, вынес ли модератор какое-то решение касательно этой записи или нет.
Тогда возникает вопрос: Что делать после одобрения редактирования модератором?
-удалять временную запись, обновить оригинальную
-или же обновить все поля на пустые вместо удаления, а original_id оставить, и при повторном редактировании использовать эту же временную запись
Навигация
Перейти к полной версии