Назад | Перейти на главную страницу

SQL 2K5 - несколько баз данных против нескольких файлов

Наша текущая унаследованная система была построена с использованием нескольких отдельных баз данных (около десяти из них). Все они являются частью одной дискретной системы, и большое количество SP и функциональных возможностей охватывают несколько баз данных. Есть также ключевые взаимосвязи, которые охватывают (например, таблица заголовков может находиться в базе данных A с историей и т. Д. В базе данных B).

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

Мы оцениваем идею взять эти десять баз данных (всего около 30 ГБ с отдельными размерами от 100 МБ до 10 ГБ) и объединить их в единую базу данных.

В настоящее время наши базы данных распределены по нескольким шпинделям для лучшего ввода-вывода. У меня есть вопрос, есть ли потеря производительности или выгода от наличия 10 разных баз данных по сравнению с 10 разными файлами баз данных?

т.е. вместо трех баз данных (A, B и C)

Disk D:  A.mdf (1gb)
Disk E:  B.mdf (4gb)
Disk F:  C.mdf (10gb)
Disk G:  A_Log.ldf, B_Log.ldf, C_Log.ldf

иметь одну базу данных (X)

Disk D:  X1.mdf (5gb)
Disk E:  X2.mdf (5gb)
Disk F:  X3.mdf (5gb)
Disk G:  X1_log.ldf,X2_log.ldf,X3_log.ldf

Спасибо! -Боб

Если нагрузка на базы данных не является очень равномерной, вы, вероятно, увидите лучшую производительность, если используете несколько файлов в группе файлов и одну базу данных в нескольких базах данных, распределенных на разных дисках. Это связано с кодом распределения нагрузки в ms sql, который обычно работает намного лучше, чем попытки вручную выбрать диски для каждой базы данных.

Краткое введение можно найти на http://sqlblogcasts.com/blogs/tonyrogerson/archive/2006/08/17/948.aspx, но это еще не все.

Вам также следует взглянуть на SQL Server 2005/2008 - несколько файлов / файловых групп - сколько? Зачем?, в котором хорошо обсуждается использование нескольких файловых групп.

О, если все ваши файлы журналов находятся на одном диске, скорее всего, у вас возникнет узкое место ввода-вывода, если только этот диск не работает быстро, а нагрузка на запись низкая. Будьте осторожны.

В конце концов, проверьте свои очереди ввода-вывода. Если вы не застреваете в ожидании ввода-вывода, нет смысла беспокоиться о производительности вашего диска. Это изменение можно мотивировать просто потому, что дизайн базы данных намного чище.