LuckyLindy - я бы посоветовал вам остановиться на секунду и убедиться, что вам не нужен агент SQL. Вы написали:
Мы собираемся развернуть двойное веб / внутреннее транзакционное приложение, где каждый клиент имеет свою собственную базу данных. Каждая база данных очень мала - менее 50 МБ каждая, поэтому нам было интересно, имеет ли смысл использовать SQL Express 2008 вместо полноценного SQL Server.
Какой у вас план по резервному копированию? Вам не нужно использовать агент SQL, но он, несомненно, облегчает жизнь администратора БД. Вы можете написать сценарии T-SQL / SMO / PowerShell / любой другой, которые выполняют резервное копирование, а затем выполняются через sqlcmd или PowerShell с помощью запланированной задачи.
Каков ваш план обслуживания базы данных? Со временем эти базы данных необходимо будет дефрагментировать и проверить на согласованность. В Standard Edition есть все возможности, чтобы упростить эту задачу, тогда как в Express вам придется работать (опять же со сценариями и запланированными задачами).
Как вы будете уведомлены о проблемах на сервере? Агент помогает здесь с оповещениями, чтобы уведомить вас о заполнении журнала, заполнении диска и т. Д.
Это критически важные задачи типа SQL Server DBA. Одно дело запустить Express для внутреннего приложения, но как только вы начинаете говорить нам, что вы размещаете их для клиентов, я начинаю волноваться :)
Вторая часть этого вопроса спрашивает вас, сколько клиентов вы планируете поддержать в этом - как при запуске, так и через год? Если вы скажете «100 клиентов», то в Express не хватит 100 баз данных по 50 МБ - вам просто не хватит памяти. Черт возьми - в зависимости от того, сколько у вас дельты, вы можете увеличить до 15 БД, я не знаю.
У нас никогда не будет более ~ 200 одновременно работающих пользователей, и большинство операций будут более транзакционными (что, похоже, предпочтительнее для большого количества высокоскоростных дисков, чем для большой оперативной памяти / процессора, верно?)
Транзакционные операции, такие как INSERT, по-прежнему записываются в память, поэтому не ожидайте, что вам потребуется меньше поддержки памяти. Фактически, в зависимости от того, сколько INSERT вы делаете, вам может потребоваться больше памяти, чем большинству с таким количеством пользователей. Если вы загружаете много данных, которые люди на самом деле не используют, они все равно занимают память. Вы можете столкнуться с конфликтными проблемами между «данными, которые пользователи часто запрашивают» и «данными, которые пользователи загружают, которые никто не будет запрашивать некоторое время». SQL защищает нас, сохраняя данные, которые люди чаще запрашивают в памяти, но у вас все равно будет конфликт.
На данный момент, я бессвязный LOL. И 200 одновременно работающих пользователей не согласны со мной и для Express. Допустим, 64 КБ - это среднее требование к памяти подключений. Сколько подключений будут устанавливать ваши приложения? Будете ли вы использовать пул соединений?
В общем, мое внутреннее чувство после прочтения вашего описания говорит: «Нет - Express Edition просто недостаточно мощен». И я ненавижу издание Workgroup Edition - думаю, что это плохая сделка - поэтому Standard кажется мне правильным.