Прапори трасування, рекомендовані Майкрософт для еталонного тесту продуктивності TPC-C, Інші СУБД, Бази даних, статті

Найбільш часто використовуваним способом зміни поведінки SQL Server є виставляння прапорів трасування. Наступні прапори трасування підтримуються в даний час Майкрософт для публікації результатів тесів продуктивності, таких як TPC-C.

652: Disable page pre-fetching
Прапор трасування 652 відключає попередню вибірку сторінок під час повних переглядів. Якщо прапор трасування 652 включається при запуску SQL Server, він отримує глобальний контекст. Якщо він зводиться в користувальницькому сеансі, то контекст обмежується сеансом.

661: Disable the ghost record removal process
Прапор трасування 661 відключає системний процес видалення фантомних записів. Фантомні записи з’являються в результаті виконання операцій видалення, після яких вилучені записи можуть залишатися у файлі як фантомні записи. Через деякий час, віддалені записи вичищаються процесом видалення фантомних записів. Коли цей процес відключається, видалені записи не вичищаються. Тому, місце, яке займають видалені записи, не вивільняється. Це впливає на займане даними місце і на продуктивність операцій перегляду.
Прапор трасування 661 завжди діє в контексті всього сервера, тобто має глобальний контекст. Ви можете включати прапор трасування 661 при запуску сервера або в призначеному для користувача сеансі.

834: Use Microsoft Windows large-page allocations for the buffer pool
Прапор трасування 834 застосовується в SQL Server 2005 для включення механізму розподілу буферному пулу великих сторінки пам’яті, якими вміють оперувати останні версії Microsoft Windows. У різних апаратних платформ може бути різний розмір сторінок, він може змінюватися від 2 до 16 Мбайт. Великі сторінки розподіляються при запуску і зберігаються протягом вей життя процесу. Прапор трасування 834 підвищує продуктивність, збільшуючи ефективність TLB буфера процесорів.
Прапор трасування 834 застосовується лише до 64-бітовим версіями SQL Server 2005. Включити прапор трасування 834 може тільки та обліковий запис, для якої дозволена локальна політика “Lock pages in memory”. Включати прапор трасування 834 можна тільки при запуску SQL Server.
Прапор трасування 834 може перешкоджати запуску сервера, якщо пам’ять сильно фрагментована і це заважає розподілу великих сторінок. Тому, прапор трасування 834 безпечніше використовувати на серверах, які обслуговують тільки SQL Server 2005.
Для отримання більш докладної інформації про підтримку великих сторінок Windows, перейдіть на наступну сторінку сайту Microsoft Developer Network (MSDN): Large-Page Support.

836: Use the max server memory option for the buffer pool
Прапор трасування 836 потрібен для того, щоб розмір буферного пулу при запуску SQL Server 2005 встановлювався на основі значення параметра глобальної конфігурації “max server memory”, замість того, щоб використовувати в якості орієнтира розмір фізичної пам’яті. Ви можете використовувати прапор трасування 836, щоб зменшити число описувачів буфера, які розподіляються при запуску служби в 32-розрядному режимі Address Windowing Extensions (AWE). Це дозволяє надати в пам’яті більше місця для запозичених з буферного пула сторінок.
Прапор трасування 836 застосовується тільки з 32-розрядним версіями SQL Server 2005, яким дозволено розподіл сторінок через вікно AWE. Включити прапор трасування 836 можна тільки при запуску.

1228 і 1229 – Enable lock partitioning and disable lock partitioning
За замовчуванням, секціонування блокувань стає можливим, коли сервер має 16 або більше процесорів. Інакше, секціонування блокувань заблоковано. Прапор трасування 1228 включає секціонування блокувань для двопроцесорних і більше систем. Для відключення секціонування блокувань використовується прапор трасування 1229.
Секціонування блокувань корисно на мультипроцесорних серверах, де для деяких таблиць дуже високі норми блокувань. Включити прапори трасування 1228 і 1229 можна тільки при запуску.

2301: Enable advanced decision support optimizations
Прапор трасування 2301 включає додаткову оптимізацію, яка покращує роботу запитів систем підтримки прийняття рішень, характерних великим об’ємом уражених запитом даних.
Коли прапор трасування 2301 включається при запуску сервера, він отримує глобальний контекст, інакше, він буде мати контекст сеансу.

