Книги и статьи по SQL Rambler's Top100 Switch language to: English 23 апреля 2024 г. 15:42:06


www.sql-ex.ru
Skip Navigation Links  

 

Print  Версия для печати

На главную страницу

Список контрольных вопросов производительности операционной системы

Brad M. McGehee (оригинал: Operating System Performance Checklist)
Перевод Моисеенко С.И.

Список контрольных вопросов аудита производительности


Вопросы, относящиеся к производительности операционной системы

Ваша конфигурация

Какая версия ОС работает у вас?

 

Все ли разделы диска отформатированы с помощью NTFS 5.0?

 

Выключено ли "NTFS data file encryption and compression" (шифрование и сжатие файлов данных NTFS)?

 

Установлен ли на вашем сервере последний сервис пак?

 

Использует ли ваш сервер наиболее свежие сертифицированные Майкрософт аппаратные драйверы?

 

Конфигурирован ли Windows Server как автономный сервер (stand - alone)?

 

Установлена ли настройка "Application Response" (отклик приложений) в значение “Optimize Performance” (оптимизировать производительность) для Background Services (фоновые службы)?

 

Включен ли аудит безопасности?

 

Насколько большой размер имеет свопинговый файл сервера (PAGEFILE.SYS)?

 

Выключены ли необязательные службы?

 

Отключены ли необязательные сетевые протоколы?

 

Используется ли антивирусное ПО?

 

Впишите свои результаты в вышеприведенную таблицу

Конфигурирование вашего сервера Windows является легким, но критичным

Внимание в этом разделе обращено на аудит производительности базовой операционной системы и на то, как оптимизировать ее для получения наилучшей производительности SQL Server.

Как и SQL Server, Windows Server является в основном самонастраивающимся. Но как и для SQL Server, есть вещи, которые мы можем сделать, чтобы помочь оптимизировать производительность Windows. И каждый раз, когда мы помогаем повысить производительность Windows Server, мы в то же самое время повышаем производительность SQL Server.

Выбор лучшей по производительности ОС?

Хотя SQL Server может работать под Windows NT 4.0 Server, Windows 2000 и Windows 2003, здесь мы обращаем внимание на Windows 2003, поскольку это наиболее современная операционная система. Если Вы все еще используете NT 4.0, посмотрите вот это руководство. А если вы до сих пор используете Windows 2000, тогда обратитесь к следующему источнику.

Если Вы хотите получить лучшую производительность SQL Server, то Вы остановитесь на его работе под управлением сервера Windows 2003, поскольку в нем реализованы многочисленные улучшения производительности по сравнению с Windows 2000 и NT 4.0. Вот некоторые из них:

  • Способность лучше использовать преимущество Hyper-Threading процессоров Intel.
  • Теперь поддерживается до 32 центральных процессоров и 64GB RAM на базе чипов Intel и до 64 центральных процессоров и 512GB RAM на базе чипов Itanium.
  • Существенно повысилась производительность поиска и дисковых операций ввода/вывода, в то же время снижена потребность в ресурсах ЦП, необходимых для обслуживания запросов на ввод/вывод.

Если Вы еще не перевели ваши SQL Server на Windows 2003, сделайте это как можно быстрее. Это обеспечит быстрое и легкое повышение производительности вашего SQL Server.

Отформатированы ли разделы диска с помощью NTFS 5.0?

Если у вас новый сервер и начисто установленная Windows 2000 или Windows 2003, то любые дисководы, которые были отформатированы с ее помощью, имеют формат NTFS 5.0. Однако если сервер старше, и прежде он работал под Windows NT 4.0 Server, и дисководы не были переформатированы после обновления до Windows 2000 или 2003, диски наиболее вероятно были форматированы, используя NTFS 4.0.

Хотя нет большого различия между NTFS 4.0 и 5.0, все же обновление имеет смысл. NTFS 5.0 содержит некоторые новые средства повышения производительности, которые проявляются в меньшем числе обращений к диску при поиске файлов, и, как правило, обеспечивают более быстрый режим чтения с диска. До Windows 2000 и 2003 некоторые администраторы баз данных форматировали дисководы или дисковые массивы, используемые для файлов системного журнала, как FAT, поскольку она предоставляла незначительный выигрыш в производительности по сравнению с NTFS 4.0. Для NTFS 5.0 это уже не так, поэтому все диски для всего SQL Server должны быть форматированы c использованием NTFS 5.0 для достижения лучшей производительности.

