Studii Caz Fulltablescan

35
 AUTOR TEMATICA DAT A VERSIUNEA Verificat Mirela Busoi Cum sa evitam full table scan 19.05.2014 1 Catalin Tomoiu Oracle 11g Release 2

Transcript of Studii Caz Fulltablescan

  • 5/19/2018 Studii Caz Fulltablescan

    1/35

    AUTOR TEMATICA DATA VERSIUNEA Verificat

    Mirela Busoi Cum sa

    evitam full

    table scan

    19.05.2014 1 Catalin

    TomoiuOracle 11g

    Release 2

  • 5/19/2018 Studii Caz Fulltablescan

    2/35

    Eem!lul 1 Tabela Monitor 1000000 inregistrari " fara index

  • 5/19/2018 Studii Caz Fulltablescan

    3/35

  • 5/19/2018 Studii Caz Fulltablescan

    4/35

    Eem!lul 2 Tabela Monitor 1000000 inregistrari cu index

  • 5/19/2018 Studii Caz Fulltablescan

    5/35

  • 5/19/2018 Studii Caz Fulltablescan

    6/35

    Eem!lul #

    Tabela Monitor 0 inregistrari cu in$e

    %e fac statistici& sunt eronate

  • 5/19/2018 Studii Caz Fulltablescan

    7/35

    Eem!lul 4 & se inserea'a 1000000 ran$uri in tabela Monitor

    %e fac $in nou statistici

  • 5/19/2018 Studii Caz Fulltablescan

    8/35

  • 5/19/2018 Studii Caz Fulltablescan

    9/35

    Cu statistici eronate

  • 5/19/2018 Studii Caz Fulltablescan

    10/35

    Cu statistici corecte

    Eem!lul 5

    Tabela %()(R*(T* cu in$e !e *+,- 100000 ran$uri

    /acem statistici !e tabela

  • 5/19/2018 Studii Caz Fulltablescan

    11/35

    (!oi consultam e!lain !lan !entru 2 selecturi

    a %E)ECT CO3T /ROM %()(R*(T* 67ERE *+ 8 1000b %E)ECT *+:3ME /ROM %()(R*(T* 67ERE *% 8 1000

  • 5/19/2018 Studii Caz Fulltablescan

    12/35

    %elect count foloseste $oar in$e&ul

  • 5/19/2018 Studii Caz Fulltablescan

    13/35

    (!oi golim tabela si re!etam cele 2 selecturi $e mai sus fara sa luam alte

    statistici.

  • 5/19/2018 Studii Caz Fulltablescan

    14/35

  • 5/19/2018 Studii Caz Fulltablescan

    15/35

  • 5/19/2018 Studii Caz Fulltablescan

    16/35

    %tatistici $u!a golirea tabelei

  • 5/19/2018 Studii Caz Fulltablescan

    17/35

    E!lain !lan !entru !rimul select TO(+

  • 5/19/2018 Studii Caz Fulltablescan

    18/35

    %elect count consulta $oar in$eul.

    E!lain !lan !entru al $oilea select TO(+

  • 5/19/2018 Studii Caz Fulltablescan

    19/35

  • 5/19/2018 Studii Caz Fulltablescan

    20/35

    *n %;) conectati ca % EXLAIN LAN for se!ect count"#$ fro% SALARIATI &'ERE ID ( )***+

    %;)= select from table+BM%,>-)(3.+*%-)( R(3FE %C(3 %()(R*(T*,- 1 1# 0 0

    00001

    &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

    -re$icate *nformation i$entifie$ bD o!eration i$

  • 5/19/2018 Studii Caz Fulltablescan

    21/35

    &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

    2 & accessG*+G81000

    14 ros selecte$.

    %;)=

    SQL> EXLAIN LAN for se!ect ID,NUME fro% SALARIATI -.ere ID ( )***+

    %;)= select from table+BM%,>-)(3.+*%-)( RO6*+ %()(R*(T* 1 #0

    0 0

    000001

    2 *3+E> R(3FE %C(3 %()(R*(T*,- 1 0 0

    000001

    &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

    -re$icate *nformation i$entifie$ bD o!eration i$

    &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

    2 & accessG*+G81000

    14 ros selecte$.

    %;)=

    Eem!lul @

    (vem tabela (3F(I(T*2 cu in$e !e coloana %()(R*

  • 5/19/2018 Studii Caz Fulltablescan

    22/35

    )uam statistici !e tabela

  • 5/19/2018 Studii Caz Fulltablescan

    23/35

  • 5/19/2018 Studii Caz Fulltablescan

    24/35

    /unctia RO3+ !e coloana %()(R* face ca select&ul sa nu consulte

    in$e&ul si se face full table scan.

  • 5/19/2018 Studii Caz Fulltablescan

    25/35

    Este $e !referat clau'a 67ERE in locul clau'ei 7(J*3F

  • 5/19/2018 Studii Caz Fulltablescan

    26/35

    Este $e evitat instructiunea )*E in select: $aca !oate fi inlocuita cu

    KL: !entru ca )*E face full table scan.

  • 5/19/2018 Studii Caz Fulltablescan

    27/35

  • 5/19/2018 Studii Caz Fulltablescan

    28/35

    -utem sim!lifica cererile %;) com!lee !rin utili'area clau'ei 6*T7

  • 5/19/2018 Studii Caz Fulltablescan

    29/35

  • 5/19/2018 Studii Caz Fulltablescan

    30/35

  • 5/19/2018 Studii Caz Fulltablescan

    31/35

  • 5/19/2018 Studii Caz Fulltablescan

    32/35

  • 5/19/2018 Studii Caz Fulltablescan

    33/35

  • 5/19/2018 Studii Caz Fulltablescan

    34/35

    NOTA

    Ca sa evitam full table scan !e o tabela este im!ortant

    & sa avem in$e creat !e acea tabela si sa il folosim cu aNutorul

    utilitarului Toa$ ve$em: in e!lain !lan: $aca a fost folosit sau nu

    in$eul

    & sa luam statistici ori $e cate ori este nevoie se fac tran'actii multe

    sa o!timi'am selectul tinan$ cont $e urmatoarele

    o select count foloseste $oar in$eul

    o orice functie RO3+: TR*M: )TR*M: TR3C:etc !e

    o coloana a tabelei $etermina full table scan: nu consulta

    in$e&ul.

  • 5/19/2018 Studii Caz Fulltablescan

    35/35

    clau'a 6*T7sim!lifica cererile %;) com!lee

    can$ e !osibil: e $e !referat egalitatea : nu instructiunea )iPe

    este $e !referat clau'a 67ERE in locul clau'ei

    7(J*3F