cenídef - CENIDET...s.e.p. s.e.s d.g.e.s.t. centro nacional de investigaciÓn y desarrollo...

115
S.E.S D.G.E.S.T. S.E.P. CENTRO NACIONAL DE INVESTIGACIÓN Y DESARROLLO TECNOLÓGICO cenídef UNA METODOLOGIA PARA EL DISENO DE LA FRAGMENTACIÓN Y UBICACIÓN EN GRANDES BASES DE DATOS DISTRIBUIDAS T E S I S QUE PARA OBTENER EL GRADO DE DOCTOR EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN c P R E S E N T A : HÉCTOR JOAQUiN FRAIRE HUACUJA "'7 DIRECTORES DE TESIS : I I DR. JOAQU~N PÉREZ ORTEGA DE ,NFORMAC'O~ c~N\Dfl 1 I DR. RODOLFO A. PAZOS RANGEL ABRIL 2005 CUERNAVACA MORELOS t i i

Transcript of cenídef - CENIDET...s.e.p. s.e.s d.g.e.s.t. centro nacional de investigaciÓn y desarrollo...

  • S.E.S D.G.E.S.T. S.E.P.

    CENTRO NACIONAL DE INVESTIGACIÓN Y DESARROLLO TECNOLÓGICO

    cenídef

    UNA METODOLOGIA PARA EL DISENO DE LA FRAGMENTACIÓN Y UBICACIÓN EN GRANDES BASES DE DATOS DISTRIBUIDAS

    T E S I S

    QUE PARA OBTENER EL GRADO DE DOCTOR EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN c

    P R E S E N T A :

    HÉCTOR JOAQUiN FRAIRE HUACUJA

    "'7 DIRECTORES DE TESIS : I I DR. JOAQU~N PÉREZ ORTEGA DE ,NFORMAC'O~ c~N\Dfl 1

    I DR. RODOLFO A. PAZOS RANGEL

    ABRIL 2005 CUERNAVACA MORELOS

    t

    i i

  • Dirección General de Institutos Tecnológim

    INVESTIGACION Y DESARROLLO TECNOLOGICO

    CIENCIAS COMPUTACIONALES

    Ciencias Computacionales

    cenidef Cenim Nadonsl áw Invesligadon

    y Dosandio TBcnol6gim

    AUTORIZACIÓN DE IMPRESIÓN DE TESIS

    Cuernavaca, Mor., 2005-04- 19

    M.C. Héctor Joaquín Fraire Huacuja Candidato al Grado de Doctor en Ciencias en Ciencias de la Computación Presente

    Después de haber sometido a revisión su trabajo final de tesis titulado "Una Metodología Para el Diseño de la Fragmentación y Ubicación en Grandes Bases de Datos Distribuidas", el cual fue dirigido por el Dr. Joaquín Perez Ortega y el Dr. Rodolfo A. Pazos Rangel, y habiendo cumplido con todas las indicaciones que el jurado revisor de tesis le hizo, le comunico que se le concede autorización para que proceda a la impresión de la misma, como requisito para la obtención del grado.

    Sin más por el momento, reciba un cordial saludo

    I C c p - Subdireccián Académica Servicios Escolares Expediente I

    , I

    INTERIOR INTERNADO PALMIRA SIN. COL, PALMIRA. A.P. 5-164. CP. 62490. CUERNAVACA. MOR. - MÉXICO TELS.17771312 2314.318 7741,FAX(777] 312 2434 1

    j EMAIL abaulisto~cenidet.edu.mx

  • DEDICATORIA

    Dedico esta tesis a mi esposa Blanca Nelly Santos Santoy, y a mis hijos Liliana

    Sarahí y Héctor Alberto Fraire Santos, por el apoyo constante, la paciencia enorme y

    sacrificada, y el gran amor que nos une sólidamente.

    A mis padres Sr. Héctor Fraire Lujan y Sra. Hilda Huacuja Graham por enseñarme a amar y respetar a nuestros semejantes y a enfrentar las adversidades de la vida con

    renovado esfuerzo y alegría.

    A mis hermanos Juan Manuel, Jorge Luis, Maria del Coral, Roberto Arturo, Ernesto

    Javier y Julio Cesar por el cariño incondicional que nos profesamos.

    A mi tío Julio Cesar Huacuja Graham (Piri) porque me ha enseñado a tener siempre

    una visión positiva de la vida presente y futura y a disfrutar de las cosas simples y

    sencillas.

    A todos los miembros de las familias Fraire Lujan, Huacuja Graham, Santos Amaya

    y Santoy Jasso por sus constantes esfuerzos de conservar sólidos los lazos

    familiares.

    I

    i

  • ~ECONOCIN IErn0.S

    Mi profundo agradecimiento a los miembros del comité tutorial de esta tesis: Dr.

    Juan Frausto Solís, Dr. David Romero, Dr. José Torres Jiménez, Dr. Cnspín Zavala Díaz y Dr. Raúl Pinto Elías. Particularmente deseo agradecer sus valiosas

    sugerencias y críticas, las cuales hicieron del proceso una experiencia intelectual

    retadora y reconfortante.

    Mi sincero aprecio al Dr. Joaquín Pérez Ortega y Dr. Rodolfo Pazos Rangel por

    haber dirigido esta tesis. Agradezco la oportunidad de haber recibido el apoyo de

    dos excelentes personas y profesionales.

    Reciban mi reconocimiento las instituciones educativas participantes. Estoy en

    deuda con el Centro Nacional de Investigación y Desarrollo Tecnológico

    (CENIDET), el Instituto Tecnológico de Ciudad Madero (ITCM), Instituto

    Tecnológico y de Estudios Superiores de Monterrey (ITESM) y el Instituto de

    Matemáticas de la UNAM, quienes proporcionaron todas las facilidades necesarias

    para esta investigación.

    Agradezco el apoyo de las instituciones que contribuyeron a financiar el proyecto.

    Particularmente el Consejo del Sistema Nacional de Educación Tecnológica

    (COSNET), el Consejo Nacional de Ciencia y Tecnología (CONACYT), el Consejo

    Tamaulipeco de Ciencia y Tecnología (COTACYT) y la Dirección General de Institutos Tecnológicos (DGIT).

    Doy gracias a la gran familia que formamos mis compañeros y amigos del ITCM y del CBTIS 164 por su ayuda, soporte moral y amistad. Para ellos mi estimación.

    Finalmente deseo reconocer a directivos y exdirectivos del ITCM y de la delegación

    DII-7, por su gran compromiso con la calidad y la mejora continua en el instituto.

  • RESUMEN

    En este trabajo se aborda el problema de la automatización del diseño lógico

    de una base de datos distribuida, esto es, dado un conjunto de objetos de bases de

    datos, un conjunto de sitios donde se almacenan los objetos y un conjunto de operaciones que se realizan en los sitios; el problema es determinar automáticamente una fragmentación de los objetos y la ubicación posiblemente replicada de los fragmentos en los sitios, de manera que se minimice el costo total del procesamiento

    de las operaciones.

    Se propone un nuevo enfoque de solución que considera que el desempeño

    del proceso de automatización es un requisito crítico de la solución práctica del

    problema. Este enfoque consiste en seleccionar, para una instancia dada, una

    transformación de compresión, un algoritmo de solución y un modelo. La hipótesis

    en que se sustenta es que, se puede comprimir la instancia dada y usar la instancia resultante para obtener una solución de buena calidad de la instancia original. Para

    validar el enfoque se desarrollaron, una nueva versión del modelo FURD, que

    integra la fragmentación y la replicación de objetos generalizados de bases de datos

    (horizontales, verticales o mixtos), y dos transformaciones de compresión de instancias. Se presenta evidencia experimental de que, bajo ciertas condiciones, las

    transformaciones logran reducir en un orden de magnitud el tamaño de las instancias

    grandes, con un costo mínimo en la calidad de la solución. Estos resultados

    muestran la factibilidad del enfoque propuesto bajo los supuestos considerados.

    Se aportan también, una prueba formal de que la versión replicada del

    problema del diseño de la distribución es NP-duro, un método de control de la

    varianza en experimentos con algoritmos metaheurísticos, y tres posibles líneas para

    continuar el desarrollo de esta investigación.

    Todos los experimentos realizados incorporan mecanismos de control de la varianza, con el propósito de garantizar la precisión de las mediciones realizadas y

    reducir el número de experimentos.

    ... 111

  • TABLA DE CONTENIDO

    Página RESUMEN ................................................................................ TABLA DE CONTENIDO ............................................................. LISTAS DE TABLAS ......................................................................................... LISTAS DE FIGURAS ...... ... ..... . . ... . . ..... .... . . . . . .... . ..... ....... ... ........ .. .... : ..... . .. ........ ,

    Capítulo

    1 MTRODUCCION .........................................................................................

    1.1 Justificacion ........................................................................................... . I

    1.2 Descripción del problema de investigación.. . . . . . . . . . . . . . . . . . . . . , . . . . , , . . . . 1.3 Objetivo de la tesis ................................................................................. 1.4 Contexto de la investigacion .................................................................

    1.4.1 Arquitectura del sistema ............................................................ 1.4.2 Métodos heurísticos de propósito general.. . .............................. 1.4.3 Problematica central.. . ...............................................................

    1.5 Organizacion del documento ..................................................................

    < .

    . . ,

    , .

    . .,

    2 PROBLEMA DEL DISENO DE LA DISTRTBUCIÓN.. ... ........................

    2.1 Marco teorico .......................................................................................... Complejidad del problema de investigación .............................. Muestreo progresivo ... . , , . , . . . _. . . . . . . . . . , . . . . . . .. . . . . .................... Técnica de variables antitéticas ... . . . . . .... . . . . . . .. . . . . . . . . . . . .........

    2.2 Trabajos relacionados .............................................................................. 2.2.1 Fragmentacion ............................................................................ 2.2.2 Replicacion.. ........................................................... ; _______........... 2.2.3 Ubicacion ........................................................................ 2.2.4 Automatización del diseño de bases de datos ............................ 2.2.5 Muestreo progresivo. ........ ......... . . ....... .. .. ..... .;.. . .. . ....... 2.2.6 Análisis experimental de algoritmos.. . . . . . . . . . . . . ... . . . . . . . . . . . . . . . . 2.2.7 Analisis comparativo.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . ..

    3 METODOLOGÍA PROPUESTA ................................................................

    , .

    2.1.1 2.1.2 2.1.3

    ., . . I

    . ,

    , . .

    .

  • . r 3.1 Enfoque de solucion ............................................................................ 3.1.1 3.1.2 Definición formal ....................................................

    Descripción general del enfoque ........................................

    .. 3.2 Dimension de modelos .................................................................... 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.1 3.2.8

    . . r Descripcion del problema., ............................................. Consideraciones sobre la información de entrada del modelo ... Supuestos del modelo .................................................

    . . Modelo maternatico .................................................... Costo de la operaciones de lectura ......................................... Costo de las operaciones de escritura ....................................... - Costo de la replicación de los objetos .......... ............................. Costo del almacenamiento de los objetos ................................ .. 3.3 Dimension de algorimlos .....................................................................

    Reducción de la varianza en experimentos con heunsticos ...... 3.3.1 3.3.1.1 Supuestos del método ............................................ 3.3.1.2 Descripción del método .... 3.3.1.3 Ejemplo de la aplicación del método ...........................

    3.4 Dimensión de transformaciones .................................................... 3.4.1 Transformación por agrupación ....................................

    3.4.1.1 Descripción de la transformación .............................. 3.4.1.2 Ajuste de la formulación ........................................... 3.4.1.3 Algoritmo de agrupación ........................................ 3.4.1.4 Supuestos del método ............................................ 3.4.1.5 Ejemplo de la aplicación de la transformación ...............

    Transformación por muestreo progresivo ............................ 3.4.2.1 Métrica de similaridad entre muestras ............................ 3.4.2.2 Algoritmo de muestreo progresivo ............................. 3.4.2.3 Supuestos del método ............................................ 3.4.2.4 Ejemplo de la aplicación de la transformación ...............

    ...............................

    3.4.2

    4 VALIDACIÓN DE LA METODOLOGÍA PROPUESTA ..........................

    4.1 Plan de pruebas., ...........................................................

    V

    30 30

    31

    32 32 34 35 36 37 39 40 40 40 41 41 41 42 44 44 46 47 41 48 49 51 51 53 55 55

    62

    63

    .

  • ............................................................ 64 4.2 Plataforma experimental 4.2.1 Módulos de la dimensión de modelos .........................

    4.2.1.1 Módulo generador de instancias aleatorias ............... 4.2.1.2 Módulo para la solución exacta del modelo ..............

    4.2.2 Módulos de la dimensión de algoritmos ........................ 4.2.2.1 Módulo para la solución del problema SAT ............. 4.2.2.2 Módulo para la solución del problema del diseño de la

    distnbucion ...................................................... Módulos de la dimensión de transformaciones .............

    4.2.3.1 Módulo de la transformación por agrupación ............ 4.2.3.2 Módulo de la transformación por muestre0 progresivo

    4.3 Evaluación experimental del mecanismo de replicación incorporado al modelo ................................................... 4.3.1 Experimento: efecto de la frecuencia y la selectividad ...... 4.3.2 Experimento: efecto de la capacidad y el costo de

    almacenamiento ................................................... 4.4 Evaluación experimental del método de reducción de la

    varianza ................................................................................ 4.4.1 Experimento: nivel de la reducción de la varianza ...........

    4.5.1 Experimento: nivel de reducción y calidad de la solución . 4.5.2

    4.6 Evaluación experimental de la transformación por muestre0 progresivo ......................... .................................... 4.6.1 Experimento: nivel de la reducción y calidad de la

    solucion ............................................................ 4.6.2

    . . . . 4.2.3

    4.5 Evaluación experimental de la transformación por agrupación .....

    Experimento: eficiencia de la transformación ................

    .. Experimento: impacto del tamaño de los objetos ............

    64 65 67 67 68

    68 68 69 69

    69 71

    14

    78 78 81 81 85

    87

    88 91

    5 CONCLUSIONES Y TRABAJOS FUTUROS ........................................... 93

    5.1 Conclusiones .......................................................................................... 93

    96 5.2 Trabajos futuros ....................................................................................

    REFERENCIAS .................................................................................................. 98

    vi

  • LISTA DE TABLAS

    2.1 Trabajo relacionado con la automatización del diseño de la distribución 3.1 Elementos del modelo ..................................... .................... 3.2 Restricciones del modelo ........................................................ 3.3 Tiempos de ejecución sin reducción de la varianza .......................... 3.4 Variables X, Y, 2 sin reducción de la varianza ............................... 3.5 Tiempos de ejecución con reducción de la varianza ......................... 3.6 Probabilidades conjuntas de la muestra M I .................................... 3.7 Probabilidades conjuntas de la muestra M2 .................................... 3.8 Probabilidades conjuntas de la muestra M3 .................................... 3.9 Similaridad entre muestras consecutivas ................... ............

    3.10 Operaciones de la muestra mínima representativa (M3) .................... 3.11 Matrices de uso y frecuencia de la instancia transformada .................. 4.1 Parámetros del generador de instancias aleatorias ........................... 4.2 Una instancia de referencia ....... ............................................ 4.3 Instancia de referencia para un experimento R ................................ 4.4 Instancia de referencia configurada para un experimento FM ............. 4.5 Instancia de referencia configurada para un experimento SM .............. 4.6 Resultados de un experimento R., .............................................. 4.7 Resultados de un experimento FM ............... ......................... 4.8 Resultados de un experimento SM., ............................................ 4.9 Instancia de referencia para un experimento R ............................... 4.10 Instancia de referencia configurada para un experimento CAPM ......... 4.1 1 Instancia de referencia configurada para un experimento CTOM ......... 4.12 Resultados de un experimento R ................................................ 4.13 Resultados de un experimento CAPM .......................................... 4.14 Resultados de un experimento CTOM ......................................... 4.15 Caso 1 Instancias de dos familias., ........................................... 4.16 Caso 2 Instancias de cinco familias ........................................... 4.17 Reducción de la varianza con el Caso 1 ........................................ 4.18 Reducción de la varianza con el Caso 2 ........................................

    29 36 38 43 43 44 57 58 58 59 60 61 66 70 71

    72 72 73 14 74 75 75 76 76 71 77 79 79 80 80

    vii

  • 4.19 Casos para evaluar la transformación por agrupación.. ..................... 82 4.20 84 4.21 Resultados de la evaluación de la eficiencia. 86 4.22 88 4.23 4.24 Resultados del impacto del tamaño de los objetos.

    Resultados de la evaluación del nivel de la reducción y la calidad ..........

    Casos para evaluar la transformación por muestre0 progresivo.. .......... Resultados de la evaluación del nivel de la reducción y la calidad ..........

    .............................

    .......................... 92

    !

    ... VI11

  • LISTA DE FIGURAS

    1.1 Problema del diseño de la distribución ................................................... 1.2 Arquitectura del sistema ....................................................................... 3.1 3.2 3.3 3.4 3.5 3.6 3 .I 3.8 3.9 3.10 4.1 4.2 4.3 4.4 4.5 4.6 4.1

    Dimensiones del enfoque de solución .......................................... Problema del diseño de la distribución .......................................... Transformacion de instancias .................................................. Conversión de F,,, i enfe y q h ................. :. ................................ Matriz de patrones de acceso Pk, ................................................

    ..

    Algoritmo de agrupación codificada ...........................................

    Matrices de uso y frecuencia de la instancia transformada ................ Algoritmo de muestre0 progresivo .............................................

    Dimensiones de una estrategia de solución .................................... Módulos de la plataforma experimental ....................................... Impacto de la probabilidad de acceso sobre la calidad ......................... Impacto de la probabilidad de acceso sobre el nivel de reducción ......... Eficiencia de 10s algoritmos de agrupación., ...................................

    Impacto de la probabilidad de acceso sobre el nivel de reducción .........

    Matrices de uso y frecuencia de la instancia original ..........................

    Matrices de uso y frecuencia de la instancia original ..........................

    Impacto de la probabilidad de acceso sobre la calidad .........................

    4 6

    31 33 45 46 46 48 49 50 54 56 62 64 84 85 87 91 91

    ix

  • Capítulo 1

    INTRODUCCI~N

    En este capítulo se presenta un panorama general de la tesis, el cual inicia con la

    descripción de los motivos que llevaron a esta investigación y continúa con la

    definición del problema de investigación. Se presentan los objetivos que se plantea alcanzar y el contexto de la investigación. Se hace una breve introducción a los

    algoritmos heurísticos y se termina con una descripción del contenido de cada

    capítulo de la tesis.

    1.1 Justificación

    La creciente popularidad del Internet y el Comercio Electrónico, ha generado una

    gran demanda de aplicaciones de bases de datos distribuidas (BDDs) [Visinescu

    20031. Estas aplicaciones son desarrolladas usando Sistemas Administradores de

    Bases de Datos Distribuidas (SABDDs). La mayona de los manejadores de bases de

    datos actualmente permiten dividir las relaciones de una base de datos con respecto

    a los atributos, las tuplas o a ambas. El número de formas alternativas del diseño de la base de datos, crece explosivamente con el número de atributos y de tuplas de las

    tablas de la base de datos [Agrawal 2004al. Por años, la mayoría de 10s

    administradores de bases de datos, han afinado el diseño de las bases de datos,

    usando procedimientos de prueba y error. Cada iteración del proceso puede tomar

    1

  • Capítulo i INTRODUCCI~N

    horas al aplicarse a las grandes bases de datos de la actualidad, y no existe forma de

    asegurar la convergencia hacia algo que pueda considerarse como un diseño óptimo

    [Zilio 20041.

    Uno de los problemas que se debe resolver al diseñar una base de datos

    distribuida, es el problema del diseño de la distribución [Ceri 19831. Éste implica la

    partición de las tablas o relaciones de la base de datos en un conjunto de fragmentos

    y la ubicación de dichos fragmentos en las diferentes localidades de la red. Un

    fragmento de una relación puede ser horizontal (grupo de tuplas), vertical (grupo de

    atributos) o mixto (grupo de tuplas y atributos) [Ozsu 19991. La ubicación de los

    fragmentos puede ser replicada (varias copias) o no replicada (una sola copia). Las

    operaciones de los usuarios requieren los datos contenidos en los fragmentos. La

    ubicación de los fragmentos en los sitios donde se ejecutan las operaciones que los

    requieren, debe reducir los costos de comunicación del sistema [Ozsu 19991.

    Esta tesis amplía la investigación del problema de la automatización del

    diseño de la distribución iniciada en [Pérez 19991. El problema que se aborda es el

    de la automatización del diseño de la fragmentación horizontal y la ubicación

    posiblemente replicada, de bases de datos distribuidas.

    1.2 Descripción del problema de investigación El problema de la automatización del diseño de la distribución, consiste en la

    determinación automática de los esquemas de fragmentación de las tablas de una

    base de datos y de la ubicación de los fragmentos en los diferentes sitios de la red,

    de tal manera que se minimicen los costos de procesamiento de un conjunto de operaciones dado. El concepto de objeto de bases de datos es utilizado, para incluir

    en la definición formal del problema, los diferentes tipos de fragmentos. Un objeto

    de base de datos (objeto de BD o simplemente objeto) es cualquier entidad que requiere ser ubicada, y puede ser un atributo, un grupo de tuplas, una relación o un

    archivo. Los objetos son unidades independientes que deben ser ubicadas en los

    sitios de la red. Una definición formal del problema del diseño de la distribución es

    la siguiente: L

  • Capitulo 1 INTRODUCCI~N

    Considérense un conjunto de objetos O = {o,, 02, .._, o,,}, un conjunto de

    = {s,, s2, .._, s,,}, en los que se un conjunto de OPeraciones e = (41, q2, ..., qns], el esquema de [a ubicación

    inicial de 10s objetos, 10s objetos requeridos por cada operación, la frecuencia con

    V e se emite cada operación en los diferentes sitios, la selectividad de las

    operaciones sobre 10s objetos, la capacidad de almacenamiento de 10s sitios, 10s costos de comunicación entre los sitios y el costo de almacenamiento en los sitios,

    en un período dado de tiempo. El problema consiste en determinar un nuevo

    esquema de la ubicación posiblemente replicada de los objetos que se adapte al

    nuevo patrón del USO de la base de datos y que minimice el costo del procesamiento

    de las operaciones que incluye: costos de comunicación y de almacenamiento.

    ComPutadoras 0 sitios, interconectados por una red,

    La Figura 1.1 muestra un ejemplo simplificado del problema con 4 objetos, 3 sitios y 4 operaciones. Se muestran las tablas en que se registra la frecuencia de

    emisión de las operaciones y la matriz en que se registran los objetos que son

    utilizados por las operaciones. El ejemplo muestra algunos aspectos importantes de

    la versión replicada del problema que se aborda en este trabajo. En primer término

    se observa que los objetos se pueden replicar en uno o varios sitios, por ejemplo hay

    dos réplicas del objeto 02, una en el sitio uno y otra en el dos. Otro aspecto

    importante es que como resultado de la consideración de usuarios móviles en el

    sistema, la misma operación se puede emitir desde dos o mas sitios diferentes. Tal es

    el caso de la operación 3, la cual se ha emitido 5 veces en el sitio 1 y 4 en el sitio 2.

    También se pueden observar las tablas con los registros de la frecuencia con que se

    emiten las operaciones desde los sitios y la matriz de uso en la que se registran 10s

    objetos que han sido solicitados por las diferentes operaciones. Por ejemplo, la operación 3 ha solicitado los objetos 2 y 4.

    De acuerdo a la literatura revisada, los estudios del problema de la

    automatización del diseño de la distribución, basados en la simulación del sistema

    administrador de la base de datos, no toman en consideración el impacto del tamaño

    de las instancias sobre el rendimiento del proceso. En este trabajo se considera

    crítico el desarrollo de mecanismos de compresión de instancias, para garantizar el 3

  • Capitulo i INTRODUCCI~N

    rendimiento de las herramientas automáticas para el diseño de bases de datos

    distribuidas en Internet,

    Objetos de BD .& sitios

    a Operaciones Objetos de BD '! Figura I , 1 Problema del diseño de la distribución

    Por ejeinplo, la compañía Amazon Inc. opera una base de datos distribuida

    sobre 6 servidores, un catálogo de 10 millones de productos y 4,000 operaciones

    diarias [Oracle 20051. El tamaño de las instancias que se producen en estos escenarios, puede reducir sigiiificativainente el desempeño de las herramientas

    automáticas para el diseño de la base de datos, si no cuentan con mecanismos de

    compresión [Zilio 20041. El diseño de mecanismos de apoyo al desempeño plantea

    una serie de cuestiones. Una de las más relevantes es la siguiente: dada una

    instancia del problema j es posible someterla a una transformación de compresión

    de manera que, la instancia resultante produzca una solución aproximada de

    calidad adecuada de la instancia original? La hipótesis de este trabajo es que la

    respuesta a esta pregunta es positiva.

    4

  • Capitulo 1 NTRODUCCIÓN

    1.3 Objetivos de la tesis Para continuar con la investigación del problema de la automatización del diseño de

    la fragmentación horizontal y la ubicación replicada de bases de datos distribuidas,

    en esta tesis se propone alcanzar los siguientes objetivos:

    a) Desarrollar un modelo matemático del problema del diseño de la distribución que

    incorpore la fragmentación y la ubicación posiblemente replicada de objetos de

    bases de datos.

    b) Desarrollar métodos de compresión de instancias que permitan incrementar, en al

    menos un orden de magnitud, el tamaño de la mayor instancia soluble de la

    versión replicada del problema utilizando un modelo dado.

    Para cumplir los objetivos planteados, se propone un nuevo enfoque en el que se

    considera que el desempeño del proceso de automatización es un requisito crítico de

    la solución práctica del problema.

    1.4 Contexto de la investigación

    En esta sección se describen la arquitectura de los sistemas que se modelan, los

    métodos heurísticos no deterministas de propósito general y la problemática central

    1.4.1 Arquitectura del sistema

    En esta sección se describe la arquitectura general del sistema que sirve de

    referencia para analizar el problema de la automatización del diseño de la

    distribución. Un sistema de base de datos distribuido con arquitectura cliente-

    servidor, operando sobre Internet, tiene cuatro componentes fundamentales:

    servidores, clientes, datos y enlaces de red.

    I

    5

  • Capítulo 1 INTRODUCCI~N

    i

    I

    Figural .2 Arquitectura del sistema

    Los datos sólo se pueden almacenar en los servidores y pueden ser

    fragmentados y replicados. La unidad de distribución es un fragmento de una

    relación y los datos tienen una distribución inicial dada. Los cambios en los patrones de acceso a los fragmentos, en periodos de tiempo determinados, pueden provocar el

    movimiento, creación y eliminación de sus réplicas, e incluso la reconfiguración de los fragmentos.

    Los servidores son SABDDs con toda la funcionalidad y constituyen los

    sitios donde residen los datos. Cada par de sitios tiene un costo de comunicación

    asociado, que representa la distancia entre ellos, y se supone constante. Este es un

    supuesto común en este tipo de estudios, que permite simplificar el análisis del

    problema [Visinescu 20031.

    Los clientes son los sitios desde donde los usuarios realizan sus operaciones,

    las cuales son transferidas al servidor al que están conectados mediante enlaces permanentes o intermitentes (inalámbricos). Todas las operaciones generadas por los

    clientes de un servidor, se considera que son emitidas desde el sitio del servidor.

    Los servidores se encuentran conectados a Internet mediante enlaces de alta

    velocidad. La Figura 1.2 muestra las principales características de una arquitectura

    de este tipo.

    Para lograr un buen desempeño del sistema, el administrador de la base de datos debe diseñar los esquemas de fragmentación y de ubicación de los fragmentos,

    6

  • Capitulo i INTRODUCCI~N

    tratando de reducir los costos de transmisión derivados de las operaciones de lectura,

    escritura (involucrando consistencia de copias) y reunión de los fragmentos. Un

    diseño Óptimo permite minimizar el costo global de comunicación requerido para

    atender las operaciones [Ozsu 19991.

    1.4-2 Métodos heurísticos no deterministas de propósito general En la subsección 2.1.2 del Capítulo 2, se prueba que la versión replicada del

    problema del diseño de la distribución pertenece, por su complejidad cornputacional,

    a una clase especial de problemas denominados NP-duros. Para este tipo de

    problemas, actualmente no se conocen algoritmos eficientes para resolver instancias

    grandes y se tiene la sospecha de que no es posible construirlos. En consecuencia la

    solución de instancias grandes de problemas NP-duros, sólo se puede realizar

    simplificando el problema o utilizando un método de solución aproximada [Garey 1979, Papadimitriou 19981. Los métodos heurísticos no deterministas de propósito

    general, denominados metaheurísticos [Glover 19861, son considerados actualmente

    herramientas muy prometedoras para la solución aproximada de instancias grandes

    de este tipo de problemas [Barr 2001, Michalewicz 19991.

    Los metabeurísticos ofrecen soluciones “cercanas” a la solución óptima del

    problema con una inversión razonable de recursos [Glover 1986, Feo 1995,

    Michalewicz 1999, Barr 2001, Yagiura 2001, Resende 20031. Básicamente definen

    estrategias de navegación a través del espacio de soluciones que les permiten

    escapar de los óptimos locales y aproximarse al óptimo global. Actualmente existen

    una diversidad de metaheurísticos disponibles, tales como: Algoritmos Genéticos

    [Holland 1975, Goldberg 1989, Romero 1999, Pérez 20041, Recocido Simulado

    [Kirkpatrick 1983, Cemy 1985, Sanvicente 20041, Búsqueda Tabú [Glover 1986,

    Glover 19971, Aceptación por Umbral [Dueck 1990, Pérez 2000b, Perez 20021,

    Colonia de Hormigas [Dorigo 1992, Dorigo 20031, Grasp [Feo 1995, González-

    Velarde 1996, Resende 20031 y Búsqueda Dispersa [Glover 19991.

  • Capítulo i INTRODUCCI~N

    En este trabajo se utiliza Aceptación por Umbral para la solución heurística

    del problema, debido a que este metaheurístico ha sido aplicado con éxito a la

    solución de instancias del problema del diseño de la distribución [Pérez 19993.

    1.4.3. Problemática central

    La problemática central de este trabajo consiste en desarrollar métodos de compresión de instancias para incrementar, en al menos un orden de magnitud, el

    tamaño de las soluciones de la versión replicada del problema del diseño de la

    distribución con un modelo dado. La posibilidad de construir una solución práctica

    del problema de la automatización del diseño de la distribución, depende

    criticamente del desarrollo de métodos que permitan resolver instancias de mayor

    tamaño con un mismo conjunto de recursos computacionales [Zilio 20041.

    En la sección de trabajo relacionado se presenta evidencia de que el

    desarrollo de métodos eficientes de compresión de instancias, es actualmente un

    problema relevante y abierto. Las investigaciones del problema de la automatización

    de la distribución basadas en modelos [Pérez 1999, Johansson 2000, Huang 2001,

    Visinescu 2003, Baiao 20041, proveen soluciones de aplicación práctica limitada al

    no incorporar este tipo de métodos. En contraste, en el contexto del diseño físico de

    las bases de datos se reconoce la relevancia de estos métodos, por su impacto en el

    desempeño de las herramientas automáticas de diseño [Zilio 20041. Sin embargo,

    como consecuencia de la limitación de estos enfoques para validar la calidad de las

    soluciones del problema, los métodos de compresión que proponen resultan insuficientes para incrementar el desempeño de dichas herramientas.

    ,/ 1.5 Organización del documento En el Capítulo 2 se presenta el marco teórico en el que se fundamenta el desarrollo

    de los diferentes elementos de este trabajo. En primer término se prueba que el

    problema de investigación es NP-duro. Se describen los fundamentos teóricos del

    muestre0 progresivo y de la técnica de reducción de la varianza de variables

    antitéticas. Finalmente se describen y analizan los trabajos mis relevantes X

  • .. .

    capitulo i INTRODUCCI~N

    relacionados con el problcma de la automatización del diseño de la distribución.

    En el Capítulo 3 se presenta el enfoque general que se propone para la solución del problema de la automatización del diseño de la distribución replicada

    de objetos de base de datos. Para validar el enfoque se desarrollan un modelo

    matemático del problema que incorpora la fragmentación horizontal y la replicación,

    un método para el control estadístico del análisis experimental que se realiza y dos

    transformaciones para la compresión de instancias.

    En el Capítulo 4 se describen los experimentos realizados y los resultados de la validación del modelo y del método para el control de la varianza. Finalmente se muestran los resultados de la evaluación experimental de la eficiencia de las

    transformaciones propuestas.

    En el Capítulo 5 se describen las aportaciones más importantes de esta

    investigación y las líneas de investigación que se identificaron en el proceso.

    I

    9

  • Capítulo 2

    PROBLEMA DEL DISEÑO DE LA DISTRIBUCIÓN

    En este capítulo se describe el marco teórico en que se fundamenta este trabajo. Este

    marco incluye la demostración de que la versión replicada del problema del diseño

    de la distribución es NP-dura, y el fundamento teórico de dos técnicas estadísticas

    que serán utilizadas en capítulos posteriores. Se incluye también una sección que

    contiene una descripción de los trabajos relacionados con el problema de la

    automatización del diseño de bases de datos.

    2.1 Marco teórico

    En esta sección se presentan algunos elementos de la teoría de la NP-completez y se

    demuestra que la versión replicada del problema del diseño de la distribución es NP- duro. También se presenta el fundamento teórico del muestre0 progresivo y de la técnica de reducción de la varianza mediante variables antitéticas.

    2.1.1 Complejidad del problema de investigación En esta subsección se demuestra que la versión replicada del problema del diseño de

    la distribución es NP-dura.

    10

  • Capítulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    I

    I

    2.1.1.1 Conceptos preliminares

    Para demostrar que el problema del diseño de la distribución replicada de objetos es NP-duro, se utilizarán 10s siguientes conceptos de la teoría de la NP-completez:

    Problema de decisión y algoritmo. Un problema de decisión = (0,r) es una pareja formada por un conjunto de instancias D, las cuales se obtienen a partir

    de una instancia genérica que se especifica en términos de varios componentes:

    conjuntos, funciones números, etc., y un subconjunto de instancias-sí Y E D. Una

    instancia ¿€Y, si y sólo si, la respuesta a la cuestión del problema es sí para esa instancia. Un problema de decisión se asocia con un lenguaje formal usando algún

    mecanismo de codificación y un algoritmo con una máquina de Turing. Un

    algoritmo se dice que resuelve un problema de decisión si y sólo si, el lenguaje

    aceptado por la máquina de Turing es el subconjunto de todas las cadenas asociadas

    con las instancias-sí del problema. En las siguientes definiciones, si no se señala otra

    cosa, la palabra problema se usa como sinónimo de problema de decisión.

    Clase P. Es el conjunto de todos los problemas de decisión que pueden ser

    resueltos en tiempo polinomial por un algoritmo determinista. A los problemas que

    pertenecen a esta clase se les denomina tratables.

    Problemas intratables. Son todos los problemas de decisión para los que no

    existe un algoritmo determinista de tiempo polinomial que los resuelva, es decir, son

    todos los problemas que están en P". Clase NP. La clase NP es el conjunto de todos los problemas de decisión que

    se pueden verificar en tiempo polinomial con un algoritmo no determinista. Relación entre P y NP. Como toda máquina determinista es un caso

    particular de una máquina no determinista, se tiene entonces que P c NP. Transformación polinomial. Se dice que un problema de decisión X,=(DI,

    Y , ) se puede transformar polinomialmente en el problema de decisión n2=(Dz, Yz), si

    y sólo si, existe una función$ DI+ D2 que satisface las siguientes dos condiciones:

    6 5 - 0 2 1 8 11

  • Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTRIBUCIÓN

    1. fes computable con un algoritmo determinista de tiempo polinomial.

    2. Para toda instancia i~ Y,, si y sólo si,j(i)E Y2. En tal caso se dice que XI s p n2.

    Problemas NP-completos y NP-duros. Un problema n es NP-complete si y

    sólo Si, XENp Y V$ENp, $ Ip X. Al conjunto de todos los problemas NP-completos se les denota por NPC. Un problema de optimización se dice que es NP-duro, si y

    sólo si, su versión de decisión es NP-completo. Para probar que XENPC, es

    suficiente y necesario probar que XENP y que existe x*ENPC tal que n* íp n. Una

    propiedad importante de los problemas NP-completos es que si ~ E N P C , entonces

    TIEP, si y sólo si, P = NP.

    Para probar que un problema es intratable, se tiene que probar que no existe

    ningún algoritmo determinista de tiempo polinomial que lo resuelva o que todo

    algoritmo determinista que lo resuelva es de tiempo no polinomial. Probar

    cualquiera de estas proposiciones no es simple, ya que están cuantificadas

    universalmente. Si después de múltiples intentos de resolver un problema con

    algoritmos detemiinistas, se tiene la sospecha de que es intratablc y no se puede

    construir una prueba de su intratabilidad, (,qué se puede hacer en tal situación?

    La teoría de la NP-completez ofrece una alternativa: los problemas NP-

    completos tienen la propiedad de que basta resolver con un algoritmo determinista

    de tiempo polinomial sólo uno de ellos, para probar que P = NP. Por lo tanto, si se determina un algoritmo determinista de tiempo polinomial que resuelva un problema

    NP-completo, esto es suficiente para resolver una conjetura que los más importantes

    científicos de la computación no han podido resolver [Cook 2000, CMI 20051. Esto,

    si bien no prueba que un problema NP-completo es intratable, indica que su solución, con un algoritmo exacto de tiempo polinomial, es tan difícil como resolver

    la conjetura señalada. Por lo tanto, la respuesta a la cuestión planteada es: probar que

    el problema es NP-completo, y así justificar la posibilidad de resolver una versión

    simplificada del problema con un método exacto o utilizar un método aproximado

    12

  • Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTRIBUCIÓN

    i

    para resolver el problema original [Carey 19871. Mayores detalles sobre estos

    ConcePtos se pueden encontrar en [Carey 1979, Sipser 1996, Papadimihlou 1998, Cormen 2001].

    La demostración que se va a realizar consiste en probar primero que un

    subproblema de la versión de decisión del problema del diseño de la distribución

    replicada de objetos está en la clase NP. Una vez establecido lo anterior, se probará

    que es posible reducir polinomialmente el Problema de la Distribución de Objetos en

    Contenedores (Bin-packing) [Garey 1979, Papadimitriou 19991 a dicho suproblema.

    Esto es suficiente para probar que el subproblema es NP-completo [Carey 1979,

    Papadimitriou 19991. Luego por restricción, la versión de decisión del problema de

    optimización es NP-completo y por tanto el problema es NP-duro [Garey 19791. Antes de presentar la prueba detallada se introducen algunas definiciones y notaciones que serán utilizadas en el desarrollo de la misma.

    2.1.1.2 Problema de la distribución de objetos en contenedores.

    Al Problema de la Distribución de Objetos en Contenedores (Bin packing) se le

    denotará de manera simplificada por PDOC (y a su versión de decisión PDOCd).

    PDOC es un problema clásico de optimización combinatoria, NP-duro, en el cual

    hay una secuencia de n objetos O = {a,, a*, ..., a,}, cada objeto con un tamaño dado (al) tal que O < (ai) I c, y un número ilimitado de contenedores, cada uno de capacidad c. El objetivo es determinar el menor número de contenedores rn en los

    cuales todos los objetos puedan ser distribuidos, sin rebasar sus capacidades [Carey

    1979, Papadimitriou 19991. Problema PDOC+ El problema de decisión asociado al Problema de la

    Distribución de Objetos en Contenedores [Carey 19791, se formula de la manera

    siguiente:

    Instancia: Dados un número ilimitado de contenedores C = {cl, c2, ...} , cada uno de capacidad c y un conjunto de objetos O = {a,, a*, ..., a,}, cada uno con un tamaño (ai) tales que O < t(ai) 5 c. Pregunta: Dado un entero rn, Les posible construir una partición

    13

  • Capítulo 2 PROBLEMA DEL DISENO DE LA DISTNBUCIÓN

    I

    t

    BI, B2, -.> Bm, de 10s objetos, tal que O = B , u B~ U ..., U B,, y B~ n B ~ = 4 para i+j, de manera que se cumpla ia restricción c t(a,) 5 c vj, 1 5 j 5 112 ?

    *$B,

    2.1.1.3 Versión replicada del problema del diseño de la distribución

    A la versión replicada del problema del diseño de la distribución de objetos se le denotará por PDR (y a su versión de decisión PD&) [Pérez 2003al. Una definición

    formalizada de PDR es la siguiente:

    Considérense un conjunto de objetos O = {o,, 02, ..., o,,}, un conjunto de sitios, S= {SI, sh ..., sW}, donde se ejecutan las operaciones Q = {q,, q2, ..., qnp}, la ubicación inicial de los objetos, los objetos requeridos por cada operación, la frecuencia con

    que se emite cada operación en los diferentes sitios, la selectividad de las operaciones sobre los objetos, la capacidad de almacenamiento de cada sitio, los

    costos de comunicación entre los sitios y el costo de almacenamiento en los sitios,

    en un período dado de tiempo. El problema consiste en determinar la ubicación

    posiblemente replicada de los objetos, que minimice el costo total del procesamiento

    de las operaciones.

    Problema PDR,,. El problema de decisión asociado [Garey 19791 al

    Problema del Diseño de la Distribución, se formula de la manera siguiente:

    Instancia: Sean un conjunto de objetos O = {o,, 02, ..., o,,}, un conjunto de sitios, S - {s,, s2, ..., s",~} cada uno con una capacidad ci, en los que se ejecutan un conjunto de operaciones Q = {q,, q2, ..., qns}, que utilizan uno o varios objetos y pueden emitirse desde cualquiera de los sitios.

    Pregunta: Para un costo dado K, ¿existe una asignación de los objetos a los sitios tal manera que, se repliquen los objetos en uno o varios sitios, no se rebase la capacidad

    de los sitios y que el costo de procesar todas las operaciones sea menor que K?

    -

    Subproblema NR Sea NR el subproblema que se obtiene de P D k , si no se realizan operaciones en los sitios, todos los sitios tienen la misma capacidad y sólo se permite una réplica. El subproblema NR se formula de la manera siguiente:

    instancia: Sean los objetos 0 = {o,, 02, ..., o,,} y los sitios, S = {si, s t ..., s,,} cada uno con capacidad c, en los que no se ejecutan operaciones (Q = 4.

    14

  • Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    Pregunta: Para un costo dado I% ¿existe una asignación de 10s objetos a 10s sitios tal que: se repliquen 10s objetos en un SO10 sitio, no se exceda la capacidad de los sitios Y el costo de procesar todas las operaciones sea menor que K?

    Como la asignación es sin repiicación, involucra a todos 10s objetos y la

    restricción relativa ai costo es irrelevante, el subproblema NR se puede reformular de la manera siguiente:

    Instancia: Sean un conjunto de objetos O = {o1, 02, ..., ano} cada uno de tamaño t(o,) y un conjunto de sitios, S= {SI, s2. ..., sm} cada uno con capacidad c. Pregunta: ¿Es posible construir una partición de los objetos BI, B2, ..., B,,, de tal manera que O = B1 u B2 u ..., u B,,, y B, n B, = 4 para i#J, y que se cumpla la restricción 1 t ( ~ , ) < c Vj, 1 I j I ns ?

    o@,

    2.1.1.4 PDR es NP-duro Como se señaló anteriormente, para probar que PDR es NP-duro, basta probar que

    NR es NP-completo [Garey 1979, Papadimitriou 19991. Para probar que NR es NP-

    completo, se debe probar que está en NP y luego que es al menos tan duro como

    PDOCd [Garey 1979, Papadimitriou 19991. Como PDOCd es NP-completo, esto es

    suficiente para establecer que NR es NP-completo.

    NR está en NP. Para probar que NR está en NP, se debe construir una

    máquina no determinista, que genere aleatoriamente una solución candidata en

    tiempo polinomial y valide en forma determinista su factibilidad también en tiempo

    polinomial [Garey 1979, Papadimitriou 19991.

    Una solución candidata de NR es cualquier asignación de los objetos a 10s sitios. Si n=max{no,ns}, la asignación aleatoria de un objeto a uno de los sitios se

    puede realizar en a lo más n operaciones, por lo tanto la asignación candidata se

    puede generar aleatoriamente en a lo más n2 pasos. Una vez generada la asignación, la verificación de la restricción de capacidad

    para cada sitio se puede realizar en a lo más n pasos. Por lo tanto, la verificación para todos los sitios se puede realizar en a lo más n2 pasos.

    Como la complejidad del algoritmo aleatorio que genera la solución y la I 1

    1

    15

  • !

    CaPiklo 2 PROBLEMA DEL DISENO DE LA DISTMBUCI(IN

    verifica es o(nZ), se concluye que NR está en NP. PDoCd 5 P NR Para probar que PDOCd 5 p NR se debe conshi r una

    correspondencia entre las instancias de ambos problemas, de tal modo que la

    correspondencia y SU inversa se puedan realizar en forma determinista en tiempo Polinomial [Garey 1979, Papadimitriou 19991.

    Para establecer la correspondencia entre dos instancias de NR y PDOCd,

    ambas instancias deben tener el mismo número de objetos no y el parámetro m de

    PDOCd, se debe tomar igual al número de sitios ns de NR. Para transformar las

    instancias entre PDOCd, y NR se define la correspondencia de la manera siguiente:

    a) El objeto oi de NR se asocia con el objeto ai de PDOCd.

    b) El sitio si de NR se asocia con el contenedor ci de PDOCd. Si n=max{no,ns}, ambas transformaciones se pueden realizar en a lo más n

    pasos cada una. Por lo tanto la complejidad de la transformación es O@). La

    transformación inversa se define de manera similar y su complejidad es también

    O(n). Por lo tanto, la correspondencia cumple las condiciones establecidas. Una vez definida la correspondencia, para completar la prueba se debe probar

    que una instancia de PDOCd es una instancia-sí, si y sólo si la instancia correspondiente es una instancia-sí de NR [Garey 1979, Papadimitriou 19991. Una

    instancia-sí de un problema de decisión es una instancia para la cual la respuesta a la

    cuestión del problema es sí [Garey 1979, Papadimitriou 19991.

    Para completar la demostración se debe probar que a toda instancia-sí de NR

    le corresponde una instancia-sí de PDOCd, e inversamente.

    Primero se prueba que a toda instancia-sí de NR, le corresponde una

    instancia-sí.de PDOCd . Una instancia-sí de NR, define una partición B I U Bz LJ ..., U B,,, Bi n

    -.

    Bj=# para i# j de los objetos o; en lossitios si, tal que C t (oi) I c v, 1 c j sns. O(EB,

    Al aplicar la transformación se tiene ahora una partición BI U B2 U ..., u B,, ,

    B; .n Bj =# para i# j de los objetos ai en los contenedores ci, tal que

    I

    16

    http://instancia-s�.de

  • Capítulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    C t (a,) I c Y;, 1 I j m. Por lo tanto, la instancia correspondiente a la instancia ,lidj

    de NR es una instancia-sí de PDOCd.

    La correspondencia entre las instancias4 de PDOCd y NR, se establece de

    manera similar. Por lo tanto, se concluye que PDOCd S p NR.

    Como se señaló, una vez probado que NR es NP-completo, se concluye que

    PDR (la versión replicada del problema del diseño de la distribución) es un

    problema NP-duro.

    2.1.1.5 Otra manera de realizar la prueba

    Otra forma de probar que PDR es NP-duro, consiste en aprovechar el hecho

    de que NR caracteriza un subconjunto de sí-instancias no replicadas del problema de

    la versión de decisión de PDR. Si se establece una correspondencia directa (similar a

    la usada en la prueba) entre los objetos, sitios y operaciones de NR y los de la

    versión no replicada del problema y se establece una cota K para el costo del

    procesamiento de las operaciones, esta transformación permite en tiempo polinomial

    convertir cada instancia=sí del problema no replicado en una instancia-sí de NR e

    inversaniente. Los detalles de esta prueba son muy similares a los de la prueba

    realizada anteriormente. Dado que la versión no replicada es un problema NP-duro

    [Pérez 2000a], se concluye entonces que PDR es NP-duro.

    2.1.2 Muestre0 progresivo

    AI diseñar un proceso de muestreo aleatorio, se debe determinar el tamaño mas

    adecuado de las muestras, para garantizar la confiabilidad de los parametros

    estimados de la población [Ross 19991. Cuando se tiene poco conocimiento de la

    distribución de la población, se tiende inicialmente a trabajar con muestras de tamaño grande y a medida que se tiene información se reducen los tamaños de las

    muestras [Stamatopoulos 19991. El muestreo progresivo es una alternativa de

    solución a este problema. En esta sección se describe la teoría del muestreo

    progresivo [Stamatopoulos 19991.

    17

  • t

    Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    2.1.2.1 Definición de exactitud

    Sean y,,, ymnr y ,d los valores mínimo, máximo y medio de una población finita

    e@,, y2, ..., y ~ } , M = &, yk2, ..., y h } una muestra aieatoria extraída sin reemplazo de P, cuya media es m*, y R =y,, -ymi,, el rango de los valores de P.

    La exactitud A* de la muestra M es el índice de la proximidad relativa entre la media de P y la media de M, y está dado por:

    Generalmente el rango no se conoce, pero esto no afecta el estudio de exactitud, porque la población original se puede normalizar usando

    la la

    y; - y mi" R

    transformación z: P+[O,l], definida como zi = z(yi) =

    p, de la población normalizada PN= { z , , z2, ..., z ~ } , está dada por:

    . En tal caso la media

    Si zkl, zk2, ..., zkn , son los valores correspondientes bajo la transformación a los valores de la muestra M, entonces la media de los valores normalizados m está

    dada por:

    La exactitud A de la muestra normalizada (con R=l) está dada por:

    Sustituyendo (2.2) y (2.3) en (2.4), se tiene que:

    t

    Esto significa que la exactitud de una muestra de la población es igual a la

    exactitud de la muestra correspondiente de la población normalizada.

    2.1.2.2 Definición de muestreo progresivo

    Dada una población normalizada de tamaño N y media ,u, el muestreo progresivo es

    18

  • Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    proceso que consiste en obtener una secuencia de N muestras aleatorias

    independientes de tamaño n, donde n = k,,, b + l , k,,+2, . . ., N. EI valor de k,, se adapta Para que la muestra inicial tenga un significado razonable; por ejemplo, no es

    conveniente sea cero Ya que no tiene sentido considerar una muestra de este

    tamaño. La media rn de cada muestra estima la media de la población con el nivel de

    exactitud A = 1 - Im -PI. Si se extrae una muestra de tamaño N, su exactitud es 1. Para muestras de

    menor tamaño, A toma valores entre O y 1. Detalles adicionales de este desarrollo

    pueden ser revisados en [Stamatopoulos 19991.

    2.1.3 Técnica de variables antitéticas

    Cuando se trabaja con algoritmos aleatorios se deben aplicar técnicas de reducción

    de la varianza para asegurar la calidad de los resultados experimentales y la solidez

    de las conclusiones [Barr 2001, Johnson 2002, Mageoch 2002, Moret 20021. En esta

    sección se describe la técnica de reducción de la varianza de variables antitéticas

    [Ross 19991.

    2.1.3.1 Técnicas de reducción de la varianza

    Uno de los objetivos de un estudio de simulación es determinar un parámetro 8,

    asociado con algún modelo aleatorio. Para estimar 8, el modelo se simula para

    obtener el dato de salida X tal que 6=E[XJ. Se realizan varias ejecuciones de la simulación, en las que la i-ésima ejecución produce la salida X. El estudio concluye después de n ejecuciones y la estimación de 8 está dada por XM = Ci X./n y SU

    varianza por E[(XM- O)*] = Var (XM) = Var(X)/n [Ross 19991. Si es posible obtener otra estimación de 8 con menor varianza que XM, se tendria un estimador cuya

    determinación requeriría un menor número de experimentos [MaGeoch 19921.

    2.1.3.2 Técnica de variables antitéticas

    Sean X y Y variables aleatorias con la misma distribución, tales que 8 = E[X] = E [ q . Entonces E[(X+Y)/2] = 8, por lo que Z = (X+Y)/2 es un estimador de 8. Además como: Var(Z) = Var((X+Y)/2) = % [Var(X) + Var(Y) + 2 Cov(X,y)], se observa que la varianza del estimador Z se reduce si Cov(X,r) < O [ROSS 19991.

    19

  • Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    Para lograr que X e Y estén correlacionadas negativamente, lo que se puede

    hacer es utilizar un generador uniforme de números aleatorios U, para asignar

    números complementarios a ambas variables (A' = U e Y = l-ü). Detalles

    adicionales de este desarrollo pueden ser revisados en [Ross 19991.

    2.2 Trabajos relacionados

    2.2.1 Fragmentación

    La fragmentación es el proceso de dividir las relaciones de la base de datos en

    subrelaciones. El propósito del proceso es colocar en un mismo fragmento los datos

    que son requeridos juntos por varias aplicaciones [Ceri 1984, Ozsu 19991.

    2.2.1.1 Fragmentación vertical

    En la fragmentación vertical, la relación se divide proyectándola sobre algunos de

    sus atributos. Cada fragmento está constituido por un conjunto de atributos, entre los

    que se incluye la llave primaria. La llave primaria es utilizada para reconstruir la

    relación mediante la operación de reunión aplicada a los fragmentos [Ozsu 19991.

    2.2.1.2 Fragmentación horizontal

    En la fragmentación horizontal, la relación se divide en grupos de tuplas. Las tuplas

    que cumplen una condición dada son integradas al mismo fragmento [Ozsu 19991.

    La fragmentación horizontal reduce el acceso a disco requerido para ejecutar una

    operación, minimiza el número de objetos recuperados que no son requeridos por

    una operación, y permite un alto grado de paralelismo en la ejecución de las operaciones [Baiao 20001.

    2.2.1.3 Fragmentación mixta

    La fragmentación mixta divide las relaciones formando grupos que incluyen varios

    atributos y varias tuplas. Este tipo de fragmentación se puede realizar proyectando la

    relación y luego seleccionando las tuplas o de manera inversa [Ozsu 19991. 2.2.2 Replicación La replicación consiste en colocar copias de un mismo objeto en diferentes sitios.

    Las razones más importantes para replicar los datos son: asegurar un alto nivel de

    20

  • capihh 2 PROBLEMA DEL DISENO DE LA DISTRIBUCI~N

    disponibilidad, mejorar la tolerancia contra fallas del sistema y mejorar su

    rendimiento. En sistemas críticos la disponibilidad de los datos es un requisito de

    alta prioridad. Si un servidor falla, se puede recuperar el dato de otro servidor [Ozsu

    1999, Tanenbaum 20021. La tolerancia a fallas tiene que ver con el problema de

    garantizar la consistencia de los datos después de que ocurre una falla. La mejora en

    el rendimiento se logra ubicando copias de los datos lo más cerca de sus usuarios

    [Johansson 20001. Actualmente las compañías de administración de servicios de

    Web más importantes, utilizan esquemas de replicación total con este propósito

    [Akamai 2005, Mirror 2005, Sinocdn 20051.

    2.2.3 Ubicación

    El problema de la ubicación de los datos consiste en determinar la mejor ubicación de los fragmentos, considerando un conjunto de restricciones dadas. Para la

    formulación de un modelo del problema se requiere definir qué factor se va a

    optimizar. Algunos factores utilizados en el análisis del problema son: el espacio de

    almacenamiento, el ancho de banda requerido, el número de réplicas, y/o el costo

    total de comunicación [Agrawal2004a].

    La ubicación de los datos se puede realizar usando tres estrategias: no

    replicada, parcialmente replicada y totalmente replicada [Ozsu 19991. Cuando se usa

    la ubicación parcialmente replicada, el número de réplicas de cada objeto depende

    del patrón de uso de los datos por las aplicaciones. Para bases de datos distribuidas

    en Internet, ésta es la estrategia más adecuada [Visinescu 20031.

    2.2.4 Automatización del diseño de bases de datos

    Existen dos tipos de estudios del problema de la automatización del diseño de bases

    de datos. Los trabajos tradicionales se basan en un modelo del manejador de bases

    de datos [Ceri 19831. Trabajos muy recientes realizan el estudio en el contexto de la

    implementación de herramientas para el diseño automático de la base de datos que

    interactúan directamente con el manejador de bases de datos [Agrawal 2004b, Zilio

    20041. En esta sección se describen los trabajos

    simulación y basados en aplicaciones reales.

    más relevantes basados en

  • Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTHBUCI&,I

    2.2.4.1. Estudios basados en modelación

    Ceri, Wied~ho ld Y Navathe, realizanron los primeros estudios de este tipo [ceri I9839 19841. SU enfoque de solución divide el problema en dos fases senadas:

    fragmentación Y ubicación. La idea central del enfoque serial es que esto permite

    trabajar con instancias menos duras que las generadas con un enfoque integral, Sin embargo el enfoque serial no considera que muchas de las entradas de ambos

    procesos son las mismas [Ozsu 19991. En [Pérez 19991 se saca ventaja de este hecho

    y se demuestra que un enfoque integral es mucho más adecuado que el serial. A

    continuación se describen algunos de los estudios de simulación más recientes y

    relacionados con el problema.

    Como se señaló, Pérez Ortega propone usar un enfoque integral para la

    solución de la versión no replicada del problema. Desarrolla un modelo de

    programación lineal entera, al que denomina FURD [Pérez 19991, en el que integra

    la fragmentación vertical y la ubicación no replicada de los fragmentos. La función

    objetivo del modelo incorpora costos de las operaciones de lectura, costos de

    reunión de fragmentos, costos de migración y costos de almacenamiento. Reporta la

    solución de instancias de hasta 500 atributos, 500 sitios y 500 operaciones,

    superando significativamente los resultados reportados con el enfoque serial. Prueba

    que esta versión es un problema NP-duro y propone una solución heurística usando

    Aceptación por Umbral [Pérez 2000a, Pérez 2000bl. En [Pérez 20021 propone un

    método en línea para configurar los parámetros de control de un algoritmo de

    Aceptación por Umbral. En [Pérez 2003a, 2003bl reporta varias ampliaciones

    realizadas al modelo, entre las que incluye una versión replicada del problema, Y reporta la solución de instancias replicadas de hasta 100 atributos, 100 sitios y 100

    operaciones. Esta disminución, en el tamaño de la mayor instancia soluble, muestra

    que es más difícil resolver las instancias de la versión replicada que las de la no

    replicada. En [Pérez 2003~1 reporta una solución del problema usando redes

    neuronales. En [Pérez 20041 presenta un mecanismo para ajustar automáticamente

    los parámetros de control de un algoritmo genético de solución del problema del

    diseño de la distribución. Este trabajo de tesis se desarrolla en el contexto de las 22

  • Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    investigaciones de Pérez Ortega.

    Johansson aborda el problema de la ubicación replicada de datos para un

    sistema de base de datos distribuida en una red de alta velocidad [Johansson 20001.

    Propone un modelo del tiempo de latencia de la red, para incorporarlo como uno de 10s componentes del tiempo de respuesta del sistema. Formula un modelo, con

    parametros realistas, para optimizar el tiempo de respuesta de un sistema distribuido

    de transacciones paralelas que operan sobre datos replicados. Reporta una simulación para evaluar el nivel de la reducción que se obtiene con transacciones

    paralelas, con una instancia de 1 dato, 3 sitios y una operación. Caracteriza un

    escenario posible con una docena de sitios, cientos de tablas y miles de operaciones. Huang aborda el problema de la ubicación replicada de fragmentos en una red

    amplia [Huang 20011. Propone un modelo que incorpora los costos de recuperación

    de los fragmentos, el costo de operaciones de lectura y de escritura y el costo del

    protocolo de conexión; y dos soluciones heurísticas de propósito específico. Reporta

    la solución de instancias aleatorias de 3 fragmentos, 4 sitios y 3 operaciones y de 5

    fragmentos, 4 sitios y 3 operaciones. Compara sus resultados con los de [Lin 19951. I Tamer Ozsu aborda el problema de la ubicación dinámica de fragmentos

    replicados, en ambientes de Internet [Visinescu 20031. Propone un modelo que

    simula un sistema físico y una heurística para su solución. El modelo minimiza el costo total del procesamiento de las operaciones, considerando el costo de la

    recuperación, de la reunión y de la migración de los fragmentos. Considera un máximo de 4 réplicas, y los parámetros del modelo permiten especificar instancias

    que simulan cargas típicas de Internet. Una aportación importante de este trabajo es

    que señala que las instancias típicas de Internet, muestran un acceso disperso a los

    sitios y los datos. En el simulador que utiliza, se pueden configurar instancias de hasta 100 fragmentos, 1000 sitios y 50,000 operaciones.

    Baiao propone una metodología para la fragmentación de bases de datos

    distribuidas [Baiao 20041. La metodología incluye técnicas para generar fragmentos

    horizontales, verticales y mixtos. Evalúa los esquemas de fragmentación que se producen, considerando el nivel de concurrencia en la ejecución de las Operaciones.

    23

  • Capitulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    La calidad de las soluciones que se producen con el enfoque de simulación,

    depende de la fidelidad con que el modelo simule los procesos del manejador y depende también de la configuración realista de los parámetros. Tiene la ventaja de

    que permite aplicar criterios formales de optimalidad.

    2.2.4.2 Estudios basados en aplicaciones industriales En estos estudios se usa el procesador de operaciones del sistema para evaluar el

    costo de las alternativas de diseño [Agrawal 2004b, Zilio 20041. Estos trabajos

    surgen como consecuencia de la estrategia, para desarrollar software autonómico,

    auto administrable y auto configurable, de las compañías desarrolladoras de SABDDs [Autonomic 20001. Realizan contribuciones importantes al estudio del

    problema de la automatización del diseño de bases de datos, tales como la

    caracterización de nuevos objetos (tablas multidimensionales) y evaluaciones con

    pruebas estándar [TPC 20051. A continuación se describen algunos de los estudios

    basados en aplicaciones industriales más recientes.

    Papadomanolakis aborda el problema de la fragmentación de una base de

    datos de escala muy grande [Papadomanolakis 20041. Presenta un algoritmo

    denominado Autopart, que automáticamente genera el esquema de la fragmentación

    física de la base de datos, para una carga representativa de transacciones. Presenta

    resultados experimentales con una base de datos astronómicos reales, implementada

    en SQL Server 2000. Los objetos de la base de datos que se fragmentan son tablas e índices.

    Agrawal reporta una herramienta automática para el diseño físico de una base

    de datos [Agrawal 2004bl. Dada una carga de operaciones, determina

    automáticamente los esquemas de fragmentación y ubicación física, y una fragmentación de la base de datos lógica. Actualmente sólo realiza el diseño de un

    nodo y están considerando extenderlo a múltiples nodos. Presentan resultados

    experimentales, sobre SQL Server, realizados a partir de pruebas estándar [TPC

    20051.

    24

  • Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTRIBUCIÓN

    Z i h repofla una herramienta automática para el diseño de la distribución

    física, sobre múltiples servidores, de índices, vistas materializadas y tablas multidimensionales, para una carga de operaciones dada. La herramienta incorpora

    un módulo independiente para la compresión de la carga, con el propósito de

    incrementar su escalabilidad. Como el método de agrupación que utilizan es de baja

    eficiencia, sólo lo aplican a la compresión de una fracción de la carga definida por el

    usuario [Chaudhuri 20021. Para evaluar la calidad de los diseños utilizan la base de

    datos universal de DB2 y pruebas estándar [TPC 20051.

    La principal ventaja de estos enfoques es que operan directamente sobre el

    manejador de bases de datos, evitando los problemas derivados de la simulación del

    sistema. Su principal limitación es que, como no pueden aplicar técnicas de

    optimización, la evaluación de la calidad de la solución sólo se puede realizar

    mediante pmebas comparativas. Un aspecto relevante del trabajo de Zilio es que,

    identifica el tamaño de la carga como un factor clave que afecta el rendimiento de

    las herramientas para el diseño automático de las bases de datos.

    2.2.5 Muestre0 progresivo

    El muestreo aleatorio permite extraer información de grandes volúmenes de datos,

    examinando únicamente una pequeña parte de ellos [Ross 19991. En aplicaciones

    computacionales, es una alternativa para minimizar el consumo de recursos

    requeridos para procesar un gran volumen de datos [Provost 19991. Sin embargo,

    para aplicar esta técnica se requiere estimar el tamaño de la muestra más adecuado

    para asegurar la eficiencia del proceso [Stamatopoulos 19991. El muestreo

    progresivo propone examinar progresivamente muestras aleatorias de tamaño

    creciente para evitar el problema [Stamatopoulos 1999, Provost 19991. A

    continuación se describen las investigaciones más relevantes relativas ai muestreo

    progresivo.

    Eldar reporta una aplicación de muestreo progresivo en el contexto de la

    transmisión de imágenes digitales [Eldar 19971. Propone la transmisión de muestras

    25

  • Capítulo 2 PROBLEMA DEL DISENO DE LA DISTRIBUCIÓN

    aleatorias de tamaño creciente, extraídas de la imagen original, hasta lograr un nivel adecuado de definición de la imagen transmitida.

    Stamatopoulos fundamenta estadísticamente el enfoque de muestreo

    progresivo considerando poblaciones finitas y muestras aleatorias independientes

    extraídas sin reemplazo [Stamatopoulos 19991. El método propuesto se basa en la

    definición de un índice de proximidad entre las medias de las muestras y la media de

    la población.

    Provost propone un modelo de aprendizaje automático basado en el enfoque

    de muestreo progresivo [Provost 19991. Prueba que los programas geométricos de

    muestreo son más eficientes que los aritméticos y analiza varias alternativas para la

    detección de la convergencia. Parthasarthy aplica el modelo propuesto por Provost al

    problema de la identificación de reglas de asociación [Parthasarathy 20021. Baoua,

    con base en el modelo propuesto por Provost, aborda el problema de determinar el

    tamaño de la muestra inicial de los programas de muestreo [Baoua 20011.

    En el estudio del muestreo progresivo existen aún muchas preguntas abiertas,

    relacionadas con la eficiencia de los programas de muestreo, criterios de convergencia y el tamaño de la muestra inicial.

    2.2.6 Análisis experimental de algoritmos

    El estudio del problema de la automatización del diseño de bases de datos que se

    realiza en esta tesis, incorpora entre sus actividades el desarrollo de un modelo

    matemático del problema, de métodos para la compresión de las instancias y la

    evaluación experimental del modelo y los métodos. Los procesos de evaluación consisten básicamente en el análisis experimental del desempeño de algoritmos

    exactos y heurísticos, en la solución de diferentes casos de prueba. Para realizar el

    estudio experimental del problema, se consideró conveniente revisar el estado del arte del análisis experimental de algoritmos para determinar los requisitos fundamentales de un estudio de este tipo. En esta sección se presenta un resumen de los trabajos más relevantes que se revisaron.

    26

  • capitulo 2 PROBLEMA DEL DISENO DE LA DISTNBUCI~N

    Barr Y Johnson %fialan que la efectividad de una metodología se puede probar mediante análisis teórico o con pruebas experimentales [Barn 2001, johnson

    20021. Señalan también que el análisis teórico resulta muchas veces limitado para

    analizar el desempeño de los algoritmos en aplicaciones reales. El enfoque del peor caso tiende a producir cotas demasiados pesimistas, y no provee información del

    desempeño de los algoritmos sobre instancias específicas [McGeoch 19921. El

    enfoque del caso promedio requiere la determinación de un modelo adecuado de la

    distribución de los datos asociados a las instancias utilizadas, lo que muchas veces

    resulta dificil de realizar [McGeoch 19921.

    Johnson señala que en los últimos años la comunidad de los analistas teóricos

    ha mostrado un creciente interés en el análisis experimental de algoritmos. Dicho

    interés se debe al reconocimiento de que el análisis teórico es insuficiente para

    analizar el rendimiento de los algoritmos del mundo real [Johnson 20021.

    Johnson, Barr, McGeoch y Moret proponen una serie de principios, para el

    diseño de experimentos computacionales que permiten producir conocimiento

    científico relevante [Barr 2001, McGeoch 2002, Johnson 2002, Moret 20021.

    Señalan que el análisis experimental de algoritmos debe incluir experimentos

    relevantes, vinculados con la literatura, que se puedan reproducir y comparar con los

    realizados en otras investigaciones, y que utilicen implementaciones razonablemente

    eficientes y casos de prueba estándar. Para asegurar la solidez de las conclusiones

    recomiendan la incorporación de técnicas de reducción de la varianza, en los experimentos computacionales.

    Pawlikowsky señala que a pesar de que existen varias técnicas de reducción

    de la varianza, estudiadas teóricamente desde los inicios de la simulación digital, la mayoría se ha utilizado en un número limitado de aplicaciones prácticas

    [Pawlikowsky 19901.

    ~

    McGeoch señala que un objetivo común en los experimentos

    computacionales es estimar una cantidad determinada, promediando los resultados

    de un número dado de corridas de un algoritmo, y que el rango de variación de los resultados determina la confiabilidad de la estimación [McGeoch 19921. Establece

    I 21

  • ~. . . . .

    Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTRIBUCI6N

    i

    que en el análisis expenmental de algoritmos existen muchas áreas de aplicación de

    técnicas de reducción de la varianza, debido a que los algoritmos son más simples Y

    tienen una definición más precisa que la mayoría de los problemas de simulación.

    Actualmente existe un gran número de estudios experimentales reportados,

    pero muy pocos incorporan mecanismos para el control de la varianza de sus

    resultados [Johnson 20021. Por otra parte, el uso de técnicas de reducción de la

    varianza en experimentos con algoritmos heurísticos sólo es reportado en [McGeoch

    1992, McGeoch 20021. Una limitación importante de los enfoques de estos trabajos,

    es que dependen del problema, lo cual limita su aplicación a otros problemas.

    2.2.7 Análisis comparativo La Tabla 2.1 describe las características más relevantes de los trabajos relacionados

    con el problema de la automatización del diseño de bases de datos. La columna 2

    indica si se considera la formación de los fragmentos o únicamente su ubicación. La columna 3 indica si la ubicación de los fragmentos se realiza en forma replicada. En

    la columna 4 se indica si el enfoque utilizado permite el uso de criterios formales de optimalidad. La columna 5 se usa para indicar si se consideran mecanismos de

    compresión de las instancias. La columna 6 muestra la complejidad del algoritmo de

    compresión en función del número de las operaciones.

    En la Tabla 2.1 se observa que las propuestas Pérez Ortega y de Zilio son las

    que abordan el problema de una manera más completa. Sin embargo, el enfoque de

    Pérez Ortega es insuficiente ya que el tamaño de la mayor instancia soluble baja de

    500 a 100, al incorporar la replicación a su modelo. Este trabajo, como todos los trabajos revisados de este tipo, tiene la limitación de que no toma en cuenta que el tamaño de la carga es un factor determinante del rendimiento del proceso de

    automatización del diseño. En contraste Zilio, reconoce la relevancia de la

    compresión de las cargas, pero no considera el impacto de la compresión en la

    calidad de las soluciones. Por lo tanto, los métodos de compresión que propone, no

    garantizan el rendimiento adecuado de las herramientas de diseño. i

    28

  • i

    I

    Capítulo 2 PROBLEMA DEL DISEÑO DE LA DISTRTBUCIÓN

    Tabla 2.1. Trabajo relacionado con la automatización del diseño de la distribución

    En la Tabla 2.1 se observa que las propuestas de Pérez Ortega y de Zilio son

    las que abordan el problema de una manera más completa. Sin embargo, el enfoque

    de Pérez Ortega es insuficiente ya que el tamaño de la mayor instancia soluble baja

    de 500 a 100, al incorporar la replicación a su modelo. Este trabajo, como todos los

    trabajos revisados de este tipo, tiene la limitación de que no toma en cuenta que el

    tamaño de la carga es un factor determinante del desempeño del proceso de

    automatización del diseño. En contraste Zilio, reconoce la relevancia de la

    compresión de las cargas, pero no considera el impacto de la compresión en la calidad de las soluciones. Por lo tanto, los métodos de compresión que propone, no garantizan el rendimiento adecuado de las herramientas de diseño.

    En esta tesis se considera que ambos factores son críticos para la solución

    practica delproblema y se propone desarrollar métodos de compresión de instancias

    para incrementar la escala de las soluciones de instancias replicadas, en al menos un

    orden de magnitud, usando un modelo. Esto significa elevar el tamaño de la mayor

    instancia soluble hasta 1000, con un modelo que integre la fragmentación y la

    replicación. En el siguiente capítulo se describen el enfoque de solución, el modelo

    del problema y las transformaciones de compresión que se proponen.

    29

  • i

    Capítulo 3

    METODOEOG~A PROPUESTA

    3.1 Enfoque de solución

    En esta sección se describe el enfoque que se propone para la solución del

    problema de la automatización del diseño de la distribución.

    3.1.1 Descripción general del enfoque

    En este trabajo se propone desarrollar métodos de compresión de instancias para

    incrementar el tamaño de las soluciones de instancias replicadas, en al menos un

    orden de magnitud, usando un modelo. Con este propósito se propone un enfoque de

    solución del problema de la automatización del diseño de la distribución, que

    incorpora métodos eficientes de compresión de las instancias. Una compresión

    eficiente es aquella que permite transformar una instancia del problema, en otra de

    menor tamaño sin afectar significativamente la calidad de la solución.

    El enfoque consiste en considerar que en el proceso de automatización del

    diseño, además de aplicar transformaciones para la compresión de las instancias, es

    posible elegir entre múltiples modelos del sistema y múltiples algoritmos de

    solución.

    Como las transformaciones de compresión constituyen los mecanismos de

    30 i

    j

    I

    i I !

    !

    i I

    i I ! ~

    I

    j

    I

    ! !

    !

    !

  • Capítulo 3 METODOLOGÍA PROPUESTA

    apoyo al rendimiento de las herramientas automáticas de diseño [Zilio 20041, el

    enfoque depende críticamente de la eficiencia de los métodos de compresión de

    instancias. Por lo tanto, si es posible construir este tipo de métodos, el enfoque es

    factible.

    3.1.2 Definición formal

    Como se señaló anteriormente, la estrategia general de solución para

    automatizar el diseño de la distribución incluye acciones en tres dimensiones: elegir

    una transformación de compresión, seleccionar el algoritmo que mejor desempeño

    ha mostrado en la solución de instancias similares, y seleccionar un modelo del

    problema de bajo costo computacional. Una combinación específica de este tipo de

    acciones, define la estrategia particular de solución que será aplicada por la

    herramienta automatizada. La siguiente definición formaliza esta idea.

    Dados

    7z el problema del diseño de la distribución, I 1 I

    I: un conjunto de instancias de z,

    R: un conjunto finito de transformaciones de compresión de instancias de T

    M. un conjunto finito de modelos de rr, I I

    4 A : un conjunto finito de algoritmos de solución para los modelos de z,

    I ! entonces s es una estrategia de solución de una instancia dada de n, si y sólo si, s es

    un elemento del

    I Figura. 3.1. Dimensiones de una estrategia de solución

  • !

    Capítulo 3 METODOLOGiA PROPUESTA

    Para una instancia dada i E I, el enfoque consiste en determinar

    automáticamente una estrategia s = (5, ak, m,), donde r, E R, ak E A y ml E M, la cual permita resolver la instancia i usando la transformación r,, el algoritmo a k y el modelo mi. La Figura 3.1 muestra los principales elementos de este enfoque.

    En las siguientes secciones se describen los diferentes elementos que se requieren para validar el enfoque propuesto.

    3.2 Dimensión de modelos

    En esta dimensión se propone el uso de diferentes modelos del problema que se

    desea resolver. La idea es que, dada una instancia del problema se elija

    automáticamente entre varios modelos, el que produzca la mejor solución al menor

    costo posible. Particularmente, para el problema del diseño de la distribución existen varios modelos de diferente costo computacional [Pérez 1999, 2000,2000a1. En esta

    sección se desarrolla un modelo replicado que incorpora la posibilidad de distribuir

    diferentes tipos de objetos de una base de datos (objetos de BD o simplemente

    objetos): grupos de tuplas, atributos, relaciones y archivos. Esta característica

    permite tener un solo modelo que, en función del tipo de objetos, puede realizar

    fragmentación horizontal, vertical o mixta.

    3.2.1 Descripción del problema

    El problema del diseño de la distribución de una base de datos distribuida, consiste

    en determinar la fragmentación y la ubicación de los objetos de BD, de tal manera que se minimice el costo total de la transmisión de los datos requeridos por el

    procesamiento de todas las aplicaciones. Un objeto de BD es una entidad de una

    base de datos que requiere ser ubicada, la cual puede ser un atributo, un conjunto de tuplas, una relación, o un archivo. Los objetos de BD son unidades independientes

    que deben ser ubicados en los sitios de una red. Una definición formal del problema

    es la siguiente:

    I 32

  • Capitulo 3 METODOLOG~A PROPUESTA

    I

    a Objetos de BD Figura. 3.2. Problema del diseño de la distribución

    Considérense un conjunto de objetos de BD O = {o,, 02, ..., o,,}, una red de computadoras que consiste de un conjunto de sitios S = {s,, s2, ..., sns}, donde un conjunto de operaciones Q = {q,, q2, ..., qnq} son ejecutadas, los objetos de BD requeridos por cada una de las operaciones, el esquema de la ubicación inicial de los

    objetos de BD, y las frecuencias de acceso de las operaciones a cada uno de los sitios. El problema consiste en determinar los nuevos esquemas de fragmentación y ubicación, posiblemente replicada, que se adapten a los cambios en el patrón de uso

    de la base de datos y que minimicen los costos de transmisión, migración y

    almacenamiento. La Figura 3.2 muestra una instancia del problema con 4 objetos de BD, 3 sitios y 4 operaciones, así como la frecuencia de emisión de las operaciones y

    la matriz de uso de los objetos de BD por las operaciones [Ceri 1983, Kulkami

    19891.

    \

    I I

    I

    I

    I I 33

  • Capítulo 3 METODOLOGíA PROPUESTA

    1 1

    .

    3.2.2 Consideraciones sobre la información de entrada del modelo. El diseño de la distribución de una base de datos distribuida tiene el propósito de

    adaptar los esquemas de fragmentación y de ubicación a una nueva manera de

    explotación. Ceri señala que para realizar el diseño de una base de datos distribuida

    se necesita conocimiento preciso y suficiente de los requerimientos de las aplicaciones [Ceri 19831. Kulkarni señala al respecto que el diseño de la distribución

    tiene como entradas, un esquema global de todos los objetos globales (relaciones) y datos relativos a la carga esperada de los diferentes tipos de transacciones que serán

    emitidas por los usuarios [Kulkarni 19891. La forma en que será explotada la base de

    datos, se especifica a través de los parámetros del modelo. Con estos parámetros, se define una instancia particular del modelo. Al resolver dicha instancia se determina

    el diseño de la distribución Óptima de los datos para las condiciones de explotación

    especificadas.

    Los parametros asociados a la base de datos son: el número y el tamaño de los objetos de la base de datos, y la selectividad promedio de las operaciones sobre

    cada uno de los objetos.

    Los parámetros correspondientes a las operaciones realizadas por los usuarios

    son: el número de operaciones, la frecuencia de emisión de cada operación en los

    diferentes sitios y los objetos requeridos por cada una de las operaciones.

    Los parámetros relativos a los sitios son: el número de sitios, y la capacidad y el costo de almacenamiento de cada uno de los sitios.

    Los parámetros asociados a la red son: el tamaño en bytes del paquete de comunicaciones de la red y el costo de transmisión entre los sitios. Este Último parámetro se determina en función de la velocidad de transmisión entre los sitios.

    Este es un supuesto común, realizado en el aná