UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA
CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros
Unidad 1: Conceptos de base de datos
1. HISTORIA Los orgenes de las bases de datos se remontan a la Antigedad donde ya existan bibliotecas y toda clase de registros que se utilizaban para recoger informacin sobre las cosechas, censos, etc. En esta poca, no se contaba con la ayuda de mquinas que pudiesen reemplazar el trabajo manual. En 1884, Herman Hollerith cre la Mquina Automtica Perforadora de Tarjetas, la cual fue utilizada en el censo de 1890 en Estados Unidos. En el censo previo, se tard 7 aos en obtener datos, con el uso de la mquina, los resultados fueron obtenidos en solo 2 aos y medio. Dicho censo permita obtener datos importantes como nmero de nacimientos, poblacin infantil y nmero de familias. La mquina utilizaba sistemas mecnicos para procesar la informacin de las tarjetas y para tabular los resultados. En el invento de Herman Hollerith, cada perforacin en las tarjetas representaba un nmero y cada dos perforaciones una letra, cada tarjeta tenia capacidad para 80 variables. La mquina estaba compuesta por una perforadora automtica y una lectora, la cual por medio de un sistema elctrico lea los orificios de las tarjetas, sta tena unas agujas que buscaban los orificios y al tocar el plano inferior de mercurio enviaba por medio del contacto elctrico los datos a la unidad. Dcada de 1950. Se desarrollaron las cintas magnticas para el almacenamiento de datos, las cuales sirvieron para suplir las necesidades de informacin de las nuevas industrias. Con los datos almacenados en cintas las tareas de procesamiento de datos (como por ejemplo, las nminas) fueron automatizadas. Se lean datos de una o ms cintas (o de tarjetas perforadas) y se las pasaba a otra. Estas cintas (y los paquetes de tarjetas perforadas) slo se podan leer secuencial y ordenadamente, requiriendo grandes cantidades de tiempo para las operaciones sobre ellas. Dcada de 1960. Con la introduccin de los discos fijos o duros, cambi en gran medida el escenario del procesamiento de datos, mediante el acceso directo a los mismos, lo que ayud a ahorrar tiempo. La ubicacin de los datos en disco no era importante, ya que a cualquier posicin del disco se poda acceder en slo milisegundos. A diferencia de las cintas magnticas, ya no era necesaria la secuencialidad. En esta dcada aparecieron las primeras bases de datos, que aunque tiles, eran demasiado complejas e inflexibles y slo podan ser usadas por personal muy calificado. Si bien para escribir los programas de aplicacin se utilizaban lenguajes de alto nivel, se dispona tambin de instrucciones y de subrutinas especializadas para tratar las bases de datos, que requeran que el programador conociera muchos detalles del diseo fsico, y que hacan que la programacin fuera muy compleja. Puesto que los programas estaban relacionados con el nivel fsico, se deban modificar continuamente cuando se hacan cambios en el diseo y la organizacin de la base de datos. La preocupacin bsica era maximizar el rendimiento. El trmino bases de datos fue escuchado por primera vez en un simposio celebrado en California en 1963. Dcada de 1970. UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 1: Conceptos de base de datos
Edgar Frank Codd, en un artculo denominado "Un modelo relacional de datos para grandes bancos de datos compartidos" ("A Relational Model of Data for Large Shared Data Banks") en 1970, defini el modelo relacional y public una serie de reglas para la evaluacin de sistemas administradores de datos relacionales y as nacieron las bases de datos relacionales. La simplicidad del modelo relacional y la posibilidad de ocultar completamente los detalles de implementacin al programador fueron realmente atractivas. Codd obtuvo posteriormente el prestigioso premio Turing de la ACM (Association of Cumputing Machinery, asociacin de la maquinaria informtica) por su trabajo. Dcada de 1980. Inicialmente no se us el modelo relacional debido a que tena inconvenientes por el rendimiento, ya que no podan ser competitivas con las bases de datos jerrquicas y de red. Esta tendencia cambi por un proyecto de IBM el cual desarroll tcnicas para la construccin de un sistema de bases de datos relacionales eficientes, llamado System R. Las bases de datos relacionales con su sistema de tablas, filas y columnas, pudieron competir con las bases de datos jerrquicas y de red incluso en rendimiento. Las bases de datos relacionales supusieron un avance importante para facilitar la programacin, realizando automticamente casi todas las tareas de bajo nivel, liberando al programador en el nivel lgico. El modelo relacional consigui el reinado supremo entre todos los modelos de datos. Tambin en ese tiempo se dio una gran investigacin en las bases de datos paralelas y distribuidas, as como el trabajo inicial en las bases de datos orientadas a objetos. Dcada de 1990. Al acabar la dcada de los 80s, los sistemas de base de datos relacionales ya se utilizaban prcticamente en todas las empresas. Se crea el lenguaje SQL (estandarizndose posteriormente), que es un lenguaje para la realizacin de consultas, que permite especificar operaciones a realizar con los datos. El principal acontecimiento a finales de los 90s fue el crecimiento explosivo de la World Wide Web. Las bases de datos se implantaron mucho ms extensivamente que nunca antes. Los sistemas de bases de datos tienen ahora soporte para tasas de transacciones muy altas, as como muy alta fiabilidad y disponibilidad 24 horas al da y 7 das a la semana. Los sistemas de bases de datos tambin tuvieron interfaces Web a los datos, pues por este medio se facilitaba su consulta. Tendencias actuales. Hoy da, los sistemas de base de datos relacionales estn en plena transformacin para adaptarse a tres tecnologas de xito reciente, fuertemente relacionadas: la multimedia, la de orientacin a objetos e Internet y la Web. Tambien se ha extendido un tipo de aplicacin de bases de datos denominado Data Warehouse, o almacn de datos, que produce algunos cambios en los sistemas de base de datos relacionales del mercado. Los datos de un dataware son utilizados para anlisis que pueden brindar informacin valiosa. Estos almacenes de datos se utilizan exclusivamente para hacer consultas, de forma especial para que lleven a cabo estudios los analistas financieros, los analistas de mercado, etc. UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 1: Conceptos de base de datos
Actualmente, los sistemas de base de datos relacionales se adaptan a este tipo de aplicacin, incorporando, por ejemplo, herramientas como la creacin y el mantenimiento de rplicas con una cierta elaboracin de los datos, la consolidacin de datos de orgenes diferentes, la creacin de estructuras fsicas que soporten eficientemente el anlisis multidimensional, etc.
2. DEFINICIN DE BASE DE DATOS Coleccin o depsito de datos integrados, con redundancia controlada y con una estructura que refleje las interrelaciones y restricciones existentes en el mundo real. Los datos que han de ser compartidos por diferentes usuarios y aplicaciones, deben mantenerse independiente de stas, y su definicin y descripcin, nicas para cada tipo de datos, han de estar almacenadas junto con los mismos. Los procedimientos de actualizacin y recuperacin, comunes y bien determinados, habrn de ser capaces de conservar la integridad, seguridad y confidencialidad del conjunto de los datos
Otras definiciones: Coleccin de datos Interrelacionados almacenados en conjunto sin redundancias perjudiciales o innecesarias; su finalidad es servir a una aplicacin o ms, de la mejor manera posible; los datos se almacenan de modo que resulten independientes de los programas que los usan; se emplean mtodos bien determinados para incluir nuevos datos y para modificar o extraer los datos almacenados (Martn, 1975). Coleccin o depsito de datos, donde los datos estn lgicamente relacionados entre s, tienen una definicin y descripcin comunes y estn estructurados de una forma particular. Una base de datos es, tambin, un modelo del mundo real y, como tal, debe poder servir para toda una gama de usos y aplicaciones. (Conference des Staticiens Europens, 1977) Conjunto de datos de la empresa memorizado por un ordenador, que es utilizado por numerosas personas y cuya organizacin est regida por un modelo de datos. (Flory, 1982) Conjunto estructurado de datos registrados sobres soportes accesibles por ordenador para satisfacer simultneamente a varios usuarios de forma selectiva y en tiempo oportuno. (Delobel, 1982) Coleccin no redundante de datos compartibles entre diferentes sistemas de aplicacin. (Howe, 1983). Coleccin integrada y generalizada de datos, estructurada atendiendo a las relaciones naturales de modo que suministre todos los caminos de acceso necesarios a cada unidad de datos con objeto de poder atender todas las necesidades de los diferentes usuarios. (Deen, 1985) Conjunto de ficheros maestros, organizados y administrados de una manera flexible de modo que los ficheros puedan ser fcilmente adaptados a nuevas tareas imprevisibles (Frank, 1988) Coleccin de datos interrelacionados. (Elmasri y Navathe, 1989)
3. VENTAJAS Y DESVENTAJAS DEL ENFOQUE DE BASE DE DATOS Ventajas: 1. Independencia de los datos respecto a los tratamientos y viceversa: ya que evita el importante esfuerzo que origina la reprogramacin de las aplicaciones cuando se producen cambios en los datos. 2. Coherencia de los resultados: debido a que la informacin se recoge y almacena una sola vez, en todos los tratamientos se utilizan los mismos datos, por lo que los resultados de todos ellos son coherentes y perfectamente comparables. UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 1: Conceptos de base de datos
3. Mejor disponibilidad de los datos para el conjunto de los usuarios: cada usuario ya no es propietario de los datos, puesto que stos se comparten entre las aplicaciones, existiendo una mejor disponibilidad de los datos para todos los que necesiten de ella (acceso). 4. Mayor valor informativo: el valor informativo de su conjunto es superior a la suma del valor informativo de los elementos individuales que lo constituyen. 5. Mejor y ms normalizada documentacin de la informacin, la cual est integrada con los datos: en las bases de datos, se incluyen no slo los datos, sino tambin la semantica de los mismos. 6. Mayor eficiencia en la recogida, validacin y entrada de los datos al sistema: al no existir casi redundancia, los datos se recogen y validan una sola vez, aumentando as el rendimiento de todo el proceso previo al almacenamiento. 7. Reduccin del espacio de almacenamiento: la desaparicin de las redundancias, as como la aplicacin de tcnicas de compactacin, lleva consigo una menor ocupacin en disco. Desventajas 1. Instalacin costosa: la implantacin de un SBD puede llevar consigo un costo elevado tanto en equipo fsico (nuevas instalaciones o ampliaciones de hardware) como en lgico (sistemas operativos, compiladores, etc). 2. Personal especializado: Los conocimientos necesarios para una utilizacin correcta y eficaz sobre todo en la ABD, implican una necesidad de personal especializado que resulta difcil encontrar y formar. 3. Implantacin larga y difcil: por las causas anteriores la implantacin puede convertirse en una tarea larga y laboriosa. Las dificultades que aparecen en el desarrollo llevan a que se superen los plazos. 4. Falta de rentabilidad a corto plazo: un SBD, tanto por su costo y por el tiempo que tarda en estar operativo, no es rentable a corto plazo. Puede calcularse en el orden de meses para un sistema mediano y aos para uno grande. 5. Ausencia real de normas: Un problema que suele surgir al momento de la creacin de una BD, es la ausencia de normas reales. 6. Desfase entre teora y prctica: Al existir un considerable avance entre la teora y la prctica, en muchas ocasiones los usuarios se engaan con las prestaciones reales que pueden proporcionar los SGBD.
4. COMPONENTES DE LOS SISTEMAS DE BASES DE DATOS Un sistema de bases de datos comprende cuatro componentes principales: datos, hardware, software y usuarios. Los Datos: son la parte mnima de la informacin, solo adquieren sentido cuando son convenientemente agrupados, estructurados e interpretados.
El Hardware: Es el conjunto de dispositivos fsicos sobre los que reside una Base de Datos. Consiste en: Una o ms computadoras, Unidades de discos, Terminales, Impresoras, Unidades de cinta, Cables de conexin, etc.
El Software: Incluye dos tipos de Software: El software de propsito general para la gestin de la BD (SGBD) El software de aplicacin, que usa las facilidades del SGBD para manipular la BD
Las Personas: Podemos tener dos categoras de personas: - Usuarios: Los ejecutivos, los administradores, el personal de oficina - Informticos: los ABD, analistas, programadores, diseadores, y los administradores de sistemas UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 1: Conceptos de base de datos
5. ARQUITECTURA DE LAS BASES DE DATOS Niveles de Abstraccin en un Sistemas de Bases de Datos. Las bases de datos respetan la arquitectura de tres niveles definida, para cualquier tipo de base de datos, por el grupo ANSI/X3/SPARC (Standard Planning and Requirements Committee of the American National Standards Institute on Computers and Information Processing). En esta arquitectura la base de datos se divide en el nivel fsico(o de mquina), el nivel externo (o de usuario) y el nivel conceptual Nivel externo: es el nivel de mayor abstraccin. A este nivel corresponden las diferentes vistas parciales que tienen de la base de datos los diferentes usuarios. Nivel conceptual: es el nivel medio de abstraccin. Corresponde a la estructura organizacional de los datos de la base obtenida al reunir los requerimientos de todos los usuarios de una empresa, sin preocuparse de su organizacin fsica ni las vas de acceso. Se incluyen entidades, atributos, reglas, relaciones, etc. Nivel interno: es el nivel ms bajo de abstraccin, y define cmo se almacenan los datos en el soporte fsico, as como los mtodos de acceso. El objetivo de la arquitectura de tres niveles es el de separar los programas de aplicacin de la base de datos fsica.
Independencia lgica y fsica de los datos La independencia lgica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no debern verse afectados. La independencia fsica es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos ficheros fsicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualizacin de datos. Dado que la independencia fsica se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de almacenamiento, es ms fcil de conseguir que la independencia lgica.
6. SISTEMA DE GESTION DE BASES DE DATOS (SGBD) Definicin Es un conjunto coordinado de programas, procedimientos, lenguajes, etc. Que suministra, tanto a los usuarios no informticos como a los analistas, programadores o al administrador de la BD, los medios necesarios para describir, recuperar y manipular los datos almacenados en la base, manteniendo su integridad, confidencialidad y seguridad. Funciones del SGBD A. Descripcin o Definicin: Permite al administrador de la base especificar los elementos de datos que la integran, su estructura y las relaciones que existen entre ellos, las reglas de integridad semntica, los controles a efectuar, etc. As como las caractersticas de tipo fsico y las vistas lgicas de los usuarios. B. Manipulacin: Permite a los usuarios de la base, informticos, o no, buscar, aadir, suprimir o modificar los datos de la misma, siempre de acuerdo con las especificaciones y las normas de seguridad dictadas por el administrador. C. Utilizacin: Rene todas las interfaces que necesitan los diferentes usuarios para comunicarse con la base y proporciona un conjunto de procedimientos para el administrador.
Componentes de los SGBD UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 1: Conceptos de base de datos
1. El Lenguaje de Definicin de Datos (LDD): Son lenguajes simples basados en una gramtica sencilla, que permiten definir los datos en los distintos niveles de abstraccin. 2. El Lenguaje de Definicin del Almacenamiento de los Datos (LDAD): Permite la definicin de los datos en el nivel de representacin fsico. 3. El Lenguaje de Manipulacin de Datos LMD): Es un lenguaje que permite la manipulacin de los datos (insercin, borrado, modificacin y recuperacin). Existen dos tipos: los procedimentales y los no procedimentales. 4. El Diccionario de Datos (DD): Es uno o un conjunto de archivos que contienen informacin acerca de los datos que pueden ser almacenados en la Base de Datos. En el DD se encuentran almacenados: El esquema lgico El esquema fsico Los subesquemas 5. El Gestor de Base de Datos: Es un componente software encargado de garantizar el correcto, seguro, integro y eficiente acceso y almacenamiento de los datos. El Gestor de BD es responsable de: Garantizar la privacidad de los datos. Garantizar la seguridad de los datos. Garantizar la integridad de los datos Garantizar el acceso concurrente a la BD Interaccionar con el SO y en especial con el gestor de archivos del mismo. 6. El Administrador de la BD: Se trata de un componente humano de suma importancia en el resultado que el uso de la BD va a tener en la resolucin de un problema. Las tareas del ABD son: La definicin del esquema lgico de la BD La definicin del esquema fsico de la BD La definicin de los subesquemas o vistas El control de la privacidad de los datos El mantenimiento de los esquemas Especificacin de procedimientos para el mantenimiento de la seguridad de los datos almacenados. 7. Los usuarios de la Base de datos: Usuarios terminales Usuarios tcnicos Usuarios especializados Usuarios crticos