Sql - одна или две базы данных? - PullRequest
0 голосов
/ 15 мая 2018

Я хочу задать вопрос, на который можно ответить только через опыт.

Я создаю базу данных SQL (финансы) - она ​​использует структуру сущностей.

База данных может быть разбита на две отдельные части:

  1. (заявитель) - личные данные, адрес, контактные данные и поданные заявки;
  2. (обработка) - кредиторы, время, затраченное на процесс, уплаченные комиссии и т. д.

Обе части могут быть связаны через ApplicationId, который также используется в качестве TransactionId в # 2.

Однако две части служат двум совершенно различным целям:

Часть 1 - запись заявления клиента (вероятно, будет храниться не менее 6 лет) и использоваться для обслуживания клиента;

Часть 2 - внутренняя статистика / анализ (вероятно, будет храниться гораздо дольше и подвергаться большим изменениям со временем).

Первой мыслью было создать единую базу данных (связанную через ApplicationId), но теперь я не уверен, что это правильный подход. Запросы, выполненные для каждой части, вряд ли будут пересекаться, и в редких случаях потребуется несколько поисков вместо одного.

Имея это в виду, будет ли более разумный долгосрочный подход разделить его на две части - или две модели?

Это вопрос практичности, а не больших размеров базы данных или сложности модели.

Любой совет приветствуется.

1 Ответ

0 голосов
/ 15 мая 2018

Я обычно предпочитаю одну базу данных, потому что, как вы сказали, данные будут ссылочными на остальные части.Если ваши аналитические данные начинают становиться слишком большими, вы можете перенести их в базу Olap, но вы просто указываете приложение, поэтому я не понимаю, какую выгоду вы получите от двух баз данных.Если вы хотите отделиться, то с точки организации вы всегда можете поставить различные схемы ... partOne.clients и partTwo.Data

...