Внутри оптимизатора запросов. Query Store. часть 1
Многие из нас, пытаясь понять, почему запрос вдруг стал работать медленно, наверняка хотели бы повернуть время вспять и получить план этого запроса, когда он выполнялся быстро. Понять причину замедления гораздо проще, имея на руках два плана запроса: «быстрый» и «медленный». Было бы еще лучше, если бы можно было указать оптимизатору, использовать «быстрый» план, пока мы ищем причину в «медленном». Хорошие новости состоят в том, что SQLServer 2016 и механизм QueryStoreпозволяют решать и первую, и вторую задачу. В докладе будет сделан обзор механизма QueryStore в структуре SQLServer и приведены несколько сценариев его использования для решения задач производительности. Также доклад коснется некоторых внутренних особенностей архитектуры и реализации QueryStore, чтобы лучше понять, как работает этот механизм, и какое место он занимает в общем процессе оптимизации.