Если Вы в настоящее время имеете рабочий SQL Server, который использует разделы, отформатированные с использованием NTFS 4.0 под Windows 2000, может оказаться затруднительным преобразовать их в NTFS 5.0. Если дело обстоит именно так, я посоветовал бы вам особо не беспокоиться, поскольку прирост производительности не так велик. Однако если Вы переходите с сервера Windows NT 4.0 на Windows 2000, то Вам несомненно стоит переформатировать ваши дисководы, используя NTFS 5.0, чтобы получить тот небольшой прирост производительности, который вы сможете выжать из своего сервера.

Выключено ли "Сжатие и шифрование NTFS"?

NTFS 5.0 под Windows 2000 поддерживает как шифрование файлов, так и их сжатие, и по умолчанию эти две возможности выключены на вновь установленном сервере Windows 2000 или 2003. Хотя эти возможности при определенных обстоятельствах дают некоторое преимущество, они не дают никаких выгод для SQL Server. Фактически, использование одной или обеих возможностей может серьезно понизить производительность.

Как Вы знаете, SQL Server использует очень интенсивный ввод/вывод, и все, что увеличивает дисковый ввод/вывод, отрицательно сказывается на производительности SQL Server. Как шифрование, так и сжатие файлов значительно увеличивают дисковый ввод/вывод, поскольку используется манипуляция файлами данных «на лету». Поэтому, если шифрование или сжатие используется на файлах SQL Server, его производительность в значительной мере пострадает.

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

Установлен ли на вашем сервере последний пакет обновления (Servoce Pack)?

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

Хотя Вы можете не захотеть установить новый сервис пак сразу, как только он будет выпущен Microsoft, однако, как только он будет проверен в деле и одобрен, Вы должны установить его.

Использует ли ваш сервер наиболее свежие сертифицированные Microsoft аппаратные драйверы?

Я видел неоднократно, что устаревшие, кишащие багами аппаратные драйверы вызывают проблемы с производительностью при использовании Windows 2000 и 2003. Обычно это дисковые или сетевые драйверы.

Периодически Вам следует проверять, чтобы ваш сервер имел последние сертифицированные Microsoft драйверы аппаратных средств. Вы можете сделать это, посещая веб сайт продавца аппаратных средств, или используя службу обновления Microsoft Update. В некоторых случаях Вы можете найти новый драйвер на сайте поставщика, но который еще не сертифицирован Microsoft. Я советую вам набраться терпения (т.к. это практично) и дождаться сертифицированной Майкрософт версии. Хотя рост производительности важен, еще более важной является стабильность работы программного обеспечения.

Конфигурирован ли Windows Server как автономный сервер (stand - alone)?

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

Установлена ли настройка "Application Response" (отклик приложений) в значение “Optimize Performance” (оптимизировать производительность) для Background Services (фоновые службы)?

В Windows 2000 на вкладке “Advanced” иконки “System” в Панели управления ("Control Panel") щелкните на "Performance Options" (опции производительности). Здесь Вы можете сконфигурировать то, что называют установкой отклика приложений ("Application Response"). Вы можете выбрать оптимизацию производительности либо для приложений (Applications), либо для фоновых служб (Background Services). Для лучшей производительности SQL Server следует выбрать "Background services", поскольку это сообщит ОС, что Вы хотите отдать предпочтение приложениям, выполняющимся в фоновом режиме, типа SQL Server, относительно приложений переднего плана.

В Windows 2003 на вкладке “Advanced” иконки “System” в Панели управления ("Control Panel") щелкните на кнопке «Setting» в группе "Performance" и перейдите на вкладку "Advanced". Здесь Вы можете изменить производительность в пользу программ (“Programs”) или фоновых служб (“Background Services”). Для лучшей производительности SQL Server следует выбрать "Background services", поскольку это сообщит ОС, что Вы хотите отдать предпочтение приложениям, выполняющимся в фоновом режиме, типа SQL Server, относительно приложений переднего плана.

Кроме того, здесь Вы можете изменить распределение памяти либо в пользу программ (“Programs”), либо в пользу системного кэша (“System cache”). Для лучшей производительности SQL Server выберите "Programs". Это сообщит ОС предоставить больше памяти приложениям, в том числе и SQL Server, а не системному кэшу.

После внесения этих изменений Вам наиболее вероятно придется перезагрузить ваш сервер.

Включен ли аудит безопасности?

В Windows 2000 и 2003 имеется возможность аудита фактически любой деятельности сервера. По умолчанию, большая часть аудита безопасности отключена. Для лучшей производительности никакой дополнительный аудит не следует включать, поскольку это увеличит число операций ввода/вывода, конкурирующих с SQL Server в этом плане. Конечно, если Вы должны включить аудит (поскольку некий менеджер настаивает на этом), пробуйте ограничить его в максимально возможной степени, чтобы уменьшить его отрицательное влияние на производительность.

Насколько большой размер имеет файл подкачки сервера (PAGEFILE.SYS)?

