Мне нужно создать дизайн, соответствующий следующим требованиям для системы купонов
Мне нужно использовать SQL Server 2008r2 64bit. Будет ли достаточно 16 ГБ и 8 ЦП? Как вы думаете, мне нужно также использовать разделение таблиц?
Спасибо
Роб.
Отвечу на аппаратную часть:
В основном SQL Server пытается полностью сохранить базы данных в ОЗУ и часто опрашивает систему, чтобы узнать, доступна ли ОЗУ, и только начинает заменять данные (не совсем верно, редко используемые таблицы также могут быть заменены на диск AFAIK) при запуске закончилась свободная память. Если вы можете приблизительно оценить размер своей базы данных, постарайтесь получить как можно больше ОЗУ, чтобы ваша база данных полностью поместилась в ОЗУ, а затем еще немного. Если это невозможно (или лучше: сделайте это также), попробуйте получить быструю подсистему ввода-вывода и распределить файлы db по нескольким дискам, как было предложено.
Будет ли достаточно 16 ГБ и 8 ЦП?
Да, но это все равно, что калибровать машину по модели магнитолы.
Гораздо более важным фактором для транзакционных баз данных всегда была структура диска и скорость. Например, вы совершаете 3500 изменяющихся транзакций в секунду (записи через погашения). Диск 15k SAS хорош только для 450 операций ввода-вывода в секунду. Банк - вот проблема. Ваш процессор даже не потеет при этом, а ОЗУ даже не будет в игре.
Итак, гораздо важнее очень быстрая подсистема ввода-вывода.