10.03.2023, 14:46 | #1 |
Участник
|
LCS Environment monitoring SQL Insights
Как в "LCS Environment monitoring SQL Insights" увидеть историю Expensive Queries, как в Performance Dashboard?
__________________
Быть, а не казаться! |
|
10.03.2023, 18:18 | #2 |
Moderator
|
Единственный известный мне способ - это скопировать данные из Prod в UAT/TEST и сразу после копирования врубить в БД режим Read_only
ALTER DATABASE <myAxDB> SET QUERY_STORE (OPERATION_MODE = READ_ONLY); После этого можно подключиться к БД в Tier2 instance и погонять запросы по Query Store и посмотреть чего из запросов сильнее всего систему грузило. Как отправную точку можно использовать запросы из статьи. Кроме того, в стандарте SQL Management Studio есть несколько отчетов/диаграм по query store, которые тоже можно использовать. Два примечания: 1. При переливке данных из Tier2 в Tier1 query store не копируется, так что анализировать его надо в вашем Tier2 2. Время от времени режим Read_Only у query store скидывается в Read Write. (Я пока так и не понял как и когда, но иногда это случается). Если ваш Sandbox/UAT не очень активно используется, свежая статистика (уже в Sandbox собранная) особо сильно картину не подпортит. Но если вы Sandbox активно гоняете, надо будет все время следить, не свалился ли у вас режим обратно в Read_Write и возвращать его на место. |
|
10.03.2023, 19:26 | #3 |
Участник
|
К своему удивлению обнаружил здесь, что List most expensive queries числится в списке Removed features по причине This query may not show the most concerning queries, just the most expensive query at the period of time.
__________________
Быть, а не казаться! |
|
13.03.2023, 17:07 | #4 |
Участник
|
И вообще проблемы с производительностью мониторятся и автоматически исправляются платформой. Вот несколько промеров:
1. The platform will monitor and automatically employ self-healing mechanisms to reduce the resource consumption of the most expensive queries; 2. The platform will automatically tune and optimize individual queries, removing the need for manual interventio; 3. The system automatically tunes and manages indexes; 4. The platform optimizes workloads and environment to reduce the number of scenarios leading to unresolved process blocking.
__________________
Быть, а не казаться! |
|
15.03.2023, 00:21 | #5 |
Участник
|
Цитата:
Цитата:
|
|
15.03.2023, 01:54 | #6 |
Участник
|
А если просто проверить? Взять базу из прода, перенести в тир 2 и посмотреть, там их будет полно, они конечно не самые лучшие, к примеру индекс по всем полям на inventTrans
|
|
15.03.2023, 10:08 | #7 |
Moderator
|
Цитата:
Есть, правда, ощущение, что анализа "выигрыш по поиску/проигрыш по обновлению" они не выполняют и строят вообще все индексы по хинтам из top N запросов из query store. |
|
15.03.2023, 12:19 | #8 |
Участник
|
|
|
15.03.2023, 12:48 | #9 |
Moderator
|
Нет. Более того - до недавнего времени этот построитель индексов временами просыпался и ломал длинные транзакции. Скажем - загружаешь ты какой-нибудь data entity в течениии 2-3-4 часов, в конце концов включается этот построитель индексов и чего-то там перестраивает. А у тебя импорт отваливается сообщением "schema changed" и тебе надо все перезапускать с ноля. При этом, в каких-то случаях импорт вообще никогда не мог закончится, потому что построитель индексов просыпался каждые 3 или 4 часа, обнаруживал что у тебя индекс по загружемой таблице фрагментирован, запускал переиндексацию, импорт ломался и так далее до бесконечности. Вроде бы в последних версиях мозги этому построителю индексов немного вправили, но подробностей не знаю.
|
|
|
За это сообщение автора поблагодарили: Logger (3). |
15.03.2023, 14:11 | #10 |
Участник
|
Похоже, что Microsoft убрал большинство запросов из LCS > SQL Insights потому что партнеры не могли их интерпретировать для выполнения оптимизации и много жаловались. Microsoft "решил" проблему "автоматизировав" оптимизацию.
__________________
Быть, а не казаться! |
|
15.03.2023, 14:26 | #11 |
Moderator
|
Мне кажется, эти запросы убрали в момент перехода на "Spartan" (то есть - пул Azure SQL Servers, между которыми наша БД может переезжать при повышении/понижении нагрузки). Хотя, возможно, это еще раньше случилось, когда сам D365FO перевели на технологию Azure Service Fabric (то есть - отвязали от конкретных виртуалок и отдали на откуп ПО управления контейнерами, который эти контейнеры создавать и убивать на разных физических машинах в сети может). В общем - процентов на 99 уверен что убрали эту функцию не потому что партнеры тупили, а потому что на новой технологической платформе их было тяжело реализовать.
|
|
|
|