Oracle mechanics

17.05.2015

12c: обратимость автоматической реоптимизации

Filed under: CBO,Oracle — Игорь Усольцев @ 21:54
Tags: , ,

На продуктивной системе 12.1.0.2 с изумлением и восторгом наблюдал случай обратимости automatic re-optimization, одной из компонент 12c adaptive optimizer features:

SQL> @shared_cu12 5v18j5jkr101w
 
INST    EXECS FIRST_LOAD_TIME      LAST_LOAD_TIME       LAST_ACTIVE_TIME    ELA_PER_EXEC PLAN_HASH_VALUE OPTIMIZER_COST CHILD BIND_SENSE BIND_AWARE SHAREABLE  REOPT REOPT_HINTS ADAPT USE_FEEDBACK_STATS SQL_PLAN_DIRECTIVES REASON1                            SQL_PLAN_BASELINE  SQL_PATCH  OUTLINE_CATEGORY  SQL_PROFILE IS_OBSOLETE
---- -------- -------------------- -------------------- ------------------- ------------ --------------- -------------- ----- ---------- ---------- ---------- ----- ----------- ----- ------------------ ------------------- ---------------------------------- ----------------- ---------- ----------------- ------------ -----------
   1      214 2015-05-11/23:10:35  2015-05-12/12:50:14  12.05.2015 15:09:32   5845453723      2439019836           1159     0 Y          N          N          Y              38 Y     Y                  valid:21; used:3    Auto Reoptimization Mismatch(1)  |                                                             N
   1      166 2015-05-11/23:10:35  2015-05-12/14:14:12  12.05.2015 15:09:35   1745816312      1905979086           1159     1 Y          N          N          Y              32 Y     Y                  valid:20; used:3    Auto Reoptimization Mismatch(1)  |                                                             N
   1      176 2015-05-11/23:10:35  2015-05-12/15:02:24  12.05.2015 15:55:41      1161262      2809591419           1459     2 Y          N          Y          N               0 Y     N                  valid:21; used:3    Auto Reoptimization Mismatch(1)  |                                                             N

— дочерние курсоры удачно создавались в порядке увеличения child_number, при этом в отличие от 2-х первых последний CHILD = 2 уже не используя реоптимизацию (REOPT=V$SQL.IS_REOPTIMIZABLE = N), формируется без дополнительных хинтов — REOPT_HINTS = 0. Baseline-ов, профилей, SQL Patch-ей запрос не использовал

Несмотря на увеличение стоимости, ср.время выполнения запроса ELA_PER_EXEC значительно сократилось, т.е. отключение автоматической реоптимизации в рамках собственно процесса [ре]оптимизации достигло поставленной цели, это действительно очень сильно

Добавить комментарий »

Комментариев нет.

RSS feed for comments on this post. TrackBack URI

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

Создайте бесплатный сайт или блог на WordPress.com.

%d такие блоггеры, как: