В одном из подкастов stackoverflow (# 18, я думаю) Джефф и Джоэл говорили о нескольких виртуальных базах данных. Джоэл упомянул, что "FogBugz on Demand" использовал базу данных для каждой архитектуры клиента, и мне было интересно, есть ли точка, за которой вам нужно будет иметь несколько серверов баз данных для распределения нагрузки?
Практическое ограничение количества баз данных в SQL Server?
Ответ 1
Технически ограничение баз данных на один экземпляр SQL Server составляет 32 767, но я сомневаюсь, что вы могли бы использовать экземпляр SQL Server с более чем 2000 базами данных, в этот момент сервер, вероятно, не будет реагировать.
У вас может быть около 30 000 баз данных, если они все были автоматически закрыты и не используются. вы можете найти дополнительную информацию о ограничениях емкости здесь:
Ответ 2
Джоэл рассказал об этом в другом месте (извините, без ссылки) и сказал, что перед переходом на MS SQL 2005 консоли управления (и бэкэнд) имели проблемы с подключением более 1000 или 2000 баз данных. Кажется, что 2005 год и, вероятно, 2008 год снова улучшились по этим цифрам.
Как и во всех вопросах производительности, всегда зависит ваше фактическое оборудование и рабочая нагрузка, на которые может однозначно отвечать локальный бенчмаркинг/мониторинг системы.
Ответ 3
Я думаю, в основном это зависит от ограничений памяти машины. SQL Server любит хранить как можно больше кеширования в памяти, и по мере добавления баз данных вы уменьшаете объем доступной памяти.
Ответ 4
Кроме того, вы можете рассмотреть количество подключений к SQL Server. После 500-1000 он становится очень засоренным и медленным. Это тоже ограничение.
Ответ 5
Я думаю, что это больше вопрос загрузки базы данных. Как было сказано выше, если нет нагрузки, то 32 767. При высокой нагрузке он падает, в конечном итоге до 1 или менее 1.
Ответ 6
Помните, что восстановление после сбоя требует времени. и время запуска экземпляра, чтобы пройти через каждую базу данных, плюс, если все они находятся на одном и том же наборе дисков, который много восстанавливает, если диск когда-либо умирает.