влияние на сгенерированный CRM SQL (советы оптимизатора и т. д.) - PullRequest
0 голосов
/ 02 августа 2011

У нас есть клиент, который использует CRM для очень большой базы данных. Они испытывают замедление на готовых действиях, и мы наблюдаем заблокированные SPID во время этих замедлений. Мы захватили SQL, сгенерированный CRM, и проанализировали его администратор базы данных.

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

Так вот мой вопрос ...

Есть ли способ извлечения XML-кода повлиять на подсказки структуры / оптимизатора для SQL, которые в конечном итоге генерируются из CRM? Или, если наш администратор БД предложит внести изменения в SQL, чтобы ускорить его, мы должны обратиться к Microsoft за решением?

Ответы [ 2 ]

2 голосов
/ 02 августа 2011

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

Проверьте в помощнике по настройке ядра СУБД (DTA) - он может помочь вам с этим типом оптимизации, либо на основе одного запроса, либо на основе анализа рабочей нагрузки.

1 голос
/ 02 августа 2011

Как указано mwigdahl , есть и другие возможности для настройки производительности базы данных, помимо влияния на сгенерированные операторы SQL.Это также единственные поддерживаемые изменения, которые вы можете сделать самостоятельно.

Microsoft считает, что изменения в базе данных не поддерживаются.См. Поддерживаемые расширения для Microsoft Dynamics CRM :

Изменения в физической схеме базы данных, , кроме добавления или обновления индексов ,Это включает в себя любые действия, выполняемые с базой данных без прохождения настройки системы.Изменение таблиц, хранимых процедур или представлений в базе данных не поддерживается.Добавление таблиц, хранимых процедур или представлений в базу данных также не поддерживается из-за проблем ссылочной целостности или обновления. Добавление индексов поддерживается в соответствии с рекомендациями, изложенными в « Руководство по внедрению Microsoft Dynamics CRM 2011 * » .Это относится ко всем базам данных Microsoft Dynamics CRM и локальной базе данных Microsoft Dynamics CRM для Microsoft Office Outlook.

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

...