Прапори трасування, які відключають деякі кільцеві буфери

Кільцевій буфер – внутрішній діагностичний механізм SQL Server 2005, який може використовуватися для збору додаткової інформації про сервер. Як правило, цю інформацію використовують для дослідження проблем в роботі сервера. Переглянути накопичується кільцевими буферами інформацію можна за допомогою динамічного адміністративного подання sys.dm_os_process_memory.
Відключення кільцевих буферів в цілому призводить до підвищення продуктивності. Однак, відключення кільцевих буферів виключає можливість використання діагностичної інформації для передачі в службу підтримки Microsoft і може перешкодити успішному пошуку вирішення можливих проблем.
Представлені нижче прапори трасування відключають різні кільцеві буфери.

8011: Disable the ring buffer for Resource Monitor
Прапор трасування 8011 відключає збір додаткової діагностичної інформації, що відноситься до Resource Monitor. Інформація цього кільцевого буфера можете використовувати для діагностики стану вичерпання пам’яті. Прапор трасування 8011 завжди застосовується до всього серверу і має глобальний контекст. Ви можете включити прапор 8011 при запуску або в сеансі користувача.

8012: Disable the ring buffer for schedulers
Прапор трасування 8012 відключає кільцевої буфер планувальників. Інформація цього кільцевого буфера можете використовувати для діагностики проблем планування потоків процесорам. Наприклад, інформацію цього кільцевого буфера можна використовувати для виявлення проблем, що виявляються як втрата відгуку від SQL Server 2005. Включати прапор трасування 8012 можна тільки при запуску сервера.

8018 and 8019: Disable the exception ring buffer and disable stack collection for the exception ring buffer Цей кільцевої буфер зберігає дані про останні 256 винятки, які були зафіксовані для вузла. Кожен запис містить трохи інформації про помилку і трасування стека. Запис додається кільцевим буфером в момент спрацьовування винятку.
Прапор трасування 8018 відключає створення кільцевого буфера, і після цього інформація про виключення не зберігається. Прапор трасування 8019 відключає збір трасувань стека, коли фіксується інформація про виключення. Прапор 8019 не можна використовувати без попереднього включення прапора трасування 8018. Відключення цього кільцевого буфера ускладнює діагностику пов’язаних з проблемами винятків, тобто з внутрішніми помилками сервера. Включити прапори трасування 8018 і 8019 можна тільки при запуску сервера.

8020: Disable working set monitoring
SQL Server 2005 використовує інформацію про розмір робочого множини, коли виникає необхідність інтерпретувати глобальні сигнали операційної системи щодо стану оперативної пам’яті. Прапор трасування 8020 виключає з цієї інтерпретації інформацію про розмір робочого множини. Цей прапор трасування застосовується тільки до звичайних сторінок пам’яті. Наприклад, цей прапор трасування не відноситься до заблокованим сторінкам або великим сторінкам.
Прапор трасування 8020 може бути корисний, коли операційна система постійно урізує робоче безліч обслуговуючого SQL Server 2005 сервера, і коли сервер нездатний вивільняти пам’ять через велику робочого навантаження. В такому випадку, спроби моніторингу приведуть до марного витрачання циклів процесора. Прапор трасування 8020 потрібно використовувати з обережністю і тільки після глибокого тестування на реальних робочих навантаженнях. Крім того, використовувати прапор трасування 8020 потрібно після ретельного вибору значення глобального параметра “max server memory”. Недоречне використання цього прапора може привести до сильних перегортання.
Включити прапор трасування 8020 можна тільки при запуску сервера.

8744: Disable pre-fetching for ranges
Прапор трасування 8744 відключає попередню вибірку для таких операторів, як “Nested Loops”. Недоречне використання цього прапора може спровокувати додаткові фізичні читання, при реалізації плану з оператором “Nested Loops”.
Коли прапор трасування 8744 включений при запуску сервер, він отримує глобальний контекст. Коли він включений в сеансі користувача, контекст обмежується сеансом.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*