Microsoft рекомендует, чтобы размер файла PAGEFILE.SYS устанавливался в 1.5 раза больше, чем объем физической RAM. Точное количество, в котором Вы нуждаетесь, зависит от того, какие дополнительные службы SQL могут быть запущены. Например, если Вы запускаете службу полнотекстового поиска, Microsoft рекомендует, чтобы ваш файл PAGEFILE.SYS был три раза больше физической RAM.

Рекомендации Microsoft - хорошая отправная точка, но лучший способ устанавливать размер PAGEFILE.SYS состоит в том, чтобы контролировать, какое его количество используется, с помощью счетчика «Performance Monitor Page File Object : % Usage», а затем изменить размеры PAGEFILE.SYS в соответствии с минимальным размером, немного большим, чем фактически используемое количество (на основании показаний счетчика монитора производительности), и с максимальным размером на 50 МБ большим, чем минимальный размер.

Установки PAGEFILE.SYS можно посмотреть и изменить в Windows 2000, щелкнув правой кнопкой мыши на "Мой Компьютер" (My Computer) и выбрав команду "Свойства" (Properties); затем перейти на вкладку "Advanced", щелкнуть на «Performance Options» и нажать кнопку "Change" в группе "Виртуальная память" (Virtual Memory). Если Вы измените параметры настройки виртуальной памяти, Вам придется перезагрузить ваш сервер, чтобы новые параметры настройки вступили в силу.

В Windows 2003 установки PAGEFILE.SYS можно посмотреть и изменить на вкладке "Advanced" иконки "System" в «Панели управления» (Control Panel), если щелкнуть на кнопке "Setting" в группе "Performance", после чего на вкладке "Advanced" щелкнуть на кнопке "Change" в группе "Virtual memory".

Выключены ли необязательные службы?

Для лучшей производительности выключите любые службы системы Windows 2000 или 2003, которые не являются необходимыми. Это сэкономит память и циклы центрального процессора, способствуя повышению производительности работы SQL Server.

Ниже перечислены некоторые службы операционной системы (не полный список), которые вообще считаются несущественными и могут быть выключены, если они не используются. Некоторые из этих служб могут быть не установлены на вашем сервере, а другие уже могут быть переведены в состояние "Disabled" (недоступна) или "Manual" (запускается вручную) в зависимости от того, как устанавливался и конфигурировался сервер. Часть служб, установленных в "Manual" предназначены для запуска только в случае необходимости, и затем выключают себя, когда эта необходимость отпадает.

  • Alerter
  • Application Management
  • Clipbook
  • Distributed Link Tracking Server
  • Fax Service
  • File Replication
  • FTP Service
  • Indexing Service
  • Internet Connection Sharing
  • Intersite Messaging
  • Kerberos Key Distribution Center
  • License Logging Service
  • Logical Disk Manager Administrative Service
  • Messenger
  • Microsoft Search
  • NetMeeting Remote Desktop Sharing
  • Network DDE
  • Network DDE DSDM
  • Print Spooler Service (Если вы не собираетесь печатать с этого сервера)
  • QoS RSVP
  • Remote Access Auto Connection Manager
  • Remote Procedure Call (RPC) Locator
  • Routing and Remote Access
  • RunAsService
  • Smart Card
  • Smart Card Helper
  • SMTP Service
  • Telnet
  • Utility Manager
  • Windows Installer
  • World Wide Web Service

Обычно я выключаю эти службы (если они включены), и проверяю, чтобы их режим запуска был установлен в "Manual". Конечно, если Вам необходимы какие-либо из этих служб, не следует отключать их.

Отключены ли необязательные сетевые протоколы?

Обычно единственным сетевым протоколом, в котором Вы нуждаетесь, является TCP/IP, если Вы запускаете SQL Server на нем. Удаление ненужных протоколов сети на ваших серверах SQL Server позволяет уменьшить нагрузку на сервер и снизить ненужный сетевой трафик.

Используется ли антивирусное ПО?

Антивирусное программное обеспечение, работающее в реальном времени, отнимает значительные ресурсы у SQL Server и не рекомендуется к использованию на рабочих SQL серверах, особенно на кластерах.

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

Что теперь?

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

Как только Вы закончили эту часть аудита производительности, то уже готовы к аудиту конфигурации вашего SQL Server.

На главную страницу

Print  Версия для печати


Использование любых материалов данного сайта возможно только
при условии обязательного размещения прямой ссылки на сайт
http://www.sqlbooks.ru
на каждой странице, где размещены используемые материалы.

 Начало   Статьи    Книги 
Рейтинг@Mail.ru Rambler's Top100 Alt Упражнения по SQL: обучение, тестирование, сертификация по языку SQL Copyright c 2002-2006. All rights reserved.