Что выбрать: несколько БД или префикс?

DeMx

Новичок
Что выбрать: несколько БД или префикс?

Есть два типа таблиц: таблицы с системными данными (настройки сайта, список стран...) и контент (новости, статьи...). Контент поделен на регионы.

Соответственно, я планирую поделить контент на разные БД. Один регион - одна БД.

Плюс еще одна БД для системных данных, которые едины для всех регионов. Это все можно закэшировать и забыть.

Так вот, выбрать такой вариант стр-ры или же остановиться на банальных префиксах? ("msk_news", "spb_news"...)

Интересует именно производительность.
 

phprus

Moderator
Команда форума
DeMx
Так вот, выбрать такой вариант стр-ры или же остановиться на банальных префиксах? ("msk_news", "spb_news"...)
А какой смысл в префиксах? Почему нельзя сделать в таблицах контента поле отвечающее за регион?
Твоя схема кстати неудобна. Представь, что тебе понадобится вывести новости для всех регионов за такую-то дату при том по 10 штук на страницу. Скажи, как ты будешь решать такую задачу?
 

DeMx

Новичок
Нужно обязательно отделить контент по регионам. Это то, что дано по заданию, так сказать. -)

Глобального вывода не будет.
 

Фанат

oncle terrible
Команда форума
А тот, кто давал это задание - он вообще хоть одну базу в своей жизни видел не в виде картинки на мониторе?
 

weregod

unserializer
у Вас по миллиону записей на регион в таблице будет, что префиксы-базы разные решили делаеть?
или процесс бэкапа-восстановления БД проекта затруднить хотите?
 

phprus

Moderator
Команда форума
weregod
у Вас по миллиону записей на регион в таблице будет, что префиксы-базы разные решили делаеть?
Да даже если и миллион, то префиксы только усложнят распределение контента по серверам БД, так как вместо распределения одной таблицы нужно будет заботиться о распределении сотни таблиц.

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

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

*****
А тот, кто давал это задание - он вообще хоть одну базу в своей жизни видел не в виде картинки на мониторе?
Так в задании то я уверен про СУБД ни слова, просто DeMx не придумал никакого другого решения, кроме префиксов таблиц.
 

DeMx

Новичок
О да. Пошли догадки. (=

Ну ладно, всем спасибо за ответы.
 
Сверху