Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
CIVH
Зарегистрирован: 12.07.2007 Сообщения: 8
|
Добавлено: Чт Июл 12 2007 09:30 Заголовок сообщения: Множестов эккаунтов и производительность под MySQL |
|
|
Здравствуйте!
Вопрос касается производительности под MySQL.
Имеется главный эккаунт (скажем, домен 2-го уровня), имеется множество подчиненных эккаунтов (скажем, домены 3-го уровня на этом хосте).
БД может быть как общая на всех, так и индивидуальные на каждый из эккаунтов (тут я в раздумье и на перепутье).
Задача в том, чтобы обеспечить обслуживание всех хостов (собственно говоря субдоменов) неким общим "шаблонным" заданием. Однако данные, обрабатываемые по единому шаблону, у каждого будут свои.
Встает вопрос: что лучше с точки зрения производительности?
1. создается общая БД, в которой каждому эккаунту принадлежит табла (или таблы) с индивидуальными индексами и данными для этого эккаунта;
2. создаются столько БД, сколько есть эккаунтов, и в каждой отдельно помещаются таблы для них (при этом в главном эккаунте есть лишь табла-связь, учитывающая (регистрирующая) кол-во и функционирование эккаунтов).
Так вот, народ, что вы скажете на это? Что лучше с точки зрения задачи?
Благодарю за мнения и высказывания! |
|
Вернуться к началу |
|
|
CIVH
Зарегистрирован: 12.07.2007 Сообщения: 8
|
Добавлено: Чт Июл 12 2007 09:48 Заголовок сообщения: |
|
|
Кстати, разница между первым и вторым способом и в том, что что первый предполагает наличие в общей БД той таблы-связи, что во втором способе лежит в БД главного хоста. След-но, при первом способе вроде бы есть экономия на 1-м вызове отдельно БД в каждом случае обращения к эккаунту... Но имеет ли это практическое значение с точки зрения производительности - вопрос открытый... |
|
Вернуться к началу |
|
|
CIVH
Зарегистрирован: 12.07.2007 Сообщения: 8
|
Добавлено: Чт Июл 12 2007 11:34 Заголовок сообщения: |
|
|
Датализирую вопрос.
1. Если в запросе нужно объединить несколько таблиц, то в случае нахождения всех их в одной БД, вопросов и проблем не возникает совсем.
2. Если то же самое нужно проделать с таблицами, разбросанными по нескольким БД, то хотя возможно и в Мускуле объединить таблицы из нескольких БД, но тут также встает вопрос производительности.
Как будто бы ясно, что одновременно открыть две БД хоть немного, но медленнее, чем открыть одну.
При этом взять и открыть -дцать таблиц (суть файлов) всё равно, будь все они из одной, или из нескольких БД. И это едва ли будет различаться по производительности процесса.
Накладные расходы (вот вопрос - велики ли они в Мускуле?) возникают именно в связи с открытиями БД (если это нужно сделать больше, чем для 1-й БД)... |
|
Вернуться к началу |
|
|
CIVH
Зарегистрирован: 12.07.2007 Сообщения: 8
|
Добавлено: Чт Июл 12 2007 12:54 Заголовок сообщения: |
|
|
Еще одна сторона или грань проблемы.
Кое-какие различия есть в двух в случаях:
1) множественные запросы (поступающие от обработки страниц разных субдоменов) в одно и то же время вызывают коннект с одной-единственной БД;
2) в том же самом случае запросы случайным образом "разбрасываются" по БД, принадлежащих этим субдоменам.
Вопрос к тем, кто сталкивался с похожими проблемами:
Что лучше - 1-й или 2-й случай, с точки зрения производительности? |
|
Вернуться к началу |
|
|
|