Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle...

38
Joins, Skew and Histograms Wolfgang Breitling www.centrexcc.com

Transcript of Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle...

Page 1: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Joins, Skewand

HistogramsWolfgang Breitling

www.centrexcc.com

Page 2: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation2

Who am I

Independent consultant since 1996 Independent consultant since 1996 specializing in Oracle and specializing in Oracle and PeoplesoftPeoplesoft setup, setup, administration, and performance tuningadministration, and performance tuning

Member of the Member of the OaktableOaktable NetworkNetwork25+ years in database management25+ years in database management

DL/1, IMS, ADABAS, SQL/DS, DB2, OracleDL/1, IMS, ADABAS, SQL/DS, DB2, Oracle

OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9iiOracle since 1993 (7.0.12)Oracle since 1993 (7.0.12)Mathematics major from University of StuttgartMathematics major from University of Stuttgart

Page 3: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation3

Tuning by swapping Predicate Sides?

el cpu pio lio rows sql_text0.16 0.16 0 10,996 35 select a.c1, b.c1, c.c1 from t1 a, t2 b, t3 c

where a.n1 = :n1 and b.n1 = :n2 and a.n2 = c.n2and a.n2 = b.n2and a.n2 = b.n2

0.07 0.09 0 10,787 35 select a.c1, b.c1, c.c1 from t1 a, t2 b, t3 cwhere a.n1 = :n1 and b.n1 = :n2 and a.n2 = c.n2and b.n2 = a.n2and b.n2 = a.n2

Page 4: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation4

Tuning by swapping Predicate Sides?

id cost card operation rows elapsed cr_gets0 1239 SELECT STATEMENT1A 1239 199 HASH JOIN 35 0.160 10,9962A 1204 8 HASH JOIN 35 0.090 10,7063F 112 39 TABLE ACCESS FULL T1 39 0.010 9794F 1092 80 TABLE ACCESS FULL T2 70 0.080 9,7275 34 4800 TABLE ACCESS FULL T3 4,800 0.020 290

id cost card operation rows elapsed cr_gets0 1229 SELECT STATEMENT1 6 24 TABLE ACCESS BY INDEX ROWID T3 35 0.070 10,7872 1229 113 NESTED LOOPS 71 0.070 10,7833A 1204 5 HASH JOIN 35 0.070 10,7064F 112 39 TABLE ACCESS FULL T1 39 0.010 9795F 1092 80 TABLE ACCESS FULL T2 70 0.050 9,7276A 3 24 INDEX RANGE SCAN T3_2 35 0.000 77

Page 5: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation5

Focus

►► Join Cardinality and the Principle of Join Cardinality and the Principle of InclusionInclusion

►► Cases where the basic formula failsCases where the basic formula fails

►► Histograms and Join CardinalityHistograms and Join Cardinality

►► Where Histograms improve the Cardinality Where Histograms improve the Cardinality EstimateEstimate

►► Alberto Alberto DellDell’’EraEra’’ss Join Cardinality AlgorithmJoin Cardinality Algorithm

►► Can Histogram make things worse?Can Histogram make things worse?

►► Upgrade IssuesUpgrade Issues

Page 6: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation6

Principle of Inclusion

“principle of inclusion”each value of the smaller domain has a match

in the larger domain

This is obviously true for joins between foreign keys and primary keys.

join cardinality = cardA * cardB * join selectivity

join selectivity = 1/max(ndvA, ndvB)

Page 7: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation7

Principle of Inclusion

Join cardinality = cardA * cardB * join selectivity= cardA * cardB * 1/max(ndva, ndvb)= 20 * 20 * 1/max(20, 10 ) = 20

SQL> select 'A.'||a.id c1, 'B.'||b.id c2from j1 A, j2 Bwhere a.id = b.id;

20 SELECT STATEMENT 20 HASH JOIN 20 TABLE ACCESS J120 TABLE ACCESS J2

C1 C2----- -----A.2 B.2A.4 B.4A.6 B.6A.8 B.8A.10 B.10A.12 B.12A.14 B.14A.16 B.16A.18 B.18A.20 B.20…20 rows selected.

1 2

468

1012

14

16

18

23456789

1011121314151617181920 20

PK FK

Page 8: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation8

Principle of Inclusion violated

SQL> select 'A.'||a.id c1, 'B.'||b.id c2from j1 A, j2 Bwhere a.id = b.id;

20 SELECT STATEMENT20 HASH JOIN20 TABLE ACCESS J120 TABLE ACCESS J2

