Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 разница в стоимости запросов  [new]
cost-вот в чем вопрос
Guest
Оценка в стоимости(cost) запросов по плану выполнения различается в 300 раз. При выполнении этих же запросов разница во времени выполнения различается в 2 раза. Какие факторы могут повлиять на существенное расхождение в стоимостной оценке в сравнении с реальным выполнением?
6 авг 12, 15:50    [12969031]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
ORA__SQL
Member

Откуда: Moscow
Сообщений: 1774
cost-вот в чем вопрос
Оценка в стоимости(cost) запросов по плану выполнения различается в 300 раз. При выполнении этих же запросов разница во времени выполнения различается в 2 раза. Какие факторы могут повлиять на существенное расхождение в стоимостной оценке в сравнении с реальным выполнением?
Еще один cost'ы сравнивает. Убери этот столбец из плана вообще
6 авг 12, 16:12    [12969208]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
cost-вот в чем вопрос
Guest
ORA__SQL
Убери этот столбец из плана вообще

Из каких соображений?
Есть конкретная формула расчета стоимости, которая отражает суммарное прогнозируемое время в единицах времени выполнения одноблочного чтения. Почему нельзя пользоваться данной оценкой?
6 авг 12, 16:24    [12969310]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
AlexMajic
Member

Откуда: Kiev
Сообщений: 99
cost-вот в чем вопрос
ORA__SQL
Убери этот столбец из плана вообще

Из каких соображений?
Есть конкретная формула расчета стоимости, которая отражает суммарное прогнозируемое время в единицах времени выполнения одноблочного чтения. Почему нельзя пользоваться данной оценкой?


Кейт объяснил уже давно почему: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:313416745628
6 авг 12, 16:25    [12969316]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
А.
Guest
ORA__SQL
cost-вот в чем вопрос
Оценка в стоимости(cost) запросов по плану выполнения различается в 300 раз. При выполнении этих же запросов разница во времени выполнения различается в 2 раза. Какие факторы могут повлиять на существенное расхождение в стоимостной оценке в сравнении с реальным выполнением?
Еще один cost'ы сравнивает.

Если Oracle сравнивает стоимости при выявлении оптимального плана, почему бы нам этого не делать?
6 авг 12, 16:28    [12969350]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
cost-вот в чем вопрос
Guest
AlexMajic
Кейт объяснил уже давно почему: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:313416745628

Плохо уловил. Можно своими словами?
6 авг 12, 16:34    [12969385]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
AlexMajic
Member

Откуда: Kiev
Сообщений: 99
перевод на русский: http://ln.com.ua/~openxs/projects/oracle/ora004.html
6 авг 12, 16:35    [12969395]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
cost-вот в чем вопрос
Guest
AlexMajic,

Спасибо.
Тогда какие параметры плана выполнения наиболее коррелируют с реальным временем выполнения запроса?
6 авг 12, 16:43    [12969459]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
А.
Guest
AlexMajic
cost-вот в чем вопрос
пропущено...

Из каких соображений?
Есть конкретная формула расчета стоимости, которая отражает суммарное прогнозируемое время в единицах времени выполнения одноблочного чтения. Почему нельзя пользоваться данной оценкой?


Кейт объяснил уже давно почему: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:313416745628

Сказанное в первом ответе неверно.
Стоимости не относительны и не привязаны к запросу, а отражают стоимости доступа к данным. В других запросах в том же окружении стоимости одинаковых доступов будут идентичные.
6 авг 12, 16:44    [12969474]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
-2-
Member

Откуда:
Сообщений: 15330
cost-вот в чем вопрос
Тогда какие параметры плана выполнения наиболее коррелируют с реальным временем выполнения запроса?
E-Time
select * from table(dbms_xplan.display());

PLAN_TABLE_OUTPUT                                                                                                                                                                                                                                                                                          
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Plan hash value: 272002086                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                                                                                             
--------------------------------------------------------------------------                                                                                                                                                                                                                                   
| Id  | Operation         | Name | Rows  | Bytes | Cost (%CPU)| Time     |                                                                                                                                                                                                                                   
--------------------------------------------------------------------------                                                                                                                                                                                                                                   
|   0 | SELECT STATEMENT  |      |     1 |     2 |     2   (0)| 00:00:01 |                                                                                                                                                                                                                                   
|   1 |  TABLE ACCESS FULL| DUAL |     1 |     2 |     2   (0)| 00:00:01 |                                                                                                                                                                                                                                   
--------------------------------------------------------------------------                                                                                                                                                                                                                                   

 8 rows selected 
6 авг 12, 16:52    [12969537]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
ORA__SQL
Member

