Resumen
En la presente investigación se propone la implementación
de una nueva extensión del lenguaje SQL para sistemas
gestor de base de datos objeto relacionales. La
extensión propuesta permitan definir, crear, almacenar
y manipular bases de datos simbólicas, la nueva
extensión simbólica incluye entre sus objetos nuevos
tipos de datos, variables, operadores y funciones
almacenadas escritas en el lenguaje de programación
C++ y el lenguaje SQL.
Esta extensión puede utilizarse como una librería
dinámica y su licenciamiento será de código abierto
para facilitar a usuarios de bases de datos e investigadores
su utilización. A diferencia de otras herramientas
existentes, esta extensión hace posible que el uso
de los datos simbólicos sea similar a otros tipos
de datos nativos del servidor de base de datos.
Las herramientas que se diseñen e implementen en
esta investigación serán accesibles a todos los
usuarios interesados. Se pondrán a disposición en
el sitio web de base de datos de la Escuela de Informática
de la Universidad Nacional de Costa Rica, su utilización
es libre pero los derechos sobre ellos es de la
Universidad Nacional y el sello de la universidad
estará presente en la interfaz de usuario de las
herramientas.
Para verificar la funcionalidad de la extensión
propuesta se harán experimentos de transformación
de tablas relacionales de grandes volúmenes de datos
a tablas de objetos simbólicos en servidores de
bases de datos objeto-relacionales, se determinará
la eficacia de los resultados obtenidos, haciendo
comparaciones con los mismos experimentos pero utilizando
otras herramientas para transformación de datos
simbólicos existentes.
Marco Teórico
Segundo a segundo se registran miles de
nuevos datos en cientos de sistemas de
información, esto no sería un problema si no
fuera que existe la necesidad de extraer
información útil de dichos datos. Los grandes
volúmenes de datos no son utilices a no ser que
de ellos, se pueda extraer información que los
investigadores o la gerencia puedan aprovechar.
Una base de datos de mediana a gran escala puede
tener de millones a cientos o miles de millones
de registros, esto trae consigo dos problemas
durante la extracción de información. En primer
lugar la gran cantidad de datos hace imposible
encontrar patrones observables a simple vista. Y
en segundo lugar los algoritmos que se han
desarrollado funcionan bien en pequeños
volúmenes de datos, pero al incrementar la
población estos algoritmos se les observa un
deterioro en su rendimiento.
La meta actual de los investigadores de datos,
consiste en encontrar formas de resumir estos
volúmenes gigantescos de datos, minimizando la
cantidad de datos y maximizando la cantidad de
información que se pueda extraer de la población
inicial. Es justamente en este punto donde los
datos simbólicos juegan un gran papel.
Los datos simbólicos logran reducir la
cardinalidad del conjunto inicial de diversas
fuentes de datos, formando un nuevo conjunto de
datos (con cardinalidad menor), con ello se
pierde precisión pero permite obtener mayor
facilidad en el análisis de los datos.
Por ejemplo supongamos una tabla con la
información médica sobre las muestra de sangre
de pacientes nacionales, tomadas en diversos
momentos históricos, esta tabla puede tener
millones de registros sobre las muestras de
Sodio (Na) en sangre. Dichos datos son difíciles
de manejar si los tratamos como un todo (como
una población), un enfoque más práctico sería
tratar dichos datos como un intervalo de la
siguiente forma: [140mmol/L – 150mmol/L] Sodio
(Na) en sangre para un paciente en particular. O
bien podríamos representar los datos en forma de
muestras: [140mmol/L, 143.2mmol/L, 148mmol/L,
150mmol/L] para el mismo paciente. Otra forma de
representarlo sería mediante el promedio tomado
de las muestras, por ejemplo: [145.3 mmol/L]
para el mismo paciente, note desde este punto
que podrían existir diversas formas de
representar los datos, tales como histogramas,
promedios, desviación estándar. Estos datos
reciben el nombre de datos simbólicos los cuales
poseen su propio comportamiento (por ejemplo la
suma entre promedios se define de forma distinta
a la suma de intervalos).
La metodología de la presente investigación está
diseñada según los productos que se obtienen de
sus objetivos. Cada uno de los productos tiene una
relación directa con el anterior, razón por la cual
se explicará la metodología en función de etapas.
En esta etapa se procederá a crear
los tipos de datos simbólicos en la base de datos,
se realizará una investigación sobre la creación
de tipos de datos en bases de datos, la creación
de operadores simbólicos para la manipulación de
los tipos de datos simbólicos y la creación de funciones
para la manipulación de datos simbólicos.
Como producto principal de esta etapa se contará
con los nuevos tipos de datos simbólicos y sus correspondientes
operadores, para crear las variables simbólicas:
- Continuas
- Modal
- Modal multivaluada
- Intervalo
- Histograma
Etapa 2: Construcción de extensiones
simbólicas
El problema particular a resolver
en esta etapa, consiste en generar un conjunto de
funciones SQL, que permitan crear, modificar y borrar
y manipular datos simbólicos y tablas simbólicas,
de forma que este tipo de datos pueda ser utilizado
en forma similar a otros tipos de datos.
Utilizando la interfaz del Sistema Gestor de Bases
de Datos para la ejecución de instrucciones se crearán
un conjunto de pruebas que verifiquen la eficacia
de las extensiones. En forma interactiva y por el
uso de un archivo de instrucciones, se procederá
construir tablas de objetos simbólico y manipularlas.
Se verificarán eficacia de las pruebas según los
resultados esperados, previamente establecidos en
forma manual.
Etapa 3: Construcción del prototipo
de transformación
Esta es la etapa en la que se crea una interfaz,
constituida por funciones, transformación y almacenamiento
y manipulación para datos de tipo simbólicos. A
diferencia de otras herramientas como es el caso
de DB2SO, el nivel de conocimiento sobre funciones
SQL es mínimo, por lo que esto sería una gran ayuda
y facilitaría la transformación de datos.
La interfaz de transformación estará conformada
por las extensiones mencionadas y funciones adicionales
que permiten conectarse a bases de datos relacionales.
Además proveerá funciones que extraigan los datos
simbólicos para diferentes algoritmos de análisis
de datos simbólicos.
Para validar la usabilidad de la interfaz propuesta,
se impartirá un taller del uso de la misma. Taller
estará dirigido a profesores de la cátedra de bases
de datos, profesores de la escuela y otras escuelas
de la universidad, así como investigadores y estudiantes
de la carrera de informática y carreras o cursos
a fin. El taller tiene como objetivo, promover el
uso de los datos simbólicos y su aplicación en el
análisis de datos facilitando a los usuarios el
proceso de transformación de datos relacionales
a datos simbólicos.
Etapa 4: Validación de la extensión
simbólica y análisis de eficiencia
Para validar la eficiencia de la extensión se realizará
un experimento que consiste en la comparación de
los resultados obtenidos de la aplicación de la
extensión con los resultados que se obtienen al
realizar la transformación con otras herramientas
existentes.
DESCARGAR SOFTWARE pSymbolic
DESCARGAR SOFTWARE oSymbolic