Fundamentos de la teoría relacional para extracción de datos MultiValores del RDBMS jBase Galván-Salinas A.M.1, Jiménez-Alfaro, A.J.2. 1,2 MISC-TESE, Av. Tecnológico s/n, Col. Valle de Anáhuac, CP 55210 1 am.galvan@ymail.com ajja_mx@yahoo.com 2 Resumen El presente artículo pretende fundamentar el cálculo relacional del manejador de base de datos multivalor relacional jBase, el cual tiene como objetivo cargar los datos en la mayoría de los gestores de datos relacionales, aumentando la velocidad en los procesos actuales de extracción de datos para jBase y dar a conocer las herramientas de conexión que se utilizar para gestionar los datos y fundamentándonos en de las bases de datos relacionales. Palabras Clave: ETL, jBase, RDBMS Introducción La Extracción Transformación y Carga de siglas E.T.L, son procesos por lotes programados, los procesos de integración de datos se generan en tres pasos; la extracción recoger o tomar datos desde su fuente. La transformación, es la de convertir, reformatear, limpiar los datos en formato que se pueden utilizar ser la base de datos de destino. La carga, es importar los datos transformados en una base de datos destino, almacén de datos o un Data Mart. La integración de datos permite crear información consistente y precisa. Crear reglas de negocio en los metadatos, lo cual permite la rápida generación de flujos de datos, esto nos lleva a la importancia de la extracción de un sistema gestor de bases de datos, particularmente si se desea hacerlo en bases de datos multivalor jBase, cuando los ETL actuales del mercado, en su mayoría son únicamente son para bases de datos relacionales de un valor y la consultoría para lograr la extracción en las bases de datos multivalores son costosas y de un largo tiempo. Metodología Se utilizó como base el método científico realizando métodos cuantitativos tratando de establecer relaciones casuales que supongan la explicación del trabajo, tales como descripciones de los resultados de experimentos, a enunciados universales, hipótesis o teorías, para controlar el desarrollo total con métodos observacionales recogiendo datos relevantes a medida que se desarrolla el proyecto terminando con el caso de estudio, que nos lleve a utilizar la herramienta como parte de un nuevo desarrollo, recogiendo los datos para determinar la efectividad de la herramienta. Bases de datos Relacionales El papel de las bases de datos en los sistemas y aplicaciones de cómputo es de gran importancia ya que la mayoría de estos sistemas tienen alguna necesidad de almacenar datos de manera persistente. Los sistemas encargados de la administración de esos conjuntos de datos son llamados sistemas manejadores de base de datos (SGDB). En 1970 Edgar F. Codd publicó un trabajo proponiendo un nuevo modelo de datos que perseguía como objetivo general la flexibilidad y sencillez; el modelo ofrece estructuras de datos simples y lenguajes sencillos para los usuarios, facilitando la comprensión y utilización por estos. Sin la importancia de este objetivo de sencillez. (Stefan, Bob, & Richard, 2001) La aparición del modelo relacional representa un verdadero hito en el desarrollo de las bases de datos, ya que ha marcado tres etapas diferentes, conocidas como generaciones de los SGBD: Pre-relacionales. Los sistemas pre relacionales (SGBD) se basan en modelos Codasyl (en red), Jerárquico y ficheros planos (flat files). Relacionales. Los sistemas relacionales (RDBMS) ganan madurez en el mercado y los productos basados en este modelo van desplazando poco a poco a los sistemas basados en punteros de la etapa pre-relacional. Post-relacionales. Aparecen manifiestos de otros modelos de datos, en especial los orientados a objetos. Se distinguen manifiestos puristas OO que dan lugar a RDBMS-OO puros como O2, Gemstone y, en paralelo, corrientes evolutivas del modelo relacional que relajan hipótesis básicas del modelo original de Codd (relajación de la primera forma normal) para ofrecer estructuras de datos más complejas. Se propone una evolución desde el modelo relacional a RDBMS-OO relacionales. (Harrington, 2009) Principios de las bases de datos Relacionales En contraste con todos los modelos de datos y la gestión de bases de datos (ya sea jerárquica, red u orientada a objetos), el modelo relacional goza de una base teórica sólida, de hecho, proporcionar los fundamentos fue uno de los principales objetivos de la labor de investigación llevada a cabo por E.F.Codd que resultó en el modelo relacional elaborado en los años 70’s. (Stefan, Bob, & Richard, 2001) La estructura de una RDBMS es la siguiente: “Relación: Es la estructura básica del modelo relacional. Con una relación es posible representar tanto instancias de una entidad del universo real como interrelaciones entre entidades de distinto tipo. Es capaz de recoger interrelaciones de cardinalidad múltiple. Su representación informal es una tabla. Atributo: Representa las propiedades de la relación. Un atributo, necesariamente ha de definirse sobre un dominio. Su representación informal es una columna y es la unidad más pequeña de los datos en el modelo relacional. Dominio: Es el conjunto válido de valores de referencia para definir propiedades o atributos. Un dominio es un conjunto nominado y homogéneo de valores. Tupla: Es una ocurrencia o instancia dentro de una relación. Una tupla permite referenciar una instancia de una entidad en el universo o la interrelación específica o concreta entre instancias de entidades. Su representación informal es una fila. Una relación tiene un “conjunto” de tuplas. Grado: Se define como el número de dominios Cardinalidad: Se define como el número de tuplas de la relación.” (Sevilla) Una relación es un subconjunto de un producto expandido cartesiano de , no ( ), tales que para cada necesariamente de dominios distintos …., elemento =< , ,…., >∈ ( ) una proposición predefinida (< , )( ) ,… , > es verdadera; ∈ ( ) para cada i = , , . . . , , donde es el número de -filas en la relación (cardinalidad de ) y es el número de atributos en la relación (grado de ). (Stefan, Bob, & Richard, 2001) Las Bases de Datos MultiValores Don Nelson (1960) diseñó el modelo de datos multivalor en la primera mitad de 1960. Don Nelson trabajó en la primera implementación de este modelo para el Ejército de los EE.UU. en 1965. En la década de los 60´s son solo tres las implementaciones principales bases de datos multivalores que fueron muy similares, Dick Pick VersiónR77, MicrodataReality 3.x, y Prime Information 1.0. A pesar de los intentos de normalizar las bases de datos multivalor, en particular por Spectrum International y la Asociación de Fabricantes de Spectrum, no hay normas para las bases de datos multivalor. Grupos de comercialización y de la industria de las RDBMS han clasificado en los últimos años a las bases de datos Multivalor como pre-relacional o post-relacional, con críticas o malos acuerdos para la clasificación de este tipo de SGBD. En la actualidad podría ser clasificada como No SQL. Con un modelo de datos que se alinea bien con XML y que permite el acceso con o sin el uso de SQL. (Encyclopedias) JBase Base de Datos MultiValor Fue lanzado en 1991 por una pequeña compañía en el Reino Unido por James Anthony Consultores, (JAC), más tarde se convertiría jBASE Software Limited. Formado 06 de marzo 1989, por James Martin y Clive Anthony Ketteridge, la compañía creció a nivel mundial a lo largo de la década de 1990. El 1 de diciembre de 1999, jBASE Software Limited y sus filiales fueron adquiridas al 100% por TemenosGroup AG, un banco con sede en Suiza. La historia de la jBASE se caracteriza por ser los pioneros en tener una idea de las bases de datos MultiValor y relacional, desde el principio jBASE fue una base de datos diseñada para la independencia de plataforma. La base de datos multidimensional jBASE, lleva a los puntos del modelo de base de datos relacional y le suma varios beneficios importantes, como la facilidad de uso, excelente rendimiento, pequeño tamaño y todas las ricas características de los Atributos Multivalores. (TEMENOS, 2011) El cálculo Relacional en las Bases de Datos MultiValores Es una restricción entre dos conjuntos de atributos de una relación, que requiere que ciertas tuplas estén presentes en la misma. Dicha restricción se concreta en la cuarta forma normal. Sea un esquema de relación. La dependencia multivaluada → vale en si los pares de tuplas en , tal que [ ] = [ ] existen las tuplas y en tales que: [ ]= [ ]= [ ]= [ ] (5) [ ]= [ ] (6) [ − − ]= [ − − ] (7) [ ]= [ ] (8) [ − − ]= [ − − ] (9) En otras palabras se puede decir que: → si dado un valor de , hay un conjunto de valores de asociados y este conjunto de valores de NO está relacionado (ni funcional ni multifuncionalmente) con los valores de − − (donde es el esquema), es decir es independiente de los atributos de − − . Una dependencia multivaluada de la forma → , es trivial cuando el conjunto de atributos { , } conforma el total de los atributos del esquema”. (Harrington, 2009) La conectividad de a bases de datos Se realiza por medios de una Interfaz de Objetos de Acceso a Datos, se encuentra como punto medio entre las aplicaciones y las API's que llegan a ser necesarias para el acceso a las bases de datos. ODBC.- Conectividad Abierta a Bases de Datos accede a datos en sistemas manejadores de bases de datos relacionales, creado por Microsoft para utilizar datos en ETL’s en varios ambientes operativos, como Windows y Linux, utilizando para ello SQL. (Signore, John, & Michael O, 1995) OLE DB.- Bases de Datos con Vinculación e Incrustación de Objetos está conceptualmente dividido en consumidores y proveedores; el consumidor es la aplicación que requiere acceso a los datos y el proveedor es el componente de software que expone una interfaz OLE DB a través del uso del Component Object Model (COM). (Brill, 2000) JDBC.- Conectividad Java a Bases de Datos conocida por sus siglas JDBC es un conjunto de interfaces de comunicación entre aplicaciones Java y fuentes de datos. Conecta un programa de usuario con la base de datos de forma transparente, sin importar el software de administración de base de datos que se utilice para controlarlo. (Haecke, 1997) Conclusiones La Fundamentación de las bases de datos relacionales es necesaria para el desarrollo del E.T.L que se pretende crear, se deja en claro, un bosquejo de historia sobre los Sistemas Gestores de Bases de Datos Pre-Relacionales, Relacionales y Post-Relacionales, así como estructura de las bases de datos relacionales y sus elementos principales, algunos de los principales autores de las bases de datos multivalores, los nombres de las 3 principales bases de datos multivalor y su carencia de normalización. Y por último el nacimiento de la base de datos jBase con los atributos multivalor y relacional. Como trabajo futuro se generará un modelo de Software E.T.L para la base de datos multivalor jBase con extracción de archivos planos, reglas de carga de archivos, procesos de carga, verificaciones de archivos planos (expresiones regulares, integridad referencial y normalización). Metas Se pretende crear E.T.L para extracción de datos para las corporaciones que utilicen jBase como base de datos principal y que tengan la necesidad de extraer datos para manejarlos de manera integral en un DataWarehouse, DataMart o migración de datos. Con objeto del desarrollo de un nuevo software con reglas de negocio ya establecidas. Generar un modelo de Software E.T.L para la base de datos multivalor jBase con las siguientes características; extracción de archivos planos, reglas de carga de archivos, proceso de carga, verificaciones de los archivos planos expresiones regulares, integridad referencial, normalización. Bibliografía Academic Dictionaries and Encyclopedias. (n.d.). Retrieved 05 25, 2012, from http://en.academic.ru/dic.nsf/enwiki/5743873 Brill, G. (2000). Applying COM+. United States of America: New Riders Publishing. Encyclopedias, A. D. (n.d.). Academic Dictionaries and Encyclopedias. Retrieved 05 25, 2012, from http://en.academic.ru/dic.nsf/enwiki/5743873 Haecke, V. (1997). Bernard. IDG Books Worldwide. Harrington, J. L. (2009). Relational database design and implementation. Burlington, MA 01803, USA: Morgan Kaufmann. Sevilla, U. d. (n.d.). Bases de Datos Modelo relacional de Codd Estructuras y restricciones. Retrieved 04 06, 2012, from Lenguajes y Sistemas Informaticos: http://www.lsi.us.es/docencia/get.php?id=5366 Signore, R., John, C., & Michael O, S. (1995). The ODBC Solution. Mcgraw-Hill. Stefan, S., Bob, C., & Richard, L. (2001). Theory and Practice of Relational Databases. Oxford, UK: Taylor & Francis. TEMENOS. (2011). TEMENOS HOLDINGS NV. Retrieved 04 06, 2012, from TEMENOS HOLDINGS NV: http://www.jbase.com/new/support/41docs/jBASE%205%20Overview.pdf