Уважаемые, подскажите, есть ли какие-то минусы в hash group относительно stream aggregate? Мне план строит со вторым, но указав в хинтах хэш групп получаю лучшую производительность на одном запросе. Может быть большее использование памяти или ещё что-то?
Здравствуйте! Есть таблица кодвендор>кодстрим>кодкоманда Как превратить ее в иерархическую таблицу Кодродитель>код>название ? Создавать таблицы в базе не могу
подозреваю, что границу применения хэш групп стоило бы понизить в оптимизаторе, до пары сотен строк. а то у меня на несколько тысяч получается stream aggregate + sort, что в итоге получается медленнее
У вас просто стоимость плана с сортировкой оказалась ниже чем у плана с хешированием. Скорее всего из-за неверной оценки кардинальности. Нужно было для начала обновить статистики с fullscan.
статистика обновляется, суть от этого не меняется. оценка количества строк где-то ошибочная, где-то совпадает, но всё равно с указанием хэш групп получается быстрее, чем с планом от оптимизатора через сорт и stream aggregate
привет! select top(1) id from table where status = 3
правильно ли я понимаю, что результат от запуска к запуску может отличаться, даже если записи с status = 3 и их кол-во будут неизменны? результат выполнения здесь зависит от физического расположения данных на страницах памяти и от расположения самих страниц памяти на диске?
если данные в таблице вообще не трогать (не писать, не удалять, не изменять), индекс кластерный не перестраивать, то скорее всего результат будет одинаковый?