Сервис блогов. Вопрос по распределению нагрузок на БД

Статус
В этой теме нельзя размещать новые ответы.

Spear

почемучка
Сервис блогов. Вопрос по распределению нагрузок на БД

Христос Воскрес! :)

А теперь по теме :)
я сейчас делаю сервис блогов, и никак не могу решить как будет правильнее распределить нагрузку на БД. Есть 2 варианта, буду рад если подскажете какой лучше использовать:

1. вариант
есть база, например, blog_blogs
в ней приблизительно такие таблицы:
1_blog_posts
1_blog_comments
1_blog_options


в каждой таблице есть поле BLOG_ID, которое показывает к какому блогу отновится та или иная запись, настройка и пр.
Каждый такой набор таблиц будет обслуживать 200 блогов.
То есть когда будет регистрироваться 201 блог, то в базе данных blog_blogs создастся новій набор таблиц:
2_blog_posts
2_blog_comments
2_blog_options

2. вариант
есть база, например, blog_blogs_1
в ней все та же структура
1_blog_posts
1_blog_comments
1_blog_options
но теперь каждый набор таблиц обслуживает всего 1 блог.
То есть на 100 блогов будет создано 100 наборов таблиц, итого в этой базе будет (в данном варианте) 300 таблиц (хотя на самом деле набор таблиц сейчас - это уже 7-8 таблиц).

т.к. база не резиновая то после того как база данных blog_blogs_1 вместит в себя обслуживание, скажем, 1000 блогов - будет создана новая база данных, blog_blogs_2. И так далее.

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

минус первого варианта - добавление в каждый (практически) запрос where BLOG_ID = $blog_id. Кроме того - довольно большой объем данных в каждой таблице
плюсы этого варианта - отсутствие тысяч таблиц в базе данных

плюс второго варианта - не будет никаких where blog_id=$blog_id т.к. выборки будут производиться по таблице, которая все содержит данные только этого блога
минусы - большое кол-во таблиц, чатсь из которых, конечно, будет простаивать "впустую" (блоги спаммеров, забаненые блоги, блоги с малой активностью). Кроме того, из-за большого объема таблиц появляется новый геморрой в виде обновления всех наборов таблиц при апргрейде скриптов.

Буду ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ рад любой помощи и советам!

ещё раз с праздником! %)
 

Spear

почемучка
SiMM
то есть зачем вобще разделять? То есть почему бы не хранить все посты в 1 таблице, коментарии в другой, настрйоки в третьей? потому что тогда сервер здохнет. Это ведь я самые основные таблицы показал.
Это не "очередной сервис блогов" на 100 пользователей, сервис будет раскручиваться.
Итого рано или поздно (а скоере - рано) таблицы с теме же коментариями будут содержать миллионы записей.
 

HraKK

Мудак
Команда форума
Spear
потому что тогда сервер здохнет.
C чего Вы это взяли?

Это не "очередной сервис блогов" на 100 пользователей, сервис будет раскручиваться.
Тогда наймите хорошего программиста. Иначе это будет
"очередной сервис блогов" на 100 пользователей
. Ведь затраты на программистов мизерными по сравнению с тем что придется вложить в расскрутку и поддержку проекта.
 

Spear

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

MadGreen

meninweb
ну так вы постарайтесь четко ответить: почему сервер mysql должен "сдохнуть" выбирая по ключу поле из одной таблицы и жить делая тоже самое но из кучи таблиц?
 

Spear

почемучка
MadGreen
на MySql.com читал что быстрее выбрать 1 запись из таблицы, в которой 1000 записей (даже если в базе данных 10000 таблиц), чем выбрать 1 запись из таблицы, в которой миллион записей. И там структура не int\mediumint. Есть поля varchar, text.
MadGreen ещё просьба - если Вы действителньо не можете мне помочь - не стоит задавать провокационных и необоснованных вопросов. Я не хочу вас обидеть или что-то такое - просто мне нужно как можно быстрее и правлиьно решить эту задачу, а не философствовать и отвечать на глупые вопросы.

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

-~{}~ 08.04.07 20:49:

Mozart
хм. а что искать? ) предусмотрен, предусмотрен. И я всегда сначала ищу, прежде чем спрашивать. вот только подходящий поисковый запрос в голоу не лезит.

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

Фанат

oncle terrible
Команда форума
Тема закрыта.

Проблемы личного характера и бессмысленные споры между участниками не являются предметом обсуждения форума.
Обсуждайте их в привате.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху