Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 SQL Profile - содержимое  [new]
YAP
Member

Откуда: Киев
Сообщений: 2116
Интересно, применяя сабж, оптимизатор делает некое "Single Tab Card adjusted from:10.040722 to:56.600000"

10053 with SQL Profile

Access path analysis for WIDE_TABLE
***************************************
SINGLE TABLE ACCESS PATH
Single Table Cardinality Estimation for WIDE_TABLE[WIDE_TABLE]
Column (#6):
NewDensity:0.121391, OldDensity:0.000004 BktCnt:5577, PopBktCnt:5577, PopValCnt:2, NDV:2
ColGroup (#1, Index) WT_PK_IDX
Col#: 1 2 3 CorStregth: 100000.00
ColGroup Usage:: PredCnt: 2 Matches Full: Partial:
Using density: 0.000100 of col #2 as selectivity of unpopular value pred
Table: WIDE_TABLE Alias: WIDE_TABLE
Card: Original: 132616.000000 >> Single Tab Card adjusted from:10.040722 to:56.600000
Rounded: 57 Computed: 56.60 Non Adjusted: 10.04
Access Path: TableScan
Cost: 12281.35 Resp: 12281.35 Degree: 0
Cost_io: 12265.00 Cost_cpu: 362246919
Resp_io: 12265.00 Resp_cpu: 362246919


для сравнения, то же но без профиля.
10053 without SQL Profile
Access path analysis for WIDE_TABLE
***************************************
SINGLE TABLE ACCESS PATH
Single Table Cardinality Estimation for WIDE_TABLE[WIDE_TABLE]
Column (#6):
NewDensity:0.121391, OldDensity:0.000004 BktCnt:5577, PopBktCnt:5577, PopValCnt:2, NDV:2
ColGroup (#1, Index) WT_PK_IDX
Col#: 1 2 3 CorStregth: 100000.00
ColGroup Usage:: PredCnt: 2 Matches Full: Partial:
Using density: 0.000100 of col #2 as selectivity of unpopular value pred
Table: WIDE_TABLE Alias: WIDE_TABLE
Card: Original: 132616.000000 Rounded: 10 Computed: 10.04 Non Adjusted: 10.04
Access Path: TableScan
Cost: 12281.35 Resp: 12281.35 Degree: 0
Cost_io: 12265.00 Cost_cpu: 362246919
Resp_io: 12265.00 Resp_cpu: 362246919


Собственно, на основе каких данных CBO делает такую коррекцию? Где хранится профиль?

P.S. В файле 10053 с профилем есть такой фрагмент

Content of other_xml column
===========================
  db_version     : 11.1.0.6
  parse_schema   : SCOTT
  plan_hash      : 893303492
  plan_hash_2    : 2751153062
  sql_profile    : profile_lastdoc_1
Peeked Binds
============
  Bind variable information
    position=1
    datatype(code)=1
    datatype(string)=VARCHAR2(32)
    char set id=171
    char format=1
    max length=32
    value=8497902570
  Outline Data:
  /*+
    BEGIN_OUTLINE_DATA
      IGNORE_OPTIM_EMBEDDED_HINTS
      OPTIMIZER_FEATURES_ENABLE('11.1.0.6')
      DB_VERSION('11.1.0.6')
      ALL_ROWS
      OUTLINE_LEAF(@"SEL$2")
      OUTLINE_LEAF(@"SEL$1")
      NO_ACCESS(@"SEL$1" "from$_subquery$_001"@"SEL$1")
      INDEX_RS_ASC(@"SEL$2" "NARROW_TABLE"@"SEL$2" ("NARROW_TABLE"."NNUMID" "NARROW_TABLE"."NCYEAR" "NARROW_TABLE"."NID"))
      INDEX_RS_ASC(@"SEL$2" "WIDE_TABLE"@"SEL$2" ("WIDE_TABLE"."WNUMID" "WIDE_TABLE"."WCYEAR" "WIDE_TABLE"."WID"))
      LEADING(@"SEL$2" "NARROW_TABLE"@"SEL$2" "WIDE_TABLE"@"SEL$2")
      USE_HASH(@"SEL$2" "WIDE_TABLE"@"SEL$2")
    END_OUTLINE_DATA
  */

поле в dba_sqltune_plans.other_xml содержит вродь как то же самое.
23 янв 08, 11:55    [5190669]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить