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á
Top Related