Что лучше: одна большая база данных SQL, несколько небольших или несколько небольших таблиц? - PullRequest
0 голосов
/ 31 января 2019

Я собираюсь перестроить онлайн-сервис, который использует единую базу данных SQL Server 2016 для управления несколькими сотнями клубов, насчитывающих около 40 тысяч участников.На данный момент все работает хорошо и быстро.Однако в клубах и членах система может в четыре раза увеличиться.Это будет означать таблицу участников из 16 тысяч участников и другие таблицы с гораздо большим количеством записей, чем участниками (т.е. записи о посещаемости и т. Д.).Будет ли эффективнее создать единую базу данных для каждого клуба (потенциально около 1200 баз данных) или сохранить одну базу данных для всех?Или создание отдельных таблиц для каждого клуба будет более эффективным?(Взаимодействие данных между клубами не обязательно)

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Администрирование 1200 баз данных было бы кошмаром для администрирования.

Если данные для клубов похожи, вы можете иметь только одну таблицу для всех клубов.

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

Кроме того, для других целей отчетности было бы удобно иметь хранимые процедуры.Один на отчет с именем группы в качестве параметра.Например:

EXEC sp_Club_Attendance @ClubName = 'ABC Heroes';
EXEC sp_Club_Annual_Budget @ClubName = 'XYZ Pilots';
0 голосов
/ 31 января 2019

Возможно, есть некоторые администраторы баз данных, которые имеют твердые мнения по этому поводу (я не администратор баз данных), но я лично не хотел бы управлять 1200 или более базами данных.В зависимости от размера строк в таблице Members, вы можете легко разместить в ней миллионы или миллиарды записей.Размер не должен быть проблемой в этом отношении.Пока база данных должным образом нормализована, для меня имеет смысл хранить ее как одну базу данных.Есть множество факторов, которые следует учитывать при принятии такого решения.Насколько эффективно было бы управлять резервным копированием / восстановлением или аварийным восстановлением 1200 баз данных?Насколько эффективно было бы создать 1200 баз данных?Насколько легко было бы управлять 1200 разнородными базами данных, которые все (или почти точно) совпадают со схемой, с той лишь разницей, что данные в них?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...