Top Banner
PROCESAMIETO DE PROCESAMIETO DE PROCESAMIETO DE PROCESAMIETO DE 3 Dr. Víctor J. Sosa Sosa COSULTAS COSULTAS COSULTAS COSULTAS Consulta de usuario en alto nivel Procesamiento de Consultas 4 Dr. Víctor J. Sosa Sosa Procesador de consultas Comandos de manipulación de datos en bajo nivel
53

Procesador en alto nivel COSULTAS - CINVESTAVvjsosa/clases/tsbd/BDD_Consultas.pdf · Optimización de consultas. ¿Cómo determinamos la “mejor” estrategia de ejecución? Componentes

Jan 30, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • PROCESAMIE

    TO DE

    PROCESAMIE

    TO DE

    PROCESAMIE

    TO DE

    PROCESAMIE

    TO DE

    3

    Dr. V

    íctor J. S

    osa S

    osa

    CO

    SULTAS

    CO

    SULTAS

    CO

    SULTAS

    CO

    SULTAS

    Consulta d

    e usuario

    en alto

    nivel

    Procesa

    mien

    to de C

    onsultas

    4

    Dr. V

    íctor J. S

    osa S

    osa

    Procesa

    dor

    de co

    nsultas

    Comandos d

    e manipulació

    n de

    dato

    s en bajo

    nivel

  • Componentes d

    el Procesa

    mien

    to de C

    onsultas

    �Lenguaje d

    e consultas u

    tilizado.

    SQL “in

    tergalactic d

    ataspeak

    ”.

    �Meto

    dología d

    e ejecució

    n de co

    nsultas.

    Los p

    asos n

    ecesarios p

    ara ejecutar u

    na co

    nsulta d

    e alto nivel

    5

    Dr. V

    íctor J. S

    osa S

    osa

    Los p

    asos n

    ecesarios p

    ara ejecutar u

    na co

    nsulta d

    e alto nivel

    (declarativ

    a)

    �Optim

    ización de co

    nsultas.

    ¿Cómo determ

    inam

    os la “m

    ejor” estrateg

    ia de ejecu

    ción?

    Componentes d

    el Procesa

    mien

    to de C

    onsultas

    �Lenguaje d

    e consultas u

    tilizado.

    SQL “In

    tergalactic D

    ataspeak

    ”.

    �Meto

    dología d

    e ejecució

    n de co

    nsultas.

    Los p

    asos n

    ecesarios p

    ara ejecutar u

    na co

    nsulta d

    e alto

    6

    Dr. V

    íctor J. S

    osa S

    osa

    Los p

    asos n

    ecesarios p

    ara ejecutar u

    na co

    nsulta d

    e alto

    nivel (d

    eclarativa).

    �Optim

    ización de co

    nsultas.

    ¿Cómo determ

    inar el “m

    ejor” p

    lan de ejecu

    ción?

  • Altern

    ativas de S

    elección

    SELECT

    ENAME

    FROM

    E, G

    WHERE

    E.ENO = G

    .ENO

    A

    D

    DUR > 37

    7

    Dr. V

    íctor J. S

    osa S

    osa

    Estrateg

    ia 1

    ΠENAME (σ

    DUR>37

    ∧ E.ENO=G.ENO(E ×

    G))

    ΠENAME ( E

    ENO(σ

    DUR>37 (G

    )))

    Estrateg

    ia 2

    La estrateg

    ia 2 red

    uce el p

    roducto

    cartesiano, asi q

    ue es “m

    ejor”

    Sitio

    1

    G1 = σ

    ENO

    ≤“E

    3” (G

    )

    ¿Cuál es el P

    roblem

    a?

    Sitio

    5

    Sitio

    2

    G2 = σ

    ENO

    ≤“E

    3” (G

    )

    Sitio

    3

    E1 = σ

    ENO

    ≤“E

    3” (E

    )

    Sitio

    4

    E2 = σ

    ENO

    ≤“E

    3” (E

    )

    Sitio

    5

    Resu

    ltado

    Estrateg

    ia 1

    8

    Dr. V

    íctor J. S

    osa S

    osa

    Resu

    ltado = E1 ’ ∪

    E2 ’

    G1 ’ =

    σDUR>37 (G

    1 )

    Sitio

    1

    G2 ’ =

    σDUR>37 (G

    2 )

    Sitio

    2G

    2 ’G

    1 ’

    Sitio

    5

    E1 ’ =

    E1 E

    NOG

    1 ’

    Sitio

    3

    E2 ’ =

    E2 E

    NOG

    2 ’

    Sitio

    4

  • ¿Cuál es el P

    roblem

    a?

    Sitio

    1

    G1 = σ

    ENO

    ≤“E

    3” (G

    )

    Sitio

    2

    G2 = σ

    ENO

    ≤“E

    3” (G

    )

    Sitio

    3

    E1 = σ

    ENO

    ≤“E

    3” (E

    )

    Sitio

    4

    E2 = σ

    ENO

    ≤“E

    3” (E

    )

    Sitio

    5

    Resu

    ltado

    Estrateg

    ia 2

    9

    Dr. V

    íctor J. S

    osa S

    osa

    Resu

    ltado = (E

    1∪

    E2 ) E

    NO σ

    DUR>37 (G

    1∪

    G2 )

    Sitio

    1Sitio

    2Sitio

    3Sitio

    4

    G1

    E1

    E2

    G2

    Sitio

    5

    �Suponer lo

    siguien

    te:

    tamaño(E) =

    400, tam

    año (G

    ) = 1000

    costo

    de acceso

    a tuplas =

    1 unidad; co

    sto de trasferir u

    na tu

    pla =

    10 unidades

    �Estrateg

    ia 1.

    1. P

    roducir G

    ’: 20*costo

    de acceso

    a tupla

    20

    2. T

    ransferir G

    ’ a los lu

    gares d

    e E: 20*costo

    de tran

    sferir tupla

    200

    3. P

    roducir E

    ’: (20*20)*costo

    de acceso

    a tupla

    800

    Altern

    ativas de C

    osto

    10

    Dr. V

    íctor J. S

    osa S

    osa

    3. P

    roducir E

    ’: (20*20)*costo

    de acceso

    a tupla

    800

    4. T

    ransferir E

    ’ a los lu

    gares resu

    ltantes: 2

    0*costo

    de trasferir tu

    pla

    200

    Costo

    Total

    1,220

    �Estrateg

    ia 2.

    1. T

    ransferir E

    al lugar 5

    : 400*costo

    de tran

    sferir tupla

    4,000

    2. T

    ransferir E

    al lugar 5

    : 1,000*costo

    de tran

    sferir tupla

    10,000

    3. P

    roducir G

    ’: 1,000*costo

    de acceso

    a tupla

    1,000

    4. R

    eunión de E

    y G’: 2

    0*1,000*costo

    de acceso

    a tupla

    20,000

    Costo

    Total

    35,000

  • Objetiv

    o de la

    Optim

    izació

    n de C

    onsultas

    Minim

    izar una fu

    nció

    n de co

    sto

    costo

    de I/O

    + co

    sto de C

    PU + co

    sto de co

    municació

    n

    Esto

    podría ten

    er diferen

    tes peso

    s en diferen

    tes ambien

    tes distrib

    uidos.

    �Redes d

    e área amplia.

    �Los co

    stos d

    e comunicació

    n dominarán

    .

    11

    Dr. V

    íctor J. S

    osa S

    osa

    �Los co

    stos d

    e comunicació

    n dominarán

    .•

    Bajo

    ancho de b

    anda.

    •Baja v

    elocid

    ad.

    •Alta so

    brecarg

    a de p

    rotocolo.

    �Muchos alg

    oritm

    os ig

    noran

    el resto de co

    mponentes d

    e costo

    s.

    �Redes d

    e área local.

    �Costo

    s de co

    municació

    n no dominantes.

    �La fu

    nció

    n de co

    sto to

    tal debe ser co

    nsid

    erada.

    Tam

    bién

    se puede m

    axim

    izar el desem

    peño (th

    roughput).

    Complejid

    ad de la

    s Opera

    ciones R

    elacio

    nales

    �Suponem

    os:

    �Relacio

    nes d

    e cardinalid

    cad n.

    �Búsqueda secu

    encial.

    Opera

    ción

    Complejid

    ad

    Selecció

    n

    12

    Dr. V

    íctor J. S

    osa S

    osa

    O(n

    2)

    Selecció

    n

    Proyecció

    n(Sin elim

    inar d

    uplicad

    os)

    O(n)

    Proyecció

    n

    (Con elim

    inació

    n de d

    uplicad

    os)

    Agrupam

    iento

    O(nlogn)

    Reunión

    Sem

    i-reunión

    Divisió

    n

    Operad

    ores d

    e conjuntos

    O(nlogn)

    Producto

    cartesiano

  • Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Tipos de O

    ptim

    izadores)

    �Búsqueda ex

    haustiv

    a.

    �Optim

    o.

    �Basad

    o en

    costo

    .

    �Complejid

    ad co

    mbinato

    ria en el n

    úmero

    de relacio

    nes.

    Heurística.

    13

    Dr. V

    íctor J. S

    osa S

    osa

    �Heurística.

    �No optim

    o.

    �Reag

    rupar su

    bexpresio

    nes co

    munes.

    �Desarro

    llar prim

    ero seleccio

    nes y

    proyeccio

    nes.

    �Reem

    plazar u

    na reu

    nión por u

    na serie d

    e semireu

    niones.

    �Reordenar o

    peracio

    nes p

    ara reducir el tam

    año de las

    relaciones in

    termedias.

    �Optim

    izar operacio

    nes in

    dividuales.

    Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Granularid

    ad de la

    Optim

    izació

    n)

    �Una co

    nsulta a la v

    ez.

    �No puede u

    sar resultad

    os in

    termedios co

    munes.

    �Múltip

    les consultas a la v

    ez.

    14

    Dr. V

    íctor J. S

    osa S

    osa

    �Múltip

    les consultas a la v

    ez.

    �Eficien

    te si hay m

    uchas co

    nsultas sim

    ilares.

    �El esp

    acio de d

    ecisión es m

    ucho m

    ayor.

  • Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Tiem

    po de O

    ptim

    izació

    n)

    �Estático

    .

    �Compilació

    n =

    optim

    izar antes d

    e la ejecució

    n.

    �Difícil d

    e estimar el tam

    año de lo

    s resultad

    os in

    termedios (p

    rovoca

    una p

    ropagació

    n de erro

    r).

    �El co

    sto puede am

    ortizarse en

    tre muchas ejecu

    ciones.

    �Sistem

    a R*.

    �Dinám

    ico.

    15

    Dr. V

    íctor J. S

    osa S

    osa

    �Dinám

    ico.

    �Optim

    ización en

    tiempo de ejecu

    ción.

    �Inform

    ación ex

    acta en lo

    s tamaños d

    e relaciones in

    termedias.

    �Se tien

    e que reo

    ptim

    izar para ejecu

    ciones m

    últip

    les.

    �Ingres d

    istribuido.

    �Híbrid

    o.

    �Compilació

    n usan

    do un alg

    oritm

    o estático

    .

    �Si el erro

    r en el tam

    año estim

    ado es m

    ayor q

    ue u

    n umbral,

    reoptim

    izar al tiempo de ejecu

    ción.

    �Merm

    aid.

    Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Esta

    dística

    s)

    �Relació

    n.

    �Card

    inalid

    ad.

    �Tam

    año de u

    na tu

    pla.

    �Fracció

    n de tu

    plas p

    articipando en

    un reu

    nión co

    n otra rela-

    ción.

    16

    Dr. V

    íctor J. S

    osa S

    osa

    ción.

    �Atrib

    uto.

    �Card

    inalid

    ad del d

    ominio.

    �Número

    actual d

    e valo

    res distin

    tos.

    �Suposicio

    nes co

    munes.

    �Independencia en

    tre diferen

    tes valo

    res de atrib

    utos.

    �Distrib

    ució

    n unifo

    rme d

    e valo

    res de atrib

    utos en

    su dominio.

  • Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Decisió

    n de S

    itios)

    �Centralizad

    o.

    �Un so

    lo sitio

    determ

    ina la “m

    ejor” estrateg

    ia.

    �Im

    plem

    entació

    n sim

    ple.

    �Necesita co

    nocer to

    da la b

    ase de d

    atos d

    istribuida.

    17

    Dr. V

    íctor J. S

    osa S

    osa

    �Distrib

    uido.

    �Cooperació

    n en

    tre sitios p

    ara determ

    inar la estrateg

    ia global.

    �Necesita só

    lo in

    form

    ación lo

    cal.

    �Costo

    de co

    operació

    n.

    �Híbrid

    o.

    �Un sitio

    determ

    ina la estrateg

    ia global.

    �Cada sitio

    optim

    iza las subconsultas lo

    cales.

    Elem

    entos para Optim

    izació

    n de C

    onsultas

    (Topología de R

    ed)

    �Red de área am

    plia (W

    AN) p

    unto a p

    unto.

    �Características.

    •Bajo

    ancho de b

    anda.

    •Baja v

    elocid

    ad.

    •Sobrecarg

    a de p

    rotocolo.

    18

    Dr. V

    íctor J. S

    osa S

    osa

    �El co

    sto de co

    municació

    n es d

    eterminante; se ig

    noran

    los o

    tros

    factores d

    e costo

    �Estrateg

    ia global p

    ara minim

    izar el costo

    de co

    municació

    n.

    �Estrateg

    ia local aco

    rde a la o

    ptim

    ización de co

    nsulta cen

    tralizada.

    �Red de área lo

    cal (LAN).

    �El co

    sto de co

    municació

    n no es relev

    ante.

    �El co

    sto de I/O

    debe ser co

    nsid

    erado.

    �La d

    ifusió

    n puede ser ex

    plotad

    a para las reu

    niones.

    �Existen

    algoritm

    os esp

    eciales para red

    es de tip

    o estrella.

  • Meto

    dología para Proc. d

    e Consultas D

    istribuidas

    Consultas b

    asadas en

    cálculo

    sobre relacio

    nes d

    istribuidas

    Desco

    mposició

    n

    de C

    onsulta

    Localiza

    ción

    de D

    atos

    Consultas b

    asadas en

    algebra

    sobre relacio

    nes d

    istribuidas

    ESQUEMA

    GLOBAL

    ESQUEMA DE

    FRAGME

    TOS

    CONTROL

    DE

    SITIO

    S

    19

    Dr. V

    íctor J. S

    osa S

    osa

    de D

    atos

    Optim

    izació

    n

    Global

    Optim

    izació

    n

    Local

    Consulta en

    fragmentos

    Consulta o

    ptim

    izada en

    fragmentos co

    n

    operacio

    nes d

    e comunicació

    n

    Consulta lo

    cal optim

    izada

    FRAGME

    TOS

    ESTADISTICAS SOBRE

    FRAGME

    TOS

    ESQUEMAS

    LOCALES

    SITIO

    S

    A NIV

    EL

    LOCAL

    Paso 1. D

    escomposició

    n de C

    onsulta

    Entrad

    a: Consulta b

    asada en

    cálculo so

    bre las relacio

    nes g

    lobales.

    �Norm

    alización.

    �Manipular cu

    antificad

    ores y

    cualificació

    n de la co

    nsulta.

    �Análisis.

    �Detectar y

    rechazar co

    nsultas “in

    correctas”.

    20

    Dr. V

    íctor J. S

    osa S

    osa

    �Detectar y

    rechazar co

    nsultas “in

    correctas”.

    �Posib

    le para só

    lo un su

    bconjunto del cálcu

    lo relacio

    nal.

    �Sim

    plificació

    n.

    �Elim

    inar p

    redicad

    os red

    undantes.

    �Restru

    cturació

    n.

    �Tran

    sform

    ar de co

    nsulta b

    asada en

    cálculo a co

    nsulta en

    álgebra.

    �Más d

    e una trad

    ucció

    n es p

    osib

    le.

    �Usa reg

    las de tran

    sform

    ación.

  • orm

    aliza

    ción de P

    redica

    dos de S

    elección

    �Análisis léx

    ico y sin

    táctico.

    �Verificació

    n de v

    alidació

    n.

    �Verificació

    n de atrib

    utos y

    relaciones.

    �Poner d

    entro

    de la fo

    rma n

    orm

    al.

    21

    Dr. V

    íctor J. S

    osa S

    osa

    �Poner d

    entro

    de la fo

    rma n

    orm

    al.

    �Form

    a norm

    al conjuntiv

    a.

    (p11 ∨

    p12 ∨

    ... ∨ p

    1n ) ∧

    ... ∧ (p

    m1 ∨

    pm2 ∨

    ...∨ p

    mn )

    �Form

    a norm

    al disju

    ntiv

    a.

    (p11 ∧

    p12 ∧

    ... ∧ p

    1n ) ∨

    ... ∨ (p

    m1 ∧

    pm2 ∧

    ... ∧ p

    mn )

    Análisis d

    e Consultas

    �Rech

    azar las consultas in

    correctas.

    �Tipos d

    e dato

    incorrecto

    s.�

    Si cu

    alquiera d

    e sus atrib

    utos o

    nombres d

    e relaciones n

    o están

    defin

    idos en

    el esquem

    a global.

    �Si las o

    peracio

    nes se ap

    lican a atrib

    utos d

    e tipos in

    correcto

    s.

    �Sem

    ánticam

    ente in

    correcto

    .

    22

    Dr. V

    íctor J. S

    osa S

    osa

    Sem

    ánticam

    ente in

    correcto

    .�

    Componentes q

    ue n

    o co

    ntrib

    uyen de n

    inguna m

    anera a la

    generació

    n del resu

    ltado.

    �Solam

    ente u

    n su

    bconjunto de las co

    nsultas en

    cálculo relacio

    nal se

    pueden probar en

    cuanto a co

    rrectez.

    �Aquéllas q

    ue n

    o co

    ntien

    en disju

    ncio

    nes y

    negacio

    nes.

    �Los erro

    res se pueden detectar co

    n lo

    s siguien

    tes mecan

    ismos:

    •Grafo

    de co

    nexión (g

    rafo de co

    nsulta).

    •Grafo

    de reu

    nión (tip

    o esp

    ecial de g

    rafo de co

    nexión).

  • Análisis d

    e Consultas -

    Ejem

    plo

    SELECT E

    NAME, R

    ESP

    FROM E

    , G, J

    WHERE E

    .ENO = G.ENO

    A

    D G

    .JNO = J.JN

    O

    A

    D

    JNAME = “C

    AD/CAM”

    A

    D D

    UR

    ≥ 36

    A

    D

    TITLE = “P

    rogram

    mer”

    23

    Dr. V

    íctor J. S

    osa S

    osa

    A

    D

    TITLE = “P

    rogram

    mer”

    G

    JE

    RESULTADO

    RESP

    DUR

    ≥3

    6

    JNAME=“C

    AD/CAM”

    ENAME

    E.ENO=G.ENO

    TITLE=

    “Program

    mer”

    G.JN

    O=J.JN

    OG

    JE

    E.ENO=G.ENO

    G.JN

    O=J.JN

    O

    Grafo de C

    onsulta

    Grafo de R

    eunión

    Análisis d

    e Consultas -

    Ejem

    plo

    Si el g

    ráfo de la co

    nsulta n

    o está en

    lazado, la co

    nsulta

    está equivocad

    a.

    SELECT E

    NAME, R

    ESP

    FROM E

    , G, J

    WHERE E

    .ENO = G.ENO

    A

    D

    JNAME = “C

    AD/CAM”

    A

    D D

    UR

    ≥ 36

    24

    Dr. V

    íctor J. S

    osa S

    osa

    A

    D D

    UR

    ≥ 36

    A

    D

    TITLE = “P

    rogram

    mer”

    G

    JE

    RESULTADO

    RESP

    DUR

    ≥3

    6

    JNAME=“C

    AD/CAM”

    ENAME

    E.ENO=G.ENO

    TITLE=“Program

    mer”

  • �¿Por q

    ué sim

    plificar?

    �Recu

    érdese el ejem

    plo.

    �¿C

    ómo? U

    sar las reglas d

    e transfo

    rmació

    n.

    �Elim

    inació

    n de red

    undancias m

    edian

    te las reglas d

    e

    idem

    poten

    cia:

    Simplifica

    ción de C

    onsultas

    25

    Dr. V

    íctor J. S

    osa S

    osa

    idem

    poten

    cia:

    p1 ∧

    ¬(p

    1 ) ⇔fa

    lse

    p1 ∧

    (p1

    ∨ p

    2 ) ⇔ p

    1

    p1 ∨

    false

    ⇔p1

    �Aplicació

    n de tran

    sitividad.

    �Uso de reg

    las de in

    tegrid

    ad.

    . . .

    Simplifica

    ción de C

    onsultas-Ejem

    plo

    SELECT

    TITLE

    FROM

    E

    WHERE

    E.ENAME = “J. D

    oe”

    OR

    (

    OT (E

    .TITLE = “P

    rogram

    mer”)

    A

    D

    (E.TITLE = “P

    rogram

    mer”

    OR

    E.TITLE = “E

    lect. Eng.”)

    26

    Dr. V

    íctor J. S

    osa S

    osa

    OR

    E.TITLE = “E

    lect. Eng.”)

    A

    D

    OT (E

    .TITLE = “E

    lect. Eng.”))

    SELECT

    TITLE

    FROM

    E

    WHERE

    E.ENAME = “J. D

    oe”

  • Restru

    cturació

    n

    ΠENAME

    σDUR=12 OR DUR=24

    σJN

    AME=“C

    AD/CAM”

    Proyecció

    n

    Selecció

    n

    �Convertir d

    e cálculo relacio

    nal a

    algebra relacio

    nal.

    �Hacer u

    so de árb

    oles d

    e consulta.

    �Ejem

    plo.

    Encontrar lo

    s nombres d

    e emplead

    os

    diferen

    tes a J. Doe q

    ue trab

    ajaron en

    27

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT E

    NAME

    FROM E

    , G, J

    WHERE E

    .ENO = G.ENO

    A

    D G

    .JNO = J.JN

    O

    A

    D E

    NAME ≠

    “J.Doe”

    A

    D JN

    AME = “C

    AD/CAM”

    A

    D (D

    UR = 12 OR DUR = 24)

    σENAME

    ≠“J. D

    OE”

    JNO

    ENO

    JG

    E

    Reunión

    diferen

    tes a J. Doe q

    ue trab

    ajaron en

    el proyecto

    CAD/CAM de 1

    a 2 añ

    os.

    �Conmutativ

    idad de o

    peracio

    nes b

    inarias.

    �R

    × S ⇔

    R�

    RS

    ⇔S

    R

    �R

    ∪S

    ⇔S

    ∪R

    �Asociativ

    idad de o

    peracio

    nes b

    inarias.

    Restru

    cturació

    n -Reglas de T

    ransfo

    rmació

    n

    28

    Dr. V

    íctor J. S

    osa S

    osa

    �Asociativ

    idad de o

    peracio

    nes b

    inarias.

    �(R

    ×S) ×

    T⇔

    R×(S

    ×T)

    �(R

    S)

    T⇔

    R

    (S

    T)

    �Idem

    poten

    cia en operacio

    nes u

    narias

    �Π

    A’ (Π

    A’ (R

    )) ⇔

    ΠA’ (R

    )

    �σ

    p1(A

    1) (σ

    p2(A

    2) (R

    )) = σ

    p1(A

    1) ∧

    p2(A

    2) (R

    )

    donde R

    [A] y

    A’⊆

    A, A

    ’’⊆A y A’⊆

    A’’.

    �Conmutar selecció

    n co

    n proyecció

    n.

  • �Conmutar selecció

    n co

    n operacio

    nes b

    inarias.

    �σ

    p(A

    i) (R×

    S) ⇔

    (σp(A

    i) (R))

    ×S

    �σ

    p(A

    i) (R

    (Aj,B

    k)) S) ⇔

    (σp(A

    i) (R))

    (Aj,B

    k)) S

    �σ

    p(A

    i) (R∪

    T) ⇔

    σp(A

    i) (R) ∪

    σ(A

    i) (T)

    donde A

    perten

    ece a Ry T

    .

    Restru

    cturació

    n -Reglas de T

    ransfo

    rmació

    n

    29

    Dr. V

    íctor J. S

    osa S

    osa

    donde A

    i perten

    ece a Ry T

    .

    �Conmutar p

    royecció

    n co

    n operacio

    nes b

    inarias.

    �Π

    C (R×

    S)

    ⇔Π

    A’ (R

    ) ×Π

    B’ (S

    )

    �Π

    C (R(A

    j,Bk) S

    ) ⇔ Π

    A’ (R

    ) (Aj,B

    k) ΠB’ (S

    )

    �Π

    C (R∪

    S)

    ⇔ Π

    C (R)

    ∪Π

    C (S)

    donde R

    [A] y

    S[B]; C

    = A’ ∪

    B’ d

    onde A

    ’⊆A, B

    ’⊆B.

    Restru

    cturació

    n -Ejem

    plo

    ΠENAME

    σDUR=12 OR DUR=24

    σJN

    AME=“C

    AD/CAM”

    Proyecció

    n

    Selecció

    n

    Reto

    mando el ejem

    plo prev

    io:

    Encontrar lo

    s nombres d

    e

    emplead

    os d

    iferentes a J. D

    oe

    que trab

    ajaron en

    el proyecto

    CAD/CAM de 1

    a 2 añ

    os.

    30

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT E

    NAME

    FROM E

    , G, J

    WHERE E

    .ENO = G.ENO

    A

    D G

    .JNO = J.JN

    O

    A

    D E

    NAME ≠

    “J.Doe”

    A

    D JN

    AME = “C

    AD/CAM”

    A

    D (D

    UR = 12 OR DUR = 24)

    σENAME

    ≠“J. D

    OE”

    JNO

    ENO

    JG

    E

    Reunión

    CAD/CAM de 1

    a 2 añ

    os.

  • Equivalen

    cia de C

    onsultas

    σJN

    AME = “C

    AD/CAM” ∧

    (DUR = 12 OR DUR = 24) ∧

    ENAME ≠“J.D

    OE”

    ΠENAME

    31

    Dr. V

    íctor J. S

    osa S

    osa

    JNO ∧

    ENO

    GJ

    E

    X

    Restru

    cturació

    n

    ΠENAME

    JNO

    ΠJN

    O, E

    NAME

    32

    Dr. V

    íctor J. S

    osa S

    osa

    EJ

    G

    ENO

    ΠJN

    JNO, E

    NO

    ΠENO, E

    NAME

    σENAME ≠“J.D

    OE”

    σJN

    AME = “C

    AD/CAM”

    σDUR = 12 OR DUR = 24

  • Paso 2 -Localiza

    ción de D

    atos

    Entrad

    a: Consulta en

    álgebra so

    bre relacio

    nes d

    istribuidas.

    �Determ

    inar cu

    áles fragmentos están

    involucrad

    os.

    �Localizació

    n de p

    rogram

    as.

    33

    Dr. V

    íctor J. S

    osa S

    osa

    �Localizació

    n de p

    rogram

    as.

    �Sustitu

    ir para cad

    a consulta g

    lobal su

    program

    a de

    localizació

    n.

    �Optim

    izar la expresió

    n resu

    ltante.

    Localiza

    ción -Ejem

    plo

    ΠENAME

    σDUR=12 OR DUR=24

    σJN

    AME=“C

    AD/CAM”

    σ

    Suponer:

    �E está frag

    mentad

    o en

    E1 , E

    2y

    E3como sig

    ue:

    �E1 = σ

    ENO ≤

    “E3” (E

    )

    �E2 = σ

    ”E3” <

    ΕΝ

    Ο ≤

    “E6” (E

    )

    �E3 = σ

    ENO ≥

    “E6”

    34

    Dr. V

    íctor J. S

    osa S

    osa

    JNO

    E1

    G2

    σENAME ≠

    “J. DOE”

    ENO

    ∪E2

    E3

    G1

    J

    �E3 = σ

    ENO ≥

    “E6”

    �G está frag

    mentad

    o en

    G1y G

    2

    como sig

    ue:

    �G

    1 = σ

    ENO ≤

    “E3” (G

    )

    �G

    2 = σ

    ΕΝ

    Ο>“E

    3” (G

    )

    �Reem

    place E

    por (E

    1∪

    E2

    ∪E3 ) y

    G por (G

    1∪

    G2 ) en

    cualq

    uier co

    nsulta.

  • Proporcio

    nando Paralelism

    o

    35

    Dr. V

    íctor J. S

    osa S

    osa

    E1

    G1

    E1

    G2

    E2

    G1

    E2

    G2

    E3

    G1

    E3

    G2

    ENO

    ENO

    ENO

    ENO

    ENO

    ENO

    Elim

    inando Trabajo Innecesa

    rio

    36

    Dr. V

    íctor J. S

    osa S

    osa

    E1

    G1

    E2

    G2

    E3

    G2

    ENO

    ENO

    ENO

  • �Reducció

    n co

    n selecció

    n.

    �Relació

    n R

    y F

    R = {R1 , R

    2 , ..., Rw } donde R

    j = σ

    pj (R

    )

    σpi (R

    j ) = φ

    si ∀xen R: ¬

    (pi (x) ∧

    pj (x))

    �Ejem

    plo:

    Reducció

    n por F

    H

    SELECT *

    FROM E

    37

    Dr. V

    íctor J. S

    osa S

    osa

    FROM E

    WHERE E

    NO = “E

    5”

    σENO=“E

    5”

    E1

    σENO=“E

    5”

    ∪E2

    E3

    E2

    �Reducció

    n co

    n reu

    nión.

    �Es p

    osib

    le si la fragmentació

    n se h

    ace sobre u

    n atrib

    uto que

    particip

    a en la reu

    nión.

    �Una reu

    nión distrib

    uida so

    bre u

    na u

    nión:

    Reducció

    n por F

    HP

    38

    Dr. V

    íctor J. S

    osa S

    osa

    �Una reu

    nión distrib

    uida so

    bre u

    na u

    nión:

    (R1 ∪

    R2 ) R

    3 ⇔

    (R1

    R3 )

    ∪ (R

    2

    R3 )

    �Dado

    Ri =

    σpi (R

    ) y R

    j = σ

    pj (R

    )

    Ri

    Rj =

    φ si ∀

    xen R

    i , ∀yen R

    j : ¬(p

    i (x) ∧

    pj (y))

  • Reducció

    n por F

    HP

    �Ejem

    plo de red

    ucció

    n co

    n reu

    nión.

    �Suponer q

    ue E

    está fragmentad

    a como an

    tes y

    G1= σ

    ENO ≤

    “E3”(G

    )

    G2= σ

    ENO > “E

    3”(G

    )

    �Consid

    erar la consulta

    SELECT

    *

    FROM

    E, G

    39

    Dr. V

    íctor J. S

    osa S

    osa

    FROM

    E, G

    WHERE

    E.ENO = G.ENO

    ENO

    E1

    E3

    G1

    G2

    E2

    Reducció

    n por F

    HP

    �Ejem

    plo de red

    ucció

    n co

    n reu

    nión.

    �Distrib

    uir la reu

    nión so

    bre las u

    niones.

    �Aplicar la reg

    la de red

    ucció

    n.

    40

    Dr. V

    íctor J. S

    osa S

    osa

    E2

    G2

    ENO

    E3

    G2

    ENO

    E1

    G1

    ENO

  • Reducció

    n por F

    V

    �Encuentra relacio

    nes in

    termedias in

    servibles (v

    acias).

    Sea la relació

    n R

    defin

    ida so

    bre lo

    s atributos A

    = {A1 , A

    2 ,

    ..., An } frag

    mentad

    a verticalm

    ente en

    Ri =

    ΠA’ (R

    ) donde

    A’

    ⊆A, en

    tonces:

    41

    Dr. V

    íctor J. S

    osa S

    osa

    A’

    ⊆A, en

    tonces:

    ΠD,K (R

    i ) es inserv

    ible si el co

    njunto de la p

    royecció

    n de

    los atrib

    utos D

    no está en

    A’.

    Reducció

    n por F

    V

    �Relacio

    nes in

    termedias in

    servibles (v

    acias).

    Ejem

    plo : E

    1= Π

    ENO, E

    NAME (E

    ); E2= Π

    ENO, T

    ITLE (E

    )

    SELECT

    ENAME

    FROM

    E

    42

    Dr. V

    íctor J. S

    osa S

    osa

    FROM

    E

    ΠENAME

    E1

    E2

    E1

    ΠENAME

    ENO

  • Reducció

    n por F

    HD

    �Reglas:

    �Distru

    buye las reu

    niones so

    bre las u

    niones.

    �Aplica la red

    ucció

    n de la reu

    nión para la frag

    mentació

    n

    horizo

    ntal.

    �Ejem

    plo:

    �G

    1 : G E

    NOE1

    43

    Dr. V

    íctor J. S

    osa S

    osa

    �G

    1 : G E

    NOE1

    �G

    2 : G E

    NOE2

    �E1 : σ

    TITLE = “P

    rogram

    mer”

    (E)

    �E2 : σ

    TITLE = “P

    rogram

    mer”

    (E)

    SELECT

    *

    FROM

    E, G

    WHERE

    G.ENO = E.ENO

    A

    D

    E.TITLE = “M

    ech. E

    ng.”

    Reducció

    n para una FHD

    Consulta g

    enérica

    ∪ ∪

    σTITLE=“M

    ech. E

    ng.”

    G

    ENO

    44

    Dr. V

    íctor J. S

    osa S

    osa

    Prim

    eras selecciones

    E1

    E2

    G1

    G2

    E2

    G1

    G2

    σTITLE=“M

    ech. E

    ng.”

    ENO

  • Reuniones so

    bre u

    niones

    G2

    G1

    E2

    ENO

    ENO

    σTITLE=“M

    ech. E

    ng.”

    Reducció

    n para una FHD

    45

    Dr. V

    íctor J. S

    osa S

    osa

    (Sub-árb

    ol izq

    uierd

    o)

    G2

    E2

    G1

    E2

    Elim

    inació

    n de las relacio

    nes in

    termedias v

    acías.

    G2

    E2

    ENO

    σTITLE=“M

    ech. E

    ng.”

    Reducció

    n para FM

    Combina las reg

    las especificad

    as:

    �Elim

    inar las relacio

    nes v

    acías generad

    as por seleccio

    nes

    contrad

    ictorias en

    fragmentos h

    orizo

    ntales.

    Elim

    inar las relacio

    nes in

    necesarias g

    enerad

    as por

    46

    Dr. V

    íctor J. S

    osa S

    osa

    �Elim

    inar las relacio

    nes in

    necesarias g

    enerad

    as por

    proyeccio

    nes en

    fragmentos v

    erticales.

    �Distrib

    uir reu

    niones so

    bre u

    niones p

    ara aislar y elim

    inar

    reuniones in

    necesarias.

  • Reducció

    n por F

    M

    Ejem

    plo:

    �Consid

    érese la siguien

    te

    fragmentació

    n m

    ixta:

    �E1 =

    σENO ≤

    “E4” (Π

    ΕΝ

    Ο,Ε

    ΝΑ

    ΜΕ (Ε

    ))

    ΠENAME

    σENO=“E

    5”

    ΠENAME

    47

    Dr. V

    íctor J. S

    osa S

    osa

    �E1 =

    σENO ≤

    “E4” (Π

    ΕΝ

    Ο,Ε

    ΝΑ

    ΜΕ (Ε

    ))�E2 =

    σENO >

    “E4” (Π

    ΕΝ

    Ο,Ε

    ΝΑ

    ΜΕ (Ε

    ))�E3 =

    ΠENO, T

    ITLE (Ε

    )

    �Consid

    érese la siguien

    te consulta:

    SELECT E

    NAME

    FROM E

    WHERE E

    NO = “E

    5”

    E1

    σENO=“E

    5”

    E2

    E3

    E2

    ENO

    Paso 3 -Optim

    izació

    n de C

    onsulta Global

    Entrad

    a: Consulta frag

    mentad

    a.

    Encontrar la m

    ejor (n

    o necesariam

    ente la ó

    ptim

    a) estrategia

    global.

    �Minim

    izar el costo

    de u

    na fu

    nció

    n.

    �Procesam

    iento de reu

    nión distrib

    uída.

    �“Frondoso”vs. árb

    oles lin

    eales.

    48

    Dr. V

    íctor J. S

    osa S

    osa

    �“Frondoso”vs. árb

    oles lin

    eales.

    �¿C

    uál relació

    n en

    viar a d

    ónde?

    �Envío co

    mpleto

    vs. en

    vío por d

    emanda.

    �Decid

    ir sobre el u

    so de sem

    ireuniones.

    �Las sem

    ireuniones ah

    orran

    en co

    municació

    n a co

    sta de

    más p

    rocesam

    iento lo

    cal.

    �Méto

    dos d

    e reunión.

    �Ciclo

    s anidados v

    s. reuniones o

    rdenadas (m

    erge jo

    in o

    hash

    join).

  • Optim

    izació

    n Basada en

    Costo

    �Espacio

    de so

    lució

    n.

    �El co

    njunto de ex

    presio

    nes d

    e álgebra eq

    uivalen

    tes

    (árboles d

    e consulta).

    �Funcio

    nes d

    e costo

    (en térm

    inos d

    e tiempo).

    �Costo

    I/O + co

    sto CPU + co

    sto de co

    municació

    n.

    �Estas p

    ueden ten

    er diferen

    tes peso

    s en diferen

    tes

    49

    Dr. V

    íctor J. S

    osa S

    osa

    entornos d

    istribuidos (L

    AN vs. W

    AN).

    �Pueden tam

    bién

    maxim

    izar el rendim

    iento.

    �Algoritm

    o de b

    úsqueda.

    �¿C

    ómo podem

    os m

    overn

    os d

    entro

    del esp

    acio de

    solució

    n?

    �Búsquedas ex

    haustiv

    as y alg

    oritm

    os h

    eurístico

    s

    (mejo

    ramien

    to iterativ

    o, tem

    plad

    o sim

    ulad

    o,

    algoritm

    os g

    enético

    s, etc.).

    Funcio

    nes d

    e Costo

    �Tiem

    po to

    tal (o co

    sto to

    tal).

    �Reducir cad

    a costo

    (en térm

    inos d

    e tiempo) p

    or

    componente.

    �Hacer el co

    sto del co

    mponente tan

    pequeño co

    mo sea

    posib

    le.

    50

    Dr. V

    íctor J. S

    osa S

    osa

    posib

    le.

    �Optim

    izar la utilizació

    n de lo

    s recurso

    s.

    �Increm

    enta el th

    roughput d

    el sistema.

    �Tiem

    po de resp

    uesta.

    �Hacer tan

    tas cosas co

    mo sea p

    osib

    le en paralelo

    .

    �Pudiera in

    crementar el tiem

    po to

    tal debido al

    increm

    ento de activ

    idad to

    tal.

  • Costo

    Total

    Sumato

    ria de to

    dos lo

    s factores d

    e costo

    :

    Costo

    total =

    costo

    de C

    PU + co

    sto I/O

    + co

    sto de co

    municació

    n

    donde

    51

    Dr. V

    íctor J. S

    osa S

    osa

    Costo

    de C

    PU

    = co

    sto por u

    nidad de in

    strucció

    n * No. d

    e instru

    cciones

    Costo

    de I/O

    = co

    sto por u

    nidad de I/O

    a disco

    * No. d

    e I/Os a d

    isco

    Costo

    de co

    municació

    n

    = in

    icio de m

    ensaje +

    transm

    isión

    Costo

    Total de lo

    s Facto

    res

    �Redes d

    e cobertu

    ra amplia.

    �Inicio

    de m

    ensaje y

    costo

    de tran

    smisió

    n alto

    s.

    �El co

    sto de p

    rocesam

    iento lo

    cal es bajo

    (main

    frames

    rápidas o

    minico

    mputad

    oras).

    52

    Dr. V

    íctor J. S

    osa S

    osa

    rápidas o

    minico

    mputad

    oras).

    �Relació

    n de co

    stos d

    e comunicació

    n a I/O

    = 20:1.

    �Redes d

    e área local.

    �Los co

    stos d

    e procesam

    iento lo

    cal y co

    municació

    n

    son sim

    ilares.

    �Relació

    n de co

    stos d

    e comunicació

    n a I/O

    = 1:1.6.

  • Tiem

    po de R

    espuesta

    Tiem

    po en

    tre el inicio

    y la term

    inació

    n de u

    na co

    nsulta.

    Tiem

    po de resp

    uesta

    = tiem

    po de C

    PU + tiem

    po I/O

    + tiem

    po de co

    municació

    n

    Tiem

    po de C

    PU

    = unidad de tiem

    po por in

    strucció

    n * No. d

    e instru

    cciones

    53

    Dr. V

    íctor J. S

    osa S

    osa

    = unidad de tiem

    po por in

    strucció

    n * No. d

    e instru

    cciones

    secuenciales

    Tiem

    po de I/O

    = unidad de tiem

    po I/O

    * No. de I/O

    s secuenciales

    Tiem

    po de co

    municació

    n

    = unidad de tiem

    po del m

    ensaje d

    e inicio

    * No. de

    mensajes secu

    enciales +

    tiempo de u

    nidad de

    transm

    isión * No. d

    e bytes secu

    enciales

    Ejem

    plo de F

    uncio

    nes d

    e Costo

    Suponem

    os q

    ue só

    lo se co

    nsid

    era el costo

    de co

    municació

    n.

    Tiem

    po to

    tal = 2 * tiem

    po de in

    icialización de m

    ensaje +

    Sitio

    1

    Sitio

    2

    Sitio

    3

    xunidades

    yunidades

    54

    Dr. V

    íctor J. S

    osa S

    osa

    Tiem

    po to

    tal = 2 * tiem

    po de in

    icialización de m

    ensaje +

    tiempo de u

    nidad de tran

    smisió

    n * (x+

    y)

    Tiem

    po de resp

    uesta =

    max {tiem

    po de en

    viar x

    de 1

    a 3,

    tiempo de en

    viar y

    de 2

    a 3}

    Tiem

    po de en

    viar x

    de 1

    a 3 = tiem

    po de in

    icialización de

    mensaje +

    tiempo de u

    nidad de tran

    smisió

    n * x

    Tiem

    po de en

    viar y

    de 2

    a 3 = tiem

    po de in

    icialización de

    mensaje +

    tiempo de u

    nidad de tran

    smisió

    n * y

  • Esta

    dística

    s de O

    ptim

    izació

    n

    �Facto

    r de co

    sto prim

    ario: tam

    año de relacio

    nes in

    termedias.

    �Para cad

    a relación R[A

    1 , A2 , ..., A

    n ] con frag

    mentos R

    1 , R2 , ...,

    Rr .

    �Longitu

    d de cad

    a atributo: lo

    ng(A

    i ).

    55

    Dr. V

    íctor J. S

    osa S

    osa

    i

    �Número

    de v

    alores d

    istintos p

    ara cada atrib

    uto en

    cada

    fragmento: ca

    rd(Π

    Ai R

    j ).

    �Valo

    res máxim

    o y m

    ínim

    o en

    el dominio de cad

    a

    atributo: m

    in(A

    i ), max(A

    i ).

    �Card

    inalid

    ad de cad

    a dominio: ca

    rd(d

    om[A

    i ]).

    �Card

    inalid

    ad de cad

    a fragmento: ca

    rd(R

    j ).

    Esta

    dística

    s de O

    ptim

    izació

    n

    �Facto

    r de selectiv

    idad de cad

    a operació

    n para relacio

    nes.

    �Para reu

    niones

    FS

    (R,S) =

    card(R

    S)

    56

    Dr. V

    íctor J. S

    osa S

    osa

    �Mayor p

    recisión => m

    ayor co

    sto para m

    anten

    er.

    FS

    (R,S) =

    card(R

    S)

    card(R) *

    card(S)

  • Tamaño de R

    elacio

    nes In

    termedias

    Selecció

    n.

    tamaño(R) =

    card(R) *

    long(R)

    card(σ

    F (R) =

    FS

    σ (F) *

    card(R)

    donde

    1

    57

    Dr. V

    íctor J. S

    osa S

    osa

    FS

    σ (A =

    valo

    r) =1

    card(∏

    A (R))

    FS

    σ (A >

    valo

    r) =max(A

    ) -va

    lor

    max(A

    ) -min(A)

    FS

    σ (A <

    valo

    r) =va

    lor-min(A)

    max(A

    ) -min(A)

    Tamaño de R

    elacio

    nes In

    termedias

    y donde

    FS

    σ ( p(A

    i ) ∧ p(A

    j ) )

    = F

    Sσ ( p

    (Ai )) *

    FS

    σ ( p(A

    j ) )

    58

    Dr. V

    íctor J. S

    osa S

    osa

    = F

    Sσ ( p

    (Ai )) *

    FS

    σ ( p(A

    j ) )

    FS

    σ ( p(A

    i ) ∨ p(A

    j ) )

    = F

    Sσ ( p

    (Ai )) +

    FS

    σ ( p(A

    j ) )

    -(F

    Sσ ( p

    (Ai )) *

    FS

    σ ( p(A

    j ) ) )

    FS

    σ ( A ∈

    {va

    lores}

    )

    = F

    Sσ ( A

    =va

    lor) *

    card({

    valo

    res})

  • Tamaño de R

    elacio

    nes In

    termedias

    Proyecció

    n.

    card(Π

    K (R)) =

    card(R)

    Producto

    cartesiano.

    card(R

    ×S) =

    card(R) *

    card(S)

    59

    Dr. V

    íctor J. S

    osa S

    osa

    Unión.

    Lím

    ite superio

    r: card(R

    ∪S) =

    card(R) +

    card(S)

    Lím

    ite inferio

    r: card(R

    ∪S) =

    max{

    card(R), ca

    rd(S)}

    Diferen

    cia.

    Lím

    ite superio

    r: card(R

    -S) =

    card(R)

    Lím

    ite inferio

    r: 0

    Tamaño de R

    elacio

    nes In

    termedias

    Reunión.

    �Caso

    especial. A

    es una llav

    e de R

    y B

    es una llav

    e

    forán

    ea de S

    ; Aes u

    na llav

    e forán

    ea de R

    y B

    es una

    llave d

    e S.

    card(R

    A=B S

    ) = ca

    rd(R)

    60

    Dr. V

    íctor J. S

    osa S

    osa

    card(R

    A=B S

    ) = ca

    rd(R)

    �Caso

    general.

    card(R

    S

    ) = FS

    * ca

    rd(R) *

    card(S)

    Sem

    ireunión.

    card(R

    AS

    ) = F

    S (S

    .A) *

    card(R)

    donde

    FS

    (R A

    S) =

    FS

    (S.A) =

    card(Π

    Α(S))

    card(d

    om[A])

  • �IN

    GRES.

    �Dinám

    ica.

    �Interp

    retativa.

    Optim

    izació

    n de C

    onsultas C

    entra

    lizada

    61

    Dr. V

    íctor J. S

    osa S

    osa

    �Interp

    retativa.

    �System

    R.

    �Estática.

    �Búsqueda ex

    haustiv

    a.

    Algoritm

    o de I

    GRES

    �Desco

    mponer cad

    a consulta m

    ultiv

    ariable en

    una

    secuencia d

    e consultas m

    onovariab

    le con una v

    ariable

    común.

    �Procesa cad

    a una m

    edian

    te un procesad

    or d

    e consultas

    monovariab

    le.

    62

    Dr. V

    íctor J. S

    osa S

    osa

    monovariab

    le.

    �Elig

    e un plan

    inicial d

    e ejecució

    n (h

    eurística).

    �Ordena el resto

    consid

    erando tam

    años d

    e

    relaciones in

    termedias

    Nota: n

    o m

    antien

    e inform

    ación estad

    ística.

  • Algoritm

    o de D

    escomposició

    n de I

    GRES

    �Reem

    plazo

    de v

    ariable. S

    e sustitu

    ye u

    na v

    ariable n

    de la

    consulta q

    por u

    na serie d

    e consultas

    q1 →

    q2 →

    ... → q

    n

    donde q

    i usa el resu

    ltado de q

    i-1 .

    Separació

    n de co

    nsulta. S

    e separa la co

    nsulta q

    en q’ →

    63

    Dr. V

    íctor J. S

    osa S

    osa

    �Separació

    n de co

    nsulta. S

    e separa la co

    nsulta q

    en q’ →

    q’’ d

    onde q

    ’ yq’’ tien

    en una v

    ariable co

    mún, la cu

    al es el

    resultad

    o de q

    ’.

    �Sustitu

    ción de tu

    pla

    . Se reem

    plaza el v

    alor d

    e cada tu

    pla

    con lo

    s valo

    res actuales, y

    se simplifica la co

    nsulta.

    q(V

    1 , V2 , ...,

    Vn ) →

    {q’ (t1

    i , V2 , V

    3 , ...,V

    n ), t1i ∈

    R1 }

    Separació

    n de C

    onsulta

    SELECT

    V2 .A

    2 , V3 .A

    3 , ..., Vn .A

    n

    FROM

    R1V

    1 , ..., Rn V

    n

    WHERE

    P1 (V

    1 .A1 ’)

    A

    D

    P2 (V

    1 .A1 , V

    2 .A2 , ..., V

    n .An )

    q:

    64

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT

    V1 .A

    1I

    TO

    R1 ’

    FROM

    R1V

    1

    WHERE

    P1 (V

    1 .A1 )

    SELECT V

    2 .A2 , V

    3 .A3 , ..., V

    n .An

    FROM

    R1 ’ V

    1 , R2V

    2 , ..., RnV

    n

    WHERE

    P2 (V

    1 .A1 , V

    2 .A2 , ..., V

    n .An )

    ⇓q’:

    q’’:

  • Ejem

    plo de S

    eparació

    n

    SELECT

    E.ENAME

    FROM

    E, G

    , J

    WHERE

    E.ENO = G.ENO

    A

    D

    G.JN

    O = J.JN

    O

    A

    D

    J.JNAME = “C

    AD/CAM”

    q:

    65

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT

    J.JNO I

    TO

    JVAR

    FROM

    J

    WHERE

    J.JNAME = “C

    AD/CAM”

    SELECT

    E.ENAME

    FROM

    E, G

    , JVAR

    WHERE

    E.ENO = G.ENO

    A

    D

    G.JN

    O = JV

    AR.JN

    O

    ⇓q11 :

    q’:

    Ejem

    plo de S

    eparació

    n

    SELECT

    E.ENAME

    FROM

    E, G

    , JVAR

    WHERE

    E.ENO = G.ENO

    A

    D

    G.JN

    O = JV

    AR.JN

    O

    q’:

    66

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT

    G.ENO I

    TO

    GVAR

    FROM

    G, JV

    AR

    WHERE

    G.JN

    O = JV

    AR.JN

    O

    q12 :

    SELECT

    E.ENAME

    FROM

    E, G

    VAR

    WHERE

    E.ENO = GVAR.ENO

    q13 :

  • Sustitu

    ción de T

    uplas

    �La co

    nsulta q

    11 es m

    ono-variab

    le; mien

    tras que q

    12y q

    13 están

    sujetas a su

    stitució

    n de tu

    plas.

    �Suponem

    os q

    ue G

    VAR tien

    e únicam

    ente d

    os tu

    plas: <

    E1> y

    <E2>.

    �La su

    stitució

    n para q

    13queda d

    e la siguien

    te manera

    67

    Dr. V

    íctor J. S

    osa S

    osa

    SELECT

    E.E

    2AM

    E

    FROM

    E

    WHERE

    E.E

    2O=“E1”

    q131 :

    SELECT

    E.E

    2AM

    E

    FROM

    E

    WHERE

    E.E

    2O=“E2”

    q132 :

    Algoritm

    o de S

    ystem

    R

    �Consultas sim

    ples (ejem

    . mono-relació

    n) so

    n

    ejecutad

    as de acu

    erdo al m

    ejor cam

    ino de acceso

    �Ejecu

    ción de Jo

    ins

    68

    Dr. V

    íctor J. S

    osa S

    osa

    �Ejecu

    ción de Jo

    ins

    2.1 Determ

    ina el p

    osib

    le orden de lo

    s joins

    2.2 Determ

    ina el co

    sto de cad

    a orden

    2.3 Elig

    e el orden de jo

    in co

    n co

    sto m

    ínim

    o

  • Algoritm

    o de S

    ystem

    R

    Para lo

    s Joins, tien

    e 2 alg

    oritm

    os altern

    ativos:

    �Ciclo

    s Anidados

    Para cada tu

    pla d

    e relación ex

    terna (card

    inalid

    ad n

    1 )

    Para cada tu

    pla d

    e relación in

    terna (card

    inalid

    ad n

    2 )

    join de d

    os tu

    plas si el p

    redicad

    o del jo

    in es v

    erdadero69

    Dr. V

    íctor J. S

    osa S

    osa

    join de d

    os tu

    plas si el p

    redicad

    o del jo

    in es v

    erdadero

    Fin

    Fin

    �Complejid

    ad: n

    1 * n

    2

    �Mezclar Jo

    in

    Ordena relacio

    nes

    Mezcla relacio

    nes

    �Complejid

    ad: n

    1 + n

    2Si las relacio

    nes so

    n prev

    iamente

    ordenadas y

    equijo

    in

    Algoritm

    o de S

    ystem

    R -Ejem

    plo

    Nombres d

    e emplead

    os q

    ue trab

    ajan en

    el

    proyecto

    CAD/CAM

    Asumir:

    �E tien

    e un ín

    dice so

    bre E

    NO

    70

    Dr. V

    íctor J. S

    osa S

    osa

    �E tien

    e un ín

    dice so

    bre E

    NO

    �G tien

    e un ín

    dice so

    bre JN

    O

    �J tien

    e un ín

    dice so

    bre JN

    O y un ín

    dice so

    bre JN

    AME

    G

    EJ

    JNO

    ENO

  • Algoritm

    o de S

    ystem

    R -Ejem

    plo (co

    nt..)

    �Elig

    e el mejo

    r camino de acceso

    para cad

    a relación

    �E: b

    úsqueda secu

    encial (n

    o hay selecció

    n so

    bre E

    )

    �G: b

    úsqueda secu

    encial (n

    o selecció

    n so

    bre G

    )

    �J: ín

    dice so

    bre JN

    AME (h

    ay una selecció

    n so

    bre

    J basad

    o en

    JNAME)

    71

    Dr. V

    íctor J. S

    osa S

    osa

    J basad

    o en

    JNAME)

    �Determ

    inar el m

    ejor o

    rden de Jo

    in�

    E G

    J

    �G J E

    �J G

    E

    �G E

    J�

    E X

    J G

    �J X

    E G

    �Seleccio

    nar el m

    ejor o

    rden basad

    o en

    los co

    stos d

    el Join

    evalu

    ado de acu

    erdo a lo

    s dos m

    étodos

    Algoritm

    o de S

    ystem

    R

    Altern

    ativas

    EG

    J

    E G

    E x J G

    E G

    x J J G

    J x E

    72

    Dr. V

    íctor J. S

    osa S

    osa

    E G

    E x J G

    E G

    x J J G

    J x E

    pruned p

    runed p

    runed p

    runed

    (G E

    ) J (J G

    ) E

    ((G E

    ) J)

    ((J G) E

    )

    El m

    ejor o

    rden del jo

    in to

    tal es uno de

  • Algoritm

    o de S

    ystem

    R

    �((J G

    ) E) tien

    e un ín

    dice ú

    til sobre lo

    s atributos d

    el

    select y accesa d

    irectamente lo

    s atributos d

    el Join de G

    y E

    �Por lo

    tanto, eleg

    irlo co

    n lo

    s siguien

    tes méto

    dos d

    e

    73

    Dr. V

    íctor J. S

    osa S

    osa

    �Por lo

    tanto, eleg

    irlo co

    n lo

    s siguien

    tes méto

    dos d

    e

    acceso:�

    Seleccio

    nar J u

    sando el ín

    dice so

    bre JN

    AME

    �entonces u

    nir co

    n G utilizan

    do el in

    dice so

    bre JN

    O

    �desp

    ués u

    nir co

    n E utilizan

    do el ín

    dice so

    bre E

    NO

    Ordenar Join en

    Consultas de F

    ragmentos

    �Ordenan Jo

    ins

    �IN

    GRES Distrib

    uido

    �System

    R*

    74

    Dr. V

    íctor J. S

    osa S

    osa

    �System

    R*

    �Ordenan Sem

    iJoins

    �SDD-1

    �Algoritm

    os A

    pers-H

    evner-Y

    ao

  • Ordenar Join

    Consid

    erar dos relacio

    nes so

    lamente

    Si ta

    maño(R

    ) < ta

    maño(S)

    Si ta

    maño(R

    ) > ta

    maño(S)

    RS

    75

    Dr. V

    íctor J. S

    osa S

    osa

    Con m

    últip

    les relaciones es m

    ás complejo

    debido a

    que ex

    isten m

    uchas altern

    ativas

    �Procesar el co

    sto de to

    das las altern

    ativas y

    evalu

    ar la mejo

    r

    * Es n

    ecesario procesar el tam

    año de relacio

    nes

    interm

    edias lo

    cual es d

    ificil

    �Uso de h

    eurísticas

    Ordenar Join -Ejem

    plo

    Consid

    erar

    J JNOE E

    NOG

    Sitio

    2

    G

    76

    Dr. V

    íctor J. S

    osa S

    osa

    Sitio

    1Sitio

    3

    G

    EJ

    ENO

    JNO

  • Ordenar Join -Ejem

    plo

    Altern

    ativas d

    e ejecució

    n:

    E →

    Sitio

    2

    Sitio

    2 procesa E

    ’=E G

    E’ →

    Sitio

    3

    Sitio

    3 procesa E

    ’ J

    G →

    Sitio

    1

    Sitio

    1 procesa E

    ’=E G

    E’ →

    Sitio

    3

    Sitio

    3 procesa E

    ’ J

    1.

    2.

    77

    Dr. V

    íctor J. S

    osa S

    osa

    Sitio

    3 procesa E

    ’ J

    G →

    Sitio

    3

    Sitio

    3 procesa G

    ’=G J

    G’ →

    Sitio

    1

    Sitio

    1 procesa G

    ’ E

    E →

    Sitio

    2

    J →Sitio

    2

    Sitio

    2 procesa E

    J G

    Sitio

    3 procesa E

    ’ J

    J →Sitio

    2

    Sitio

    2 procesa J’=

    J G

    J’ →Sitio

    1

    Sitio

    1 procesa J’ E

    3.5.

    4.

    Algoritm

    os de S

    emiJoin

    Consid

    erar el join de d

    os relacio

    nes:

    R[A

    ] (ubicad

    a en el sitio

    1)

    S[A

    ] (ubicad

    a en el sitio

    2)

    Altern

    ativas:

    78

    Dr. V

    íctor J. S

    osa S

    osa

    Altern

    ativas:

    1 H

    acer el join R A

    S

    2 E

    fectuar u

    no de lo

    s semijo

    ins eq

    uivalen

    tes

    R A

    S ⇔

    (R A

    S) A

    S

    ⇔R A

    (S A

    R)

    ⇔(R A

    S) A

    (S A

    R)

  • Algoritm

    os de S

    emiJoin

    �Efectu

    ar el Join

    �Enviar R

    al Sitio

    2

    �El S

    itio 2 Procesa R

    AS

    Consid

    erar Sem

    iJoin (R

    AS) A

    S

    79

    Dr. V

    íctor J. S

    osa S

    osa

    Consid

    erar Sem

    iJoin (R

    AS) A

    S

    �S’←

    ΠΑ

    (S)

    �S’ →

    Sitio

    1

    �Sitio

    1 procesa R

    ’ = R A

    S’

    �R’ →

    Sitio

    2

    �Sitio

    2 procesa R

    ’ AS

    Sem

    iJoin es m

    ejor si

    tamaño(Π

    Α(S

    )) + ta

    maño(R A

    S)) <

    tamaño(R)

    Procesa

    mien

    to de C

    onsultas D

    istribuido

    Algoritm

    os

    Tiem

    po

    Optim

    o

    Objetiv

    o

    de la fu

    n.

    Facto

    res a

    optim

    .

    Topología

    de R

    ed

    Sem

    i

    Joins

    Estad

    isticas*Frag

    men.

    INGRES

    Distrib

    uido

    Dinám

    icoTiem

    po de

    Resp

    uesta

    o Costo

    Total

    Tam

    año del

    Mensaje,

    Procesam

    iento

    General o

    Brao

    dcast

    no

    1Horiz.

    R*

    Estático

    Costo

    Total

    #Msg, T

    am.

    .Msg, IO

    , CPU

    General o

    Local

    no

    1,2

    No

    80

    Dr. V

    íctor J. S

    osa S

    osa

    R*

    Estático

    Total

    .Msg, IO

    , CPU

    Local

    no

    1,2

    No

    SDD-1

    Estático

    Costo

    Total

    Tam

    . Msg

    General

    si1,3,4,5

    No

    AHY

    Estático

    Tiem

    po de

    Resp

    uesta

    o Costo

    Total

    #Msg M

    sg size,

    General

    si1,3,5

    No

    1: card

    inalid

    ad de la relació

    n, 2

    : número

    de v

    alores ú

    nico

    s por atrib

    uto, 3

    : factor d

    e selectividad del jo

    in

    4: tam

    año de p

    royecció

    n so

    bre cad

    a atributo jo

    in, 5

    : tamaño del atrib

    uto y de la tu

    pla

  • Algoritm

    o de I

    GRES Distrib

    uido

    Igual q

    ue la v

    ersión cen

    tralizada ex

    cepto

    �El m

    ovim

    iento de relacio

    nes (y

    fragmentos) n

    ecesita

    ser consid

    erado

    81

    Dr. V

    íctor J. S

    osa S

    osa

    ser consid

    erado

    �Optim

    ización co

    n resp

    ecto al p

    osib

    le costo

    de

    comunicacio

    nes o

    tiempo de resp

    uesta

    Algoritm

    o de R

    *

    �El co

    sto de fu

    nció

    n in

    cluye p

    rocesam

    iento lo

    cal así como

    transm

    isión

    �Consid

    era sólo jo

    ins

    82

    Dr. V

    íctor J. S

    osa S

    osa

    �Búsqueda ex

    haustiv

    a

    �Compilació

    n

  • Algoritm

    o de R

    *

    Eficien

    cia en Jo

    ins

    �Traslad

    a todo

    �Gran

    des tran

    sferencia d

    e dato

    s

    �Pequeño número

    de m

    ensajes

    �Es m

    ejor si las relacio

    nes so

    n pequeñas

    83

    Dr. V

    íctor J. S

    osa S

    osa

    �Es m

    ejor si las relacio

    nes so

    n pequeñas

    �Ir a B

    uscar

    �número

    de m

    ensajes =

    O(card

    inalid

    ad de relació

    n

    extern

    a)

    �La tran

    sferencia d

    e dato

    s por m

    ensaje es m

    ínim

    a

    �Es m

    ejor si las relacio

    nes so

    n gran

    des y

    la

    selectividad es b

    uena

    Algoritm

    o de R

    * -

    Partició

    n Vertica

    l y Joins

    Mover tu

    plas d

    e una relació

    n ex

    terior al sitio

    de u

    na

    relación in

    terior

    1.

    (a) Extraer tu

    plas ex

    teriores

    84

    Dr. V

    íctor J. S

    osa S

    osa

    (a) Extraer tu

    plas ex

    teriores

    (b) E

    nviarlas al sitio

    de la relació

    n in

    terior

    (c) Unirlas co

    mo vayan lleg

    ando

    Costo

    Total =

    costo

    (extraer tu

    plas ex

    teriores cu

    alificadas)

    + no. de tu

    plas ex

    teriores fetch

    ed *

    costo

    (extraer tu

    plas in

    teriores calificad

    as)

    + co

    st. msg * (n

    o. tu

    plas ex

    teriores fetch

    ed *

    tamaño prom. d

    e tuplas ex

    teriores) / tam

    año m

    sg.

  • Algoritm

    o de R

    * -

    Partició

    n Vertica

    l y Joins

    Mover tu

    plas d

    e relación in

    terior al sitio

    de

    relación ex

    terior

    2.

    No se p

    ueden unir co

    mo van lleg

    ando; n

    ecesitan ser alm

    acenadas

    85

    Dr. V

    íctor J. S

    osa S

    osa

    Costo

    Total =

    costo

    (extraer tu

    plas ex

    teriores cu

    alificadas)

    + no. de tu

    plas ex

    teriores fetch

    ed *

    costo

    (extraer tu

    plas in

    teriores m

    atching del alm

    acén tem

    poral)

    + co

    sto(ex

    traer tuplas in

    teriores cu

    alificadas)

    + co

    sto(alm

    acenar to

    das las tu

    plas in

    ternas cu

    alificadas en

    almacén

    temporal)

    + co

    st. msg * (n

    o. tu

    plas in

    teriores fetch

    ed *

    tamaño prom. de tu

    pla in

    terior) / tam

    año m

    sg.

    Algoritm

    o de R

    * -

    Partició

    n Vertica

    l y Joins

    Mover relacio

    nes in

    ternas y

    extern

    as a otro

    sitio3.

    Costo

    Total =

    costo

    (extraer tu

    plas ex

    teriores cu

    alificadas)

    + co

    sto(ex

    traer tuplas in

    teriores cu

    alificadas)

    + co

    sto(alm

    acenar tu

    plas in

    teriores en

    alm. )

    86

    Dr. V

    íctor J. S

    osa S

    osa

    + co

    sto(alm

    acenar tu

    plas in

    teriores en

    alm. )

    almacén

    temporal)

    + co

    st. msg * (n

    o. tu

    plas ex

    teriores fetch

    ed *

    tamaño prom. de tu

    pla ex

    terior) / tam

    año m

    sg.

    + co

    st. msg * (n

    o. tu

    plas in

    teriores fetch

    ed *

    tamaño prom. de tu

    pla in

    terior) / tam

    año m

    sg.

    + no. de tu

    plas ex

    teriores fetch

    ed *

    costo

    (extraer tu

    plas in

    teriores d

    el almacén

    temporal)

  • Algoritm

    o de R

    * -

    Partició

    n Vertica

    l y Joins

    Fetch

    inner tu

    ples as n

    edded

    4.

    (a) Extraer tu

    plas cu

    alificadas en

    sitio de relació

    n ex

    terior

    (b) E

    nviar req

    uisició

    n co

    nten

    iendo jo

    in co

    lumna v

    alor(s)

    para tu

    plas ex

    teriores al sitio

    de la relació

    n in

    terior

    (c) Extraer tu

    plas in

    teriores q

    ue ap

    arean en

    el sitio de relació

    n in

    terior

    87

    Dr. V

    íctor J. S

    osa S

    osa

    (c) Extraer tu

    plas in

    teriores q

    ue ap

    arean en

    el sitio de relació

    n in

    terior

    (d) E

    nviar las tu

    plas in

    teriores q

    ue ap

    arean al sitio

    de la relació

    n ex

    terior

    (e) Unir co

    mo vayan lleg

    ando

    Costo

    Total =

    costo

    (extraer tu

    plas ex

    teriores cu

    alificadas)

    + co

    st. msg * (n

    o. tu

    plas ex

    teriores fetch

    ed)

    + no. de tu

    plas ex

    teriores fetch

    ed *

    (no. de tu

    plas in

    teriores fetch

    ed * tam

    año prom.

    de tu

    pla in

    terior *

    cost. m

    sg. / tam

    año m

    sg.

    + no. de tu

    plas ex

    teriores fetch

    ed * co

    sto(ex

    traer tuplas

    interio

    res que ap

    arean para u

    n valo

    r exterio

    r)

    Algoritm

    o de S

    DD -1

    �Basad

    o en

    el algortim

    o de S

    ubien

    do la C

    uesta (H

    ill Clim

    bing)

    �No Sem

    ijoins

    �No Replicació

    n

    88

    Dr. V

    íctor J. S

    osa S

    osa

    �No Replicació

    n

    �No frag

    mentació

    n

    �No es co

    nsid

    erado el co

    sto de tran

    sferir el resultad

    o

    al sitio del u

    suario

    desd

    e el sitio del resu

    ltado fin

    al

    �Puede m

    inim

    izar tanto el tiem

    po to

    tal o el tiem

    po

    de resp

    uesta

  • Algoritm

    o Hill C

    limbing

    Asumir q

    ue el jo

    in esta en

    tre tres relaciones.

    Paso

    1: H

    acer procesam

    iento in

    icial

    Paso

    2: S

    elección de la so

    lució

    n factib

    le inicial (E

    S0 )

    2.1 Determ

    inar el sitio

    candidato

    para el resu

    ltado -sitio

    donde

    una relació

    n referen

    ciada en

    la consulta ex

    ista

    89

    Dr. V

    íctor J. S

    osa S

    osa

    una relació

    n referen

    ciada en

    la consulta ex

    ista

    2.2 Calcu

    lar el costo

    de tran

    sferir todas lo

    s otras relacio

    nes

    refrenciad

    as a cada sitio

    candidato

    2.3 E

    S0= sitio

    candidato

    con co

    sto m

    ínim

    o

    Paso

    3: D

    eterminar d

    ivisio

    nes can

    didatas d

    e ES0en {ES1 ,E

    S2 }

    3.1 E

    S1consiste d

    e enviar u

    na d

    e las relaciones al o

    tro sitio

    de la relació

    n

    3.2 E

    S2consiste d

    e enviar el jo

    in de las relacio

    nes al sitio

    del

    resultad

    o fin

    al

    Algoritm

    o Hill C

    limbing

    Paso

    4: R

    emplazar E

    S0con el p

    lan de d

    ivisió

    n el cu

    al

    da:

    costo

    (ES1 ) +

    costo

    (join lo

    cal) + co

    sto(E

    S2 ) <

    costo

    (ES0 )

    90

    Dr. V

    íctor J. S

    osa S

    osa

    Paso

    5: R

    ecursiv

    amente ap

    licar paso

    s 3-4 so

    bre E

    S1y E

    S2

    hasta q

    ue n

    inguno de lo

    s plan

    es pueda ser en

    contrad

    o

    Paso

    6: V

    erificar por tran

    smisio

    nes red

    undantes en

    el plan

    final y

    eliminarlas.

  • Algoritm

    o Hill C

    limbing -Ejem

    plo

    ¿Cuales so

    n lo

    s salarios d

    e los in

    geniero

    s que trab

    ajan en

    el

    proyecto

    CAD/CAM?

    Relació

    nTam

    año

    Sitio

    ΠSAL(S

    TITLE(E

    ENO(G

    JNO(σ

    JNAME=“C

    AD/CAM”(J)))))

    91

    Dr. V

    íctor J. S

    osa S

    osa

    Relació

    nTam

    año

    Sitio

    ESJG

    84410

    1234

    Asumir:El tam

    año de las relacio

    nes es d

    efinido por su

    cardinalid

    ad

    Minim

    izar costo

    total

    El co

    sto de tran

    smisió

    n en

    tre dos sitio

    s es 1

    Ignorar el co

    sto de p

    rocesam

    iento lo

    cal

    Algoritm

    o Hill C

    limbing -Ejem

    plo

    Relació

    nTam

    año

    Sitio

    Paso

    1:

    Selecció

    n so

    bre J; el resu

    ltado tien

    e cardinalid

    ad 1

    92

    Dr. V

    íctor J. S

    osa S

    osa

    Relació

    nTam

    año

    Sitio

    ESJG

    84410

    1234

  • Algoritm

    o Hill C

    limbing -Ejem

    plo

    Paso

    2: S

    olució

    n factib

    le inicial

    Altern

    ativa 1

    : El sitio

    de resu

    ltado es el sitio

    1

    Costo

    Total =

    costo

    (S →

    Sitio

    1) +

    costo

    (G→Sitio

    1) +

    costo

    (J→Sitio

    1)

    = 4

    + 10 + 1 = 15

    93

    Dr. V

    íctor J. S

    osa S

    osa

    Altern

    ativa 2

    : El sitio

    de resu

    ltado es el sitio

    2

    Altern

    ativa 3

    : El sitio

    de resu

    ltado es el sitio

    3

    Costo

    Total =

    8 + 10 + 1 = 19

    Costo

    Total =

    8 + 4 + 10 = 22

    Altern

    ativa 4

    : El sitio

    de resu

    ltado es el sitio

    4

    Costo

    Total =

    8 + 4 + 10 = 22

    Por lo

    Tanto E

    S0= {E

    →Sitio

    4; S

    →Sitio

    4; J→

    Sitio

    4}

    Algoritm

    o Hill C

    limbing -Ejem

    plo

    Paso

    3: D

    eterminar d

    ivisio

    nes can

    didato

    Altern

    ativa 1

    : {ES1 , E

    S2 , E

    S3 } donde

    ES1 : E

    →Sitio

    2

    ES2 : (E

    S) →

    Sitio

    4

    94

    Dr. V

    íctor J. S

    osa S

    osa

    ES2 : (E

    S) →

    Sitio

    4

    ES3 : J →

    Sitio

    4

    Altern

    ativa 2

    : {ES1 , E

    S2 , E

    S3 } donde

    ES1 : S

    →Sitio

    1

    ES2 : (S

    E) →

    Sitio

    4

    ES3 : J →

    Sitio

    4

  • Algoritm

    o Hill C

    limbing -Ejem

    plo

    Paso

    4: D

    eterminar lo

    s costo

    s de cad

    a alternativ

    a de d

    ivisió

    n

    costo

    (Altern

    ativa 1

    ) = co

    sto(E →

    Sitio

    2) +

    costo

    ((E S

    ) →Sitio

    4) +

    costo

    (J →Sitio

    4)

    = 8

    + 8 +1 = 17

    95

    Dr. V

    íctor J. S

    osa S

    osa

    costo

    (Altern

    ativa 2

    ) = co

    sto(E →

    Sitio

    1) +

    costo

    ((S E

    ) →Sitio

    4) +

    costo

    (J →Sitio

    4)

    = 4

    + 8 +1 = 13

    Decisió

    n: N

    O DIV

    IDIR

    Paso

    5: E

    S0es el “m

    ejor”

    Paso

    6: N

    o hay tran

    smisio

    nes red

    undantes

    Algoritm

    o Hill C

    limbing

    Problem

    as:

    �Algoritm

    o av

    aro →

    determ

    ina u

    na so

    lució

    n in

    icial factible

    e iterativam

    ente trata d

    e mejo

    rarla

    �Si h

    ay un m

    ínim

    o lo

    cal no podría en

    contrar m

    ínim

    o global

    96

    Dr. V

    íctor J. S

    osa S

    osa

    �Si el p

    lan óptim

    o tien

    e un alto

    costo

    inicial, n

    o lo

    encontrará y

    a que n

    o lo

    eligirá co

    mo la so

    lució

    n

    factible in

    icial

    Ejem

    plo : U

    n plan

    mejo

    r esJ →

    Sitio

    4

    G’ =

    (J G) →

    Sitio

    1

    (G’

    E) →

    Sitio

    2

    Costo

    Total =

    1 + 2 + 2 = 5

  • Algoritm

    o SDD -1

    Paso

    1: E

    n la estrateg

    ia de ejecu

    ción (llam

    ado ES), in

    cluye

    todo el p

    rocesam

    iento lo

    cal

    Inicializació

    n

    Paso

    2: R

    efleja los efecto

    s del p

    rocesam

    iento lo

    cal sobre el

    97

    Dr. V

    íctor J. S

    osa S

    osa

    Paso

    2: R

    efleja los efecto

    s del p

    rocesam

    iento lo

    cal sobre el

    perfil d

    e la base d

    e dato

    s

    Paso

    3: C

    onstru

    ye u

    n co

    njunto de o

    peracio

    nes sem

    ijoin

    benéficas (B

    S) co

    mo sig

    ue:

    BS= 0

    Por cad

    a semijo

    in SJi

    BS

    ← B

    S∪

    SJisi co

    sto(S

    Ji) <

    ben

    eficio(S

    Ji)

    Algoritm

    o SDD-1 -Ejem

    plo

    Consid

    erar la siguien

    te consulta

    SELECT

    *

    FROM

    E, G

    , J

    WHERE

    E.ENO = G.ENO

    A

    D

    G.JN

    O = J.JN

    O

    La cu

    al tiene el sig

    uien

    te grafo

    y estad

    ísticas:

    98

    Dr. V

    íctor J. S

    osa S

    osa

    La cu

    al tiene el sig

    uien

    te grafo

    y estad

    ísticas:

    EG

    JENO

    JNO

    sitio 1

    sitio 2

    sitio 3

    relació

    ncard

    tam. tu

    pla

    tam. re

    lació

    n

    EGJ

    30

    100

    50

    50

    30

    40

    1500

    3000

    2000

    atrib

    uto

    SF

    tamaño(Π

    atrib

    uto)

    E.E

    NO

    G.E

    NO

    G.JNO

    J.JNO

    .3.81.4

    120

    400

    400

    200

  • Algoritm

    o SDD-1 -Ejem

    plo

    �Sem

    ijoins b

    eneficio

    sos:

    �SJ1= G E

    , cuyo beneficio

    es 2100 = (1

    -0.3) *

    3000

    y el co

    sto es 1

    20

    �SJ2= G J, cu

    yo beneficio

    es 1800 = (1

    -0.4) *

    3000

    99

    Dr. V

    íctor J. S

    osa S

    osa

    �SJ2= G J, cu

    yo beneficio

    es 1800 = (1

    -0.4) *

    3000

    y el co

    sto es 2

    00

    �Sem

    ijoins n

    o beneficio

    sos:

    �SJ3= E G

    , cuyo beneficio

    es 300 = (1

    -0.8) *

    1500

    y el co

    sto es 4

    00

    �SJ4= G J, cu

    yo beneficio

    es 0 y el co

    sto es 4

    00

    Algoritm

    o SDD-1

    Proceso

    iterativo

    Paso

    4: R

    emueve el m

    ás beneficio

    so SJide B

    Sy lo

    agreg

    a a ES

    Paso

    5: M

    odifica el p

    erfil de la b

    ase de d

    atos aco

    rdem

    ente

    100

    Dr. V

    íctor J. S

    osa S

    osa

    Paso

    5: M

    odifica el p

    erfil de la b

    ase de d

    atos aco

    rdem

    ente

    Paso

    6: M

    odifica B

    Sapropiad

    amente

    �Procesa n

    uevos v

    alores b

    eneficio

    /costo

    �Verifica si alg

    ún nuevo sem

    ijoin necesita ser

    inclu

    ido en

    BS

    Paso

    7: S

    i BS

    ≠0, reg

    resa al paso

    4

  • Algoritm

    o SDD-1 -Ejem

    plo

    �Iteració

    n 1:

    �Rem

    over S

    J1de B

    Sy ag

    regarlo

    a ES.

    �Actu

    alizar estadísticas d

    e Gta

    maño(G

    ) = 900 (=

    3000*0.3)

    SF

    (G.ENO) =

    ~0.8*0.3 = 0.24

    101

    Dr. V

    íctor J. S

    osa S

    osa

    �Iteració

    n 2:

    �Dos sem

    ijoins b

    eneficio

    sos:

    SJ2= G’ J, cu

    yo beneficio

    es 540 = (1

    -0.4)*900 y el co

    sto es 2

    00

    SJ3= E G

    ’,cuyo beneficio

    es 1400 = (1

    -0.24)*1500 y el co

    sto

    es 400

    �Agreg

    ar SJ3a E

    S

    �Actu

    alizar estadísticas d

    e Eta

    maño(E) =

    360 (=

    1500*0.24)

    SF

    (E.ENO) =

    ~0.3*0.24 = 0.072

    Algoritm

    o SDD-1 -Ejem

    plo

    �Iteració

    n 3:

    �No nuevos sem

    ijoins b

    eneficio

    sos

    �Rem

    over sem

    ijoins S

    J2que q

    uedan de B

    Sy

    agreg

    arlo a E

    S.

    102

    Dr. V

    íctor J. S

    osa S

    osa

    agreg

    arlo a E

    S.

    �Actu

    alizar estadísticas d

    e G

    tamaño(G

    ) = 360 (=

    900*0.4)

    Nota: L

    a selectividad de G

    pudiera tam

    bién

    cambiar, p

    ero no

    es importan

    te en este ejem

    plo

  • Algoritm

    o SDD-1

    Selecció

    n del S

    itio de R

    eunión

    Paso

    8: E

    ncontrar el sitio

    donde la m

    ás gran

    de can

    tidad de d

    atos

    reside y

    seleccionarlo

    como el sitio

    de reu

    nión

    103

    Dr. V

    íctor J. S

    osa S

    osa

    Ejem

    plo:

    Total d

    e dato

    s almacen

    ados en

    los sitio

    s:

    Sitio

    1: 3

    60

    Sitio

    2: 3

    60

    Sitio

    3: 2

    000

    Por lo

    tanto el sitio

    3 será eleg

    ido co

    mo el sitio

    de reu

    nión.

    Algoritm

    o SDD-1

    Postp

    rocesam

    iento

    Paso

    9: P

    ara cada R

    i en el sitio

    “assembly” , en

    contrar lo

    s

    semijo

    ins d

    el tipo

    Ri

    Rj

    donde el co

    sto to

    tal de E

    S sin

    este semijo

    in es m

    ás

    pequeño que el co

    sto co

    n éste y

    remueve el sem

    ijoin

    104

    Dr. V

    íctor J. S

    osa S

    osa

    �Los sem

    ijoins n

    o so

    n rem

    ovidos

    pequeño que el co

    sto co

    n éste y

    remueve el sem

    ijoin

    de E

    S.

    Nota: P

    odría h

    aber b

    eneficio

    s indirecto

    s

    Paso

    10: P

    ermute el o

    rden de sem

    ijoins si se h

    ace se podría m

    ejorar

    el costo

    total d

    e ES.

    �Ejem

    plo: E

    strategia fin

    al:

    Envíar (G

    E) J al sitio

    3

    Enviar E

    G’ al sitio

    3

  • Algoritm

    os A

    pers-H

    evner-Y

    ao

    �Sitio

    de resu

    ltado esp

    ecificado por el u

    suario

    �Hacer u

    so de sem

    ijoins

    �Puede ser u

    sado para u

    n m

    ínim

    o de tiem

    po to

    tal o resp

    onder

    en un m

    ínim

    o de tiem

    po

    �Consid

    era solam

    ente co

    sto de tran

    smisio

    nes

    105

    Dr. V

    íctor J. S

    osa S

    osa

    �Consid

    era solam

    ente co

    sto de tran

    smisio

    nes

    �Consultas

    �Esas co

    nsultas d

    onde, d

    espués d

    e iniciar el p

    rocesam

    iento

    local, cad

    a relación en

    la consulta co

    ntien

    e solam

    ente el

    atributo co

    mún del jo

    in , el cu

    al es también

    la única salid

    a de

    la consulta.

    �Consultas g

    enerales

    �Cualq

    uier co

    nsulta q

    ue sea an

    terior y

    que sea b

    uena

    Algoritm

    o-R

    epresen

    tación AHY

    Consid

    ere la siguien

    te consulta sim

    ple y

    sus estad

    ísticas

    R2

    R1

    R3

    AA

    A

    atributo

    SF

    size(Π atrib

    uto )

    R1 .A

    R2 .A

    R3 .A

    .31.7

    100

    400

    200

    106

    Dr. V

    íctor J. S

    osa S

    osa

    Puede ser rep

    resentad

    o por el sig

    uien

    te plan

    R3 .A

    .7200

    R1 .A

    100

    R2

    R3 .A

    200

    84

  • Paso 4 -Optim

    izació

    n Local

    Entrad

    a: Mejo

    r plan

    de ejecu

    ción global

    �Seleccio

    na el m

    ejor cam

    ino de acceso

    107

    Dr. V

    íctor J. S

    osa S

    osa

    �Seleccio

    na el m

    ejor cam

    ino de acceso

    �Usa las técn

    icas de o

    ptim

    ización cen

    tralizada

    Optim

    izació

    n de C

    onsultas D

    istribuidas -

    Problem

    as

    �Modelo

    de co

    sto

    �Optim

    ización de co

    nsulta m

    ultip

    le

    �Heurísticas p

    ara reducir altern

    ativas

    �Mayor co

    njunto de co

    nsultas

    �Optim

    ización só

    lo so

    bre co

    nsultas select-p

    roject-jo

    in

    108

    Dr. V

    íctor J. S

    osa S

    osa

    �Optim

    ización só

    lo so

    bre co

    nsultas select-p

    roject-jo

    in

    �Tam

    bién

    necesita m

    anejar co

    nsultas co

    mplejas (ejem

    .,

    uniones) d

    isjuncio

    nes, ag

    regació

    nes y

    clasificaciones)

    �Costo

    de o

    ptim

    ización vs. co

    sto de ejecu

    ción trad

    eoff

    �Heurísticas p

    ara reducir altern

    ativas

    �Estrateg

    ias de b

    úsqueda co

    ntro

    lables

    �Interv

    alo Optim

    ización/reo

    ptim

    ización

    �Exten

    sión de lo

    s cambios en

    el perfil d

    e la base d

    e

    dato

    s antes d

    e que la reo

    ptim

    ización sea n

    ecesaria