@fattan
программист

Таблицы в БД для Symfony Bundle — префиксы таблиц или отдельные БД?

Есть у нас система документооборота, которую сейчас на Symfony3 переписываю. Возник вопрос по организации Bundles и их моделей.
Система представляет собой набор модулей (Bundles в терминологии Symfony3 ). В каждом модуле есть документы. У документов есть комментарии, статусы и набор полей отличающийся от модуля к модулю. Также, некоторые (но не все) модули взяимосвязаны. Например, документ в модуле А создаётся на основании созданного и подписанного документа в модуле Б.
На данный момент разделение модулей реализовано префиксами, все они в одной БД:
exp_document,
exp_comments,
pay_document,
pay_comments,


Но где-то я вычитал, что еще можно делать такое деление: один модуль(бандл) = одна БД.
То есть будет:
exp_db:
document,
comments,
pay_db:
document,
comments,


Вопрос: как грамотнее организовать? С префиксами, как сейчас? Или с разделением по базам данных?
Учитывая, что в некоторых модулях есть привязка к информации из других модулей.
  • Вопрос задан
  • 306 просмотров
Пригласить эксперта
Ответы на вопрос 2
myrkoxx
@myrkoxx
developer
Думаю лучше использовать префикс. Использовать разделение по бд возможно будет уместно если у вас будет (есть) большая нагрузка, хотя думаю в таком случае есть и лучшие паттерны . Как вариант при нагрузке возможно будет лучше дробить ваше приложение на микросервисы с api нежели держать монолитом.
Ответ написан
Комментировать
@shagguboy
при разделении по БД внешние ключи не сделаешь.

если пользоваться ORM то имена таблиц неважны впринципе.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы