Одна БД или несколько?
Тут возникает вопрос: имеет ли смысл под каждую компанию использовать собственную БД или лучше помещать данные всех компаний в одни и те же таблицы и в части запросов джойнить номер компании?Создавай таблицы с суффиксами для каждой компании. Получится что-то типа http://en.wikipedia.org/wiki/Sharding
Используйте PostgeSQL. Там в одной БД можно "сколько угодно" схем завести. На этом фоне всякие ограничения на число БД в mysql выглядят просто убого.
вроде с префиксами удобнее
Есть ли еще неучтенные факторы?Если базы для каждой компании - что будешь делать когда нужно будет собрать данные из нескольких компаний? Писать Union'ы? Для каждого запроса?
Оставить комментарий
dfkmxj
Разрабатывается некий SaaS-сервис для компаний. Для работы сервиса требуется порядка 20 таблиц в БД (MySQL). Тут возникает вопрос: имеет ли смысл под каждую компанию использовать собственную БД или лучше помещать данные всех компаний в одни и те же таблицы и в части запросов джойнить номер компании?Плюсы отдельных БД в том, что сокращается время запросов (т.к. выборка идет по меньшему числу данных невозможен ошибочный запрос, когда данные одной компании будут доступны другой. Но.
Xостера с возможностью создания достаточно большого (хотя бы 500) количества создаваемых БД я не нашел, а дорогие решения пока не по карману.
Есть ли еще неучтенные факторы? Как посоветуете поступить?