Анализ базы данных

Службы Microsoft SQL Server Notification Services создают базы данных при развертывании экземпляра служб Notification Services. Нужно только определить свойства базы данных в конфигурации экземпляра и в определении приложения. Однако для оптимальной производительности необходимо правильно настроить компонент Database Engine. При настройке компонента Database Engine следуйте следующим правилам.

Рекомендации по настройке базы данных

Для обеспечения оптимальной производительности, безопасности и возможности восстановления предоставлены следующие рекомендации для баз данных служб Notification Services.

Файлы журнала

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

tempdb

Службы Notification Services активно используют базу данных tempdb. Например, при каждом совпадении событий с подписками SQL Server создает временные таблицы. База данных tempdb является одной из ключевых и активно используется, поэтому важно свести к минимуму изменение ее размера, задав правильный начальный размер этой базы данных, и устранить конфликты ресурсов, разместив ее на отдельном физическом диске.

При каждом запуске SQL Server база данных tempdb создается повторно с заданным начальным размером. Если начальный размер базы данных tempdb слишком мал и задан параметр автоматического увеличения, то этот процесс использует больше системных ресурсов в сравнении с обычной работой базы данных, а это может значительно повлиять на производительность системы. Чтобы избежать такой перегрузки, необходимо увеличить начальный размер базы данных tempdb и увеличить процент автоматического увеличения.

Дополнительные сведения см. в разделе Системные базы данных.

Индексы

Для оптимальной производительности служб Notification Services большую роль играют индексы. Во-первых, индексы могут значительно улучшить производительность соединений. Во-вторых, при соответствии подписки с событием данные для создания фактического уведомления с инструкциями по доставке извлекаются из других таблиц. Индексы позволяют SQL Server быстрее извлекать данные.

Когда создаются базы данных служб Notification Services, в ADF следует определить индексы для большинства таблиц. Однако дополнительные индексы могут улучшить производительность запросов.

Для определения дополнительных индексов можно проверить код на языке Transact-SQL, определенный в ADF, и создать пользовательские индексы или использовать помощника по настройке ядра СУБД SQL Server.

Дополнительные сведения см. в разделе Проектирование индексов.

Модель восстановления базы данных

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

Чтобы журнал транзакций не переполнился, регулярно и часто выполняйте резервное копирование файлов баз данных и файлов журнала. Дополнительные сведения о резервном копировании баз данных см. в разделе Резервное копирование баз данных и рабочих файлов служб Notification Services и Резервное копирование и восстановление баз данных в SQL Server.

Кроме того, можно контролировать файлы баз данных и журнала транзакций с помощью системного монитора, который входит в средство «Производительность» панели управления Microsoft Windows. Например, объект производительности SQL Server: Databases содержит счетчик производительности Процент использования журнала, предназначенный для контроля заполнения журнала транзакций. Дополнительные сведения об объектах производительности SQL Server см. в разделе Использование объектов SQL Server.

Пользовательские соединения

Соединения являются критическим ресурсом. Данные для экземпляров служб Notification Services и приложений хранятся в базах данных SQL Server, и при обработке событий приложения запрашивают и извлекают данные с SQL Server. При отсутствии достаточного количества доступных соединений может произойти ошибка.

Можно оставить значение Максимальное количество одновременных соединений равным нулю, то есть количество соединений ограничивается только возможностями SQL Server. Дополнительные сведения см. в разделе Параметр user connections.

Проверка подлинности базы данных

Службы Notification Services поддерживают проверку подлинности Windows, а также проверку подлинности SQL Server. Включать проверку подлинности SQL Server необязательно. Для большинства приложений проверка подлинности Windows обладает определенными преимуществами по сравнению с проверкой подлинности SQL Server, например имеется безопасная проверка подлинности, шифрование паролей, аудит, истечение срока паролей, минимальная длина пароля и блокировка учетной записи после нескольких неудачных запросов на вход в систему.

По этим причинам настоятельно рекомендуется использовать проверку подлинности Windows. Дополнительные сведения о безопасной конфигурации см. в разделе Обеспечение безопасности служб Notification Services.

Если используется проверка подлинности SQL Server, то необходимо указать имя пользователя и пароль SQL Server, которые будут использоваться ядром служб Notification Services для подключения к ядру СУБД. Дополнительные сведения см. в разделе Настройка разрешений SQL Server для экземпляра служб Notification Services.

См. также

Основные понятия

Планирование ресурсов базы данных
Определение базы данных приложений
Определение базы данных экземпляра
Проектирование системы для служб Notification Services

Справка и поддержка

Получение помощи по SQL Server 2005