C1 C1----- -----A.11 B.11A.12 B.12A.13 B.13A.14 B.14A.15 B.15A.16 B.16A.17 B.17A.18 B.18A.19 B.19A.20 B.20

10 rows selected.

123456789

1011121314151617181920

1112131415161718192021222324252627282930

Join cardinality = cardA * cardB * join selectivity= cardA * cardB * 1/max(ndva, ndvb)= 20 * 20 * 1/max(20, 10 ) = 20

Page 9: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation9

Principle of Inclusion violated

Join cardinality = cardA * cardB * join selectivity= cardA * cardB * 1/max(ndva, ndvb)= 20 * 20 * 1/max(20, 20 ) = 20

SQL> select 'A.'||a.id c1, 'B.'||b.id c2from j1 A, j2 Bwhere a.id = b.id;

1 SELECT STATEMENT1 HASH JOIN

20 TABLE ACCESS J120 TABLE ACCESS J2

C1 C2----- -----

no rows selected.

123456789

1011121314151617181920

2122232425262728293031323334353637383940

Page 10: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation10

Skew

Join cardinality = cardA * cardB * join selectivity= cardA * cardB * 1/max(ndva, ndvb)= 20 * 20 * 1/max(10, 10 ) = 40

SQL> select 'A.'||a.id c1, 'B.'||b.id c2from j1 A, j2 Bwhere a.id = b.id;

40 SELECT STATEMENT40 HASH JOIN20 TABLE ACCESS J120 TABLE ACCESS J2

C1 C2----- -----A.1 B.1A.2 B.2A.3 B.3A.4 B.4A.5 B.5A.6 B.6A.7 B.7A.8 B.8A.9 B.9A.10 B.10A.10 B.10…130 rows selected.

123456789

1010101010101010101010

123456789

1010101010101010101010

Page 11: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation11

“Symmetrical” Skew

Page 12: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation12

“Anti-symmetrical” Skew

Page 13: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation13

“Random” Skew

Page 14: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation14

Testcase Rowcounts

Page 15: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation15

Cardinality Actual vs. Estimate

table column NDV density nulls lo hi av lg bktsTEST1 N1 25 3.0601E-02 0 1 48 3 13TEST2 N1 25 2.8248E-02 0 4 79 3 14

select count(0) from (select a.c1, b.c1 from test1 a, test2 b where a.n1 = b.n1 )

COUNT(0)38074

1 row selected.

id cost card operation0 9 SELECT STATEMENT1 1 SORT AGGREGATE2A 9 42,66542,665 HASH JOIN3 4 1,000 TABLE ACCESS FULL TEST14 4 1,000 TABLE ACCESS FULL TEST2

id PREDICATES2 Access= "N1"="N1"

Page 16: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation16

Histograms

Page 17: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation17

Join Histogram

CJH CJH+2

Page 18: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation18

Contribution of Join Popularity 2

Page 19: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation19

Contribution of Join Popularity 1

Page 20: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation20

Contribution of non-popular Values

Page 21: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation21

Oddities - Asymmetry

Page 22: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation22

Oddities - Asymmetry

Page 23: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation23

Oddities – another Asymmetry

9.2.0.7>explain plan for select 1 from t1 a, t2 b where a.n1 = b.n1;----------------------------------------------------| Id | Operation | Name | Rows |----------------------------------------------------| 0 | SELECT STATEMENT | | 46172 ||* 1 | HASH JOIN | | 46172 |

Page 24: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation24

Oddities – another Asymmetry

9.2.0.7>explain plan for select 1 from t1 a, t2 b where a.n1 = b.n1a.n1 = b.n1;----------------------------------------------------| Id | Operation | Name | Rows |----------------------------------------------------| 0 | SELECT STATEMENT | | 46172 ||* 1 | HASH JOIN | | 46172 |

9.2.0.7>explain plan for select 1 from t1 a, t2 b where b.n1 = a.n1b.n1 = a.n1;----------------------------------------------------| Id | Operation | Name | Rows |----------------------------------------------------| 0 | SELECT STATEMENT | | 47855 ||* 1 | HASH JOIN | | 47855 |

Page 25: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation25

Halving “Mystery”

Join column 1 25 unique values Join column 2 25 matching distinct values

Frequency histograms with 25 buckets for both columns

Page 26: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation26

Halving “Mystery”

Page 27: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation27

Special Cardinality

9.2.0.7 and 10.2.0.2 10.1.0.5 and 10.2.0.1

Join column 150 unique values and height-balanced histogram with 25 buckets

