X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
> Вопрос по БД
scanread
scanread
Topic Starter сообщение 29.8.2011, 14:41; Ответить: scanread
Сообщение #1


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1005
Регистрация: 16.12.2009
Поблагодарили: 178 раз
Репутация:   54  


Приветствую!

В общем, есть некие категории, к примеру, новости, музыка, фильмы, игры.

Как лучше:

1. Создавать для новостей, музыки, фильмы, игр отдельно каждую таблицу в бд, к примеру, prefix_news, prefix_music, prefix_films, prefix_games и для каждой из их таблицу категорий/подкатегорий prefix_news_categories, prefix_music_categories и т.д.?

2. Или же, все вписывать в одну таблицу: новости, музыку, фильмы, игры, в prefix_content, и для этой таблицу еще таблицу категорий/подкатегорий prefix_content_categories?

Какой вариант оптимальней и будет более разумным?


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Forpain
Forpain
сообщение 29.8.2011, 14:50; Ответить: Forpain
Сообщение #2


Новичок
*


Группа: User
Сообщений: 22
Регистрация: 27.8.2011
Поблагодарили: 1 раз
Репутация:   1  


Какой объем контента ожидается в плане нагрузки на бд?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scanread
scanread
Topic Starter сообщение 29.8.2011, 14:52; Ответить: scanread
Сообщение #3


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1005
Регистрация: 16.12.2009
Поблагодарили: 178 раз
Репутация:   54  


Forpain, не для стат. сайта, для типу как бы новостника smile.gif какой объем - трудно сказать. Поначалу - не много, а потом больше и больше smile.gif Какова нагрузка будет - я без понятия, с БД работаю так, поверхностно.. smile.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
CyberTech
CyberTech
сообщение 29.8.2011, 14:55; Ответить: CyberTech
Сообщение #4


Бывалый
****

Группа: User
Сообщений: 420
Регистрация: 22.2.2011
Из: CyberTech
Поблагодарили: 199 раз
Репутация:   41  


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

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

Сообщение отредактировал CyberTech - 29.8.2011, 14:56


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scanread
scanread
Topic Starter сообщение 29.8.2011, 15:00; Ответить: scanread
Сообщение #5


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1005
Регистрация: 16.12.2009
Поблагодарили: 178 раз
Репутация:   54  


CyberTech, дело в том, что пока реализован 2 вариант, контент в одну таблицу, категории для контента - в другую. Как определить нагрузку - я хз, грузится сайт пока резко, а как будет дальше - без понятия.

Так вот, я и думаю, что лучше будет так и оставить, или же разбивать... вот в чем вопрос.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Mudriy
Mudriy
сообщение 29.8.2011, 15:02; Ответить: Mudriy
Сообщение #6


Частый гость
**

Группа: User
Сообщений: 63
Регистрация: 5.11.2009
Из: ZP
Поблагодарили: 8 раз
Репутация:   1  


однозначно второй. главное правильно настроить индексы в таблицах
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
CyberTech
CyberTech
сообщение 29.8.2011, 15:10; Ответить: CyberTech
Сообщение #7


Бывалый
****

Группа: User
Сообщений: 420
Регистрация: 22.2.2011
Из: CyberTech
Поблагодарили: 199 раз
Репутация:   41  


Mudriy, тут не только в индексах дело. Даже если правильно настроить при хорошей посещалке все равно может все тупить. Потребуется кэширование данных на самом сайте. если его нет или не могут сделать - лучше первый вариант тогда.

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

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

Сообщение отредактировал CyberTech - 29.8.2011, 15:11


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FlashBlack
FlashBlack
сообщение 29.8.2011, 15:11; Ответить: FlashBlack
Сообщение #8


Участник
***

Группа: User
Сообщений: 192
Регистрация: 13.8.2008
Из: MINSK
Поблагодарили: 39 раз
Репутация:   10  


Рано думать с такими задачами про нагрузки.

моё предложение:

categories - хранит списки категорий (поля: id, name)
contents - хранит данные (поля: id, name, content, ....)
content_categories - хранит связи many to many (поля: id, content_id, category_id)

Что б получить список всех категорий контента:
SELECT `categories`.`name` FROM `categories`
WHERE `categories`.`id` IN (SELECT `category_id` FROM `content_categories` WHERE `content_id` = '_АЙДИ_КОНТЕНТА_')


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
CyberTech
CyberTech
сообщение 29.8.2011, 15:18; Ответить: CyberTech
Сообщение #9


Бывалый
****

Группа: User
Сообщений: 420
Регистрация: 22.2.2011
Из: CyberTech
Поблагодарили: 199 раз
Репутация:   41  


(FlashBlack @ 29.8.2011, 18:11) *
content_categories


а это зачем? ) Что за мэни ту мэни ))

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

Сообщение отредактировал CyberTech - 29.8.2011, 15:20


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scanread
scanread
Topic Starter сообщение 29.8.2011, 15:22; Ответить: scanread
Сообщение #10


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1005
Регистрация: 16.12.2009
Поблагодарили: 178 раз
Репутация:   54  


CyberTech,
(CyberTech @ 29.8.2011, 14:10) *
Но если движок уже создан под одну таблицу то хз.. проще с нуля писать под многотабличность, чем переделывать. Так как делов будет очень много.


Та не проблема склонировать и сделать как вариант 1. Переписывать мало что надо, сделано все модулями, скопировал, поменял название, и делов + сделать в неких файлах нужно будет замену, к примеру, с news на films, так же и в бд, добавить те же таблицы, только с другим названием. Это вовсе не трабла.

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

FlashBlack, с радостью бы, только в этом варианте прийдется все перепиливать.... А это - не мало времени.

Сообщение отредактировал scanread - 29.8.2011, 15:24


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Вопрос к знатокам Instagram
20 SEOMR 4137 30.11.2017, 14:25
автор: DiscordPro
Открытая тема (нет новых ответов) Вопрос про Телеграмм
18 syd2010 1112 28.11.2017, 14:25
автор: PostBrigada
Открытая тема (нет новых ответов) Вопрос по seo для интернет магазина
куда девать продвинутые товары, которые уже не выпускают
13 viktormerke 2340 25.11.2017, 20:06
автор: Mikki
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыАrticle manager вопрос
0 Smile3D 438 24.11.2017, 18:27
автор: Smile3D
Открытая тема (нет новых ответов) Вопрос по трансферу доменов
8 MakDonald 1186 13.11.2017, 11:40
автор: bum


 



RSS Текстовая версия Сейчас: 12.12.2017, 14:47
Дизайн