Мы разрабатываем новую версию нашего существующего продукта по новой схеме. Его внутреннее веб-приложение с возможно 100 одновременными пользователями (макс.) Это будет работать в базе данных SQL Server 2008.Руководство по архитектуре SQL Server
В последнее время обсуждается вопрос о том, следует ли иметь единую базу данных для разделения базы данных по соображениям производительности в двух отдельных базах данных.
База данных может расти от 50 до 100 ГБ в течение 5 лет.
Мы разработчики, а не администраторы баз данных, поэтому было бы неплохо получить общее руководство.
[Я знаю ответ не прост, как это зависит от схемы, архивирования политики, объем данных и т.п.]
Вариант 1 Single Main Database [Это мой предпочтительный вариант].
План состоит в том, чтобы иметь все таблицы в одной базе данных и, возможно, использовать группы файлов и разбиение на разделы для разделения данных, если это необходимо на нескольких дисках. Использовать схему, если необходимо. Это должно касаться проблем с производительностью. Одним из комментариев было то, что экземпляр одного сервера все еще обрабатывал эти данные, поэтому все еще была бы шея обрабатывающей бутылки.
Для отчетности у нас может быть отдельная БД отчетов, но это все еще обсуждается.
Вариант 2 Разделения базы данных на 2 отдельные базы данных
DB1 - клиенты, счета, клиентские ресурсы и т.д.
DB2 - Это будет содержать основную часть данных [т.е. Данные отслеживания транспортных средств, таблицы финансовых транзакций и т. Д.].
Эти таблицы обычно содержат много данных. [Он может находиться на отдельном сервере, если это необходимо]
Этот план предполагает сохранение основных данных в меньшей базе данных [DB1] и сохранение данных типа транзакции [только] только для чтения в отдельном БД [DB2]. Пользовательский интерфейс будет в основном считываться с DB1 и, следовательно, быть более отзывчивым. [Я понимаю, что эта опция делает его более трудным для ссылочной целостности, чтобы быть приведено в исполнение.]
Очки для рассмотрения Как мы находимся на стадии проектирования, мы можем по крайней мере, сделать правильное использование индексов для решения проблем производительности Так вот почему вариант 1 для меня привлекателен и его более стандартный подход. Для обоих вариантов мы рассматриваем возможность создания базы данных архивации.
Извинения за длительный вопрос. Итак, вопрос: 1 DB или 2?
Спасибо заранее,
Лиам
Спасибо всем за ваши исчерпывающие ответы. Его действительно оценили. В результате у нас есть еще несколько факторов, которые следует учитывать, прежде всего, по используемому оборудованию и т. Д. Мое общее мнение заключается в том, чтобы придерживаться стандартного подхода ко всем таблицам на одном БД. – Liam