Page 28: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation28

Special Cardinality

9.2.0.7

Join column 220 matching distinct value. Histogram gathered with “size 25”

Oracle 9.2 creates a height-balanced histogram for the first join column and for the second, creating the condition for the special cardinality: the lower of the high values is also a matching value

Page 29: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation29

Special Cardinality

10.1.0.5

Join column 220 matching distinct value. Histogram gathered with “size 25”

Oracle 10.1.0.5 creates an incorrect height-balanced histogram for the first join column and a frequency histogram for the second without the condition for the special cardinality.

Page 30: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation30

Special Cardinality

10.2.0.2

Join column 220 matching distinct value. Histogram gathered with “size 25”

Oracle 10.2.0.2 creates a correct height-balanced histogram for the first join column and a frequency histogram for the second with the condition for the special cardinality.

Page 31: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation31

Revert to “standard” Formula

The algorithm reverts to the standard formulaThe algorithm reverts to the standard formulajoin cardinality = join cardinality = cardcardAA * * cardcardBB * * 1/max(ndv1/max(ndvAA, , ndvndvBB))

ifif►► if LMV is NULL if LMV is NULL –– no matching values (in the histograms)no matching values (in the histograms)

►► if HPVif HPV is NULL is NULL –– no popular values in CJHno popular values in CJH

►► if LMV > HPV if LMV > HPV –– all popular values < any matching valueall popular values < any matching value

Highest Popular Value within the CJHHighest Popular Value within the CJH

Page 32: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation32

No Matching Values

Gathering histograms of “size 20” for the distribution on the left produces the histograms on the right – with no matching values

Page 33: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation33

No Popular Values in CJH

Gathering histograms of “size 20” for the distribution on the left produces the joint histograms on the right – with no popular values

Page 34: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation34

All Popular Values < Any Matching Value

Gathering histograms of “size 20” for the distribution on the left produces the joint histogram on the right – with no popular values above the LMV

Page 35: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation35

Upgrade Trapcreate table j1 as select rownum id, mod(rownum-1,508)+1 n1

from dual connect by level <= 10160;update j1 set n1=n1+3 where mod(n1,4)=1 and id <= 3556; -- =7*508update j1 set n1=n1+2 where mod(n1,4)=2 and id <= 3556;update j1 set n1=n1+1 where mod(n1,4)=3 and id <= 3556;

9.2.0.7EP value

0 12 44 86 128 16

10.1.0.5EP value

0 11 42 53 84 95 126 137 16

10.2.0.2EP value

0 12 44 86 128 16

Page 36: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation36

Summary

►►Little Benefit for properly designed FK joinsLittle Benefit for properly designed FK joinsunless significant unless significant ““symmetricalsymmetrical”” skewskew

►►Frequency Histogram provide the best source for Frequency Histogram provide the best source for improved cardinality estimates improved cardinality estimates –– except for except for ““halvinghalving””

►►HeightHeight--balanced Histograms in particular can be balanced Histograms in particular can be volatile.volatile.Use of Use of skewonlyskewonly can avoid problem scenarioscan avoid problem scenarios

►►Histograms are Histograms are ““high maintenancehigh maintenance””

Page 37: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Hotsos Symposium March 4-8 2007© Wolfgang Breitling, Centrex Consulting Corporation37

References

Lewis, Jonathan. Lewis, Jonathan. CostCost--Based Oracle: FundamentalsBased Oracle: Fundamentals. . ApressApress. . ISBN: 1590596366.ISBN: 1590596366.

http://www.ixora.com.au/newsletter/2001_04.htmhttp://www.ixora.com.au/newsletter/2001_04.htm

44961.144961.1 Statistics Gathering: Frequency and Strategy Statistics Gathering: Frequency and Strategy Guidelines Guidelines

72539.172539.1 Interpreting Histogram InformationInterpreting Histogram Information

100229.1100229.1 Indexes Indexes -- SelectivitySelectivity

175258.1175258.1 How to Compute Statistics on Partitioned How to Compute Statistics on Partitioned Tables and IndexesTables and Indexes

1031826.61031826.6 Histograms: An OverviewHistograms: An Overview

Page 38: Joins, Skew and Histograms Skew and Histograms.ppt.pdf · DL/1, IMS, ADABAS, SQL/DS, DB2, Oracle OCP certified DBA OCP certified DBA -- 7, 8, 87, 8, 8ii, 9, 9ii Oracle since 1993

Wolfgang [email protected]

Centrex Consulting Corp.www.centrexcc.com