![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
В общим есть 3 сущности 1- контент 2- комментарии 3- голосование
Контента и комментарии нужно связать с голосованием т.е нужна возможность прогуливать как за определенный контент (к примеру статья) так и за комментарии к ней Я вижу 2 варианта: 1) Объединить 1 и 2 сущность в одну с добавлением дополнительного поля content_type по которому определять какого типа запись (статья или комментарий) 2) Создать для таблицы голосование первичный составной клочь из target_id (id – 1-й или 2-й сущности) user_id и target_ type (статья или комментарий) Удобно конечно использовать первый вариант с учетом того, что планируется также реализация возможность прикрепить к контенту и комментариям файлы, но вот меня беспокоит производительность выборок в таком варианте т.к может быть большое количество записей и в связи с этим целесообразно ли это все хранить в 1-й таблице Это сообщение отредактировал(а) php5 - 11.2.2014, 22:51 |
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: 0 Всего: 16 |
В любом случае -- первый вариант. Производительность во-первых зря особо беспокоит -- этого контэнта по сравнению с UGC будет мало скорее всего. Во-вторых -- ну, это жэ современные БД, будет что-то такое наклёвываться -- порежэшь таблицу, будешь обращаться через view. Тем более, что явно более внятно порежэшь.
|
|||
|
||||
php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
На самом деле контента будет много т.к фото и видео тоже планирую хранить в той же таблице что и статьи
|
|||
|
||||
Johny999 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 19.2.2014 Репутация: нет Всего: нет |
1-й вариант!
комментарий и статья - это практически одно и тоже. Вы сможете использовать один механизм добавления, форматирования. Фото и видео в этой таблице хранить нельзя категорически. Во-первых - это большая и не нужная нагрузка на SQL-сервер, во-вторых - а если пользователь захочет 2 фото в одну статью вложить? В этом случае нужна просто отдельная таблица для файлов со ссылкой на таблицу статей/комментариев. И, кстати, нужно не поле content_type добавлять, а поле parent, которое ссылается на статью (или родительский коммент), к которому данный коммент. Тогда статья будет иметь просто NULL или 0 в этом поле (это как пожелаете), и селективность индекса по этому полю будет хорошая. |
|||
|
||||
php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
Под хранить фото и видео я подразумевал, что будет храниться всего-лишь ссылка на файл, что касается поля parent то для контента типа комент оно безусловно нужно но и поле content_type тоже т.к если к примеру к статье будет прикреплен контент разного вида то как я тогда смогу определить без поля content_type как его отрендерить |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Общие вопросы по базам данных" | |
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |