У нас много систем с одинаковой конфигурацией
- Один сервер (виртуальный или физический)
- Запуск SQL Server (SQL) и SQL Server Analysis Server (AS)
- несколько ядер
- 16 ГБ ОЗУ
Каждую ночь SQL Server будет обрабатывать 2-3 часа, а затем - 2-3 часа обработки AS. Затем в течение дня запрашивается только AS.
Предполагая, что это выделенный сервер, и никакие другие приложения не вызывают беспокойства, и что эти два набора обработки являются полностью синхронными - нет перекрытий всегда один за другим - как я могу наилучшим образом установить ограничения памяти сервера SQL и AS.
Причина для того, чтобы спросить, состоит в том, что, если я не установлю ограничение для SQL, он захватит всю память, какую только может. Тем не менее, я понимаю, что SQL с радостью освободит эту память, если:
Это не использует его и
Другой сервис / программа запрашивает это.
Так что с логической точки зрения я считаю, что SQL может брать столько, сколько ему нужно, но я не уверен в AS » TotalMemoryLimit
. Я не уверен, что AS откажется от памяти. На самом деле, чтение большего количества приводит меня к убеждению, что неправильно принимать все это.
Означает ли это, что мне нужно установить ограничения для обоих? Меня смущает, какой должна быть лучшая практика и что мы должны измерять, учитывая, что процессы не пересекаются.
Надеюсь, это имеет смысл.