Откуда: Moscow
Сообщений: 1774
-2-
cost-вот в чем вопрос
Тогда какие параметры плана выполнения наиболее коррелируют с реальным временем выполнения запроса?
E-Time
E-Time величина случайная. Из-за phisical read. То есть, то их нет :). Может buffer gets?
6 авг 12, 17:00    [12969617]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
ORA__SQL
Member

Откуда: Moscow
Сообщений: 1774
ORA__SQL
-2-
пропущено...
E-Time
E-Time величина случайная. Из-за phisical read. То есть, то их нет :).
А может buffer gets?
6 авг 12, 17:02    [12969624]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
ORA__SQL
ORA__SQL
пропущено...
E-Time величина случайная. Из-за phisical read. То есть, то их нет :).
А может buffer gets?


а может сначала определимся с версией а потом гадать на кофейной гуше?
6 авг 12, 17:14    [12969735]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
cost-вот в чем вопрос
Guest
tim_scn,

11.2.0


В моем случае отношение bytes наиболее приблеженно совпадает с отношением времени выполнения.
6 авг 12, 17:19    [12969773]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
cost-вот в чем вопрос
tim_scn,

11.2.0


В моем случае отношение bytes наиболее приблеженно совпадает с отношением времени выполнения.


cost-is-time

и

cost-is-time-next-generation
6 авг 12, 17:32    [12969886]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
А.
Guest
cost-вот в чем вопрос
tim_scn,

11.2.0


В моем случае отношение bytes наиболее приблеженно совпадает с отношением времени выполнения.

Оцененная стоимость выполнения может сильно не совпадать с реальной
либо по причине неверной оценки, например, недостаточные сведения о распределении данных - и в этом случае можно помочь ораклу оценивать точнее,
либо из-за тех мест, которые на данный момент не оцениваются вовсе: объем кешированных данных, скалярные подзапросы и т.д. - тут разница между стоимостью и реальным выполнением вполне нормальна и ожидаема
6 авг 12, 17:37    [12969929]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
А.
Guest
Ну и окружение может быть разное, в широком смысле - как v$sql_optimizer_env так и доступные объемы PGA под рабочие области (workareas).
6 авг 12, 17:42    [12969950]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
А.
...объем кешированных данных......


что Вы имеете ввиду?
6 авг 12, 17:46    [12969982]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
AlexFF__|
Member

Откуда:
Сообщений: 2852
О чем тут может быть спор?
Только время имеет значение.
6 авг 12, 17:52    [12970024]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
AlexFF__|
Только время имеет значение.


+1
6 авг 12, 18:00    [12970085]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
ORA__SQL
Member

Откуда: Moscow
Сообщений: 1774
tim_scn
AlexFF__|
Только время имеет значение.
+1
Запускаем запрос первый раз 3 сек. Запускаем второй раз 0.5 сек.
6 авг 12, 18:05    [12970135]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
ORA__SQL
tim_scn
пропущено...
+1
Запускаем запрос первый раз 3 сек. Запускаем второй раз 0.5 сек.


без комментариев)
6 авг 12, 18:09    [12970169]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
-2-
Member

Откуда:
Сообщений: 15330
ORA__SQL
tim_scn
пропущено...
+1
Запускаем запрос первый раз 3 сек. Запускаем второй раз 0.5 сек.
сделай explain plan и ни разу не выполняй. Получишь еще один time.
6 авг 12, 18:52    [12970541]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
А.
Guest
tim_scn
А.
...объем кешированных данных......


что Вы имеете ввиду?
Имею ввиду, что при построении плана запроса Oracle никак не учитывает, насколько участвующие объекты кэшированы. Доступ более дорогой с точки зрения традиционной стоимости, мог бы быть более дешевым с точки зрения реально затраченного времени, из-за разницы физического I/O.
Несмотря на то, что это никак не учитывается при построении плана запроса, это учитывается в некоторых местах runtime, в частности в принятии решения о serial direct path read.
6 авг 12, 19:10    [12970651]     Ответить | Цитировать Сообщить модератору
 Re: разница в стоимости запросов  [new]
ORA__SQL
Member

Откуда: Moscow
Сообщений: 1774
-2-
ORA__SQL
пропущено...
Запускаем запрос первый раз 3 сек. Запускаем второй раз 0.5 сек.
сделай explain plan и ни разу не выполняй. Получишь еще один time.
Согласен. А если тестовая среда по производительности далека от продуктивной (как обычно и бывает) - то вообще труба.
Так что time не катит.
tim_scn
без комментариев)
Да куда уж без них)
А.
Имею ввиду, что при построении плана запроса Oracle никак не учитывает, насколько участвующие объекты кэшированы...из-за разницы физического I/O...
Optimizer_index_caching и optimizer_index_cost_adj
6 авг 12, 23:01    [12971672]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить