Имеется возможность настроить параметры базы данных Microsoft Dynamics AX для повышения производительности. Прежде чем изменять настройки, выполните трассировку использования базы данных Microsoft Dynamics AX, чтобы убедиться в том, что у вас имеется полное понимание производительности при текущих настройках. Для трассировки производительности базы данных Microsoft Dynamics AX используйте:

  • трассировку служебной программы настройки сервера Microsoft Dynamics AX. Дополнительные сведения см. в разделе Настройка параметров трассировки.

  • Windows Performance Monitor с использованием счетчиков объектов Microsoft Dynamics AX.

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

Изменение режима конкуренции

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

Настройка подключений

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

Неполадка

Настройки, которые необходимо повторить

Медленно возвращаются результаты для общих запросов.

Увеличьте значение Максимальный размер буфера.

Медленно возвращаются результаты для специальных запросов.

Проверьте наличие соответствующих индексов. Самые последние сведения по индексации см. в Microsoft Dynamics AX Online.

Частые сбои проводок.

Увеличьте значение Интервал повтора проводок.

Медленно строятся сетки данных для часто используемых таблиц.

Увеличьте значение Будущий выбор массива.

Настройка запросов

Если запросы в системе выполняются медленно, можно изменить настройки для литеральных значений, строковых функций или советов. В Microsoft Dynamics AX литеральные значения более не используются по умолчанию в запросах отчетов и форм или в сложных запросах, требующих соединения.

Корректировка использования литеральных значений

Microsoft Dynamics AX может передавать в запросы либо параметры (местозаполнители), либо литеральные значения (фактические значения).

  • Параметры позволяют Microsoft Dynamics AX и серверу баз данных повторно использовать запрос, когда значения поиска меняются. Они являются предпочтительными для очень часто используемых запросов.

  • Литеральные значения позволяют серверу баз данных оптимизировать запрос для конкретного информационного фрагмента. Таким образом создается оптимальный запрос для этого информационного фрагмента, но сервер баз данных должен выполнять оптимизацию для каждого выполняемого запроса. Литеральные значения могут использоваться для долго выполняемых запросов, например для сложных запросах, требующих соединения (complex joins).

Разработчик может переопределить стандартное использование литеральных значений, указав параметры в их коде. Также использование литеральных значений может переопределить администратор в служебной программе настройки сервера.

Неполадка

Настройки, которые необходимо повторить

Ожидаемый эффект

Долго выполняющиеся запросы выполняются медленно.

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

Установите флажок Использовать литеральные значения в запросах, требующих соединения, из форм и отчетов.

Установите флажок Использовать литеральные значения в сложных запросах, требующих соединения, из X++.

Долго выполняющиеся запросы передают в базу данных литеральные значения. Время обработки запросов должно сократиться.

Корректировка использования автоматически созданных строковых функций

Microsoft Dynamics AX автоматически встраивает некоторые строковые функции в операторы SELECT. Строковые функции включаются для поддержки:

  • обработки вариантов одного текста, набранного символами в верхнем и в нижнем регистре для версий Oracle;

  • выравнивания по левому или по правому краю.

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

Корректировка использования советов

В Microsoft Dynamics AX можно разрешить разработчикам переопределять индекс, выбранный средством оптимизации. В большинстве случаев разрешение средству оптимизации выбирать индекс для запроса приводит к повышению производительности.

Если запросы содержат советы INDEXи выполняются медленнее, чем ожидалось, снимите флажок Разрешить советы INDEX в запросах.

Изменения в использовании советов

После обновления Microsoft Dynamics AX запросы в системе могут содержать устаревшие советы Microsoft SQL Server. Команды настройки будут более недоступны для глобального включения или отключения многих советов из предыдущих версий. Если советы явно указаны в операторе X++, они добавляются в создаваемый запрос сервера SQL. В противном случае они не добавляются.

Также были сделаны следующие изменения:

  • Советы OPTION (FAST), LOOPи FORCE ORDERне применяются по умолчанию, но применяются, если указаны явно в X++.

  • Совет FIRSTONLYв X++ переведен в добавление оператора TOP 1к запросу сервера SQL.

  • Курсоры FASTFORWARDиспользуются для всех пользовательских запросов, если только курсор не помечен как FOR UPDATE.

  • Советы FOR UPDATE, NOLOCKи READPASTдобавляются к операторам в зависимости от типа курсора, созданного запросом X++. Интерфейс для изменения этих советов отсутствует.

См. также