У меня есть процедура DB2, которая выполняет очень длинный запрос SELECT
(6 CTE, которые затрагивают около 5 или 6 разных таблиц, некоторые разворачиваются, мало объединений).Я вошел в систему System i Navigator
как пользователь с правами администратора.Эта учетная запись пользователя имеет право делать практически все.Моего личного имени пользователя нет.Поэтому я вхожу в систему, чтобы облегчить себе задачу.
Когда я запускаю эту процедуру (открыв окно SQL Script и введя CALL Procedure_Name('Param1');
), обработка завершается через 4 или 5 секунд.
Мой босс вошел в свой i Navigator
под своим именем пользователя.У его имени пользователя больше полномочий, чем у моего личного аккаунта, но меньше, чем у администратора, который я использую.Когда он выполняет ту же процедуру тем же способом, что и я, для его запуска требуется около 15-20 секунд.
Поэтому мой вопрос: влияет ли имя пользователя, под которым вы вошли в систему, на скорость, с которойЗапрос DB2 выполняется?Если да, что я могу изменить, чтобы запрос выполнялся с одинаковой скоростью для всех пользователей, предпочтительно со скоростью, с которой его запускает учетная запись администратора?