Какую архитектуру БД использовать для СааС?

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

Появилась идея реализовать б2б саас проект. Появились кое-какие вопросы, связанные с БД.

Кое-какие факты о проекте:
1) Компании регистрируются, заводят аккаунты сотрудников (что-то типа мини-cmr)
2) Компании могут добавить некоторые модули сайта, расширяя функционал.
3) У компаний есть база с сотрудниками, база с клиентами, база статистики, и еще парочку прочей информации.. Компаний ориентировочно до 1000 шт.

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

Подскажите, пожалуйста, +/- , или, может быть, знаете, как это обычно реализуют.
  • Вопрос задан
  • 2667 просмотров
Пригласить эксперта
Ответы на вопрос 1
@portfelio
При нормальном коде разграничение прав на уровне БД будет предпочтительнее. При кривом коде вы можете и к организации хранения данных подходить как угодно.

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

Абстрактные "сотрудники-модули-клиенты-статистика" могут быть реализованы и на PostgreSQL/MySQL и на Riak/MongoDB и на любых других СУБД.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы