You are on page 1of 4

Universidad Central de Nicaragua Ingeniera en Sistemas Base de datos I

INTRODUCCIN A LOS SISTEMAS DE BASES DE DATOS. 1. Evolucin de los sistemas de bases de datos. Uno de los usos ms frecuentes de los computadores es el de almacenamiento masivo de datos. Aqu es importante hacer distincin entre datos e informacin. Cuando nos referimos a datos, estamos hablando de un texto, un nmero o un conjunto arbitrariamente grande de ambos. En el momento en que hablamos de informacin, nos referimos a datos que pueden ser relacionados entre s, de forma ms o menos inteligente, con el objetivo de sacar alguna conclusin que nos permita tomar decisiones importantes en nuestra empresa u organizacin. El computador en s no es inteligente, lo que pasa es que es capaz de hacer millones de operaciones simples en muy poco tiempo, con lo que es posible procesar un enorme nmero de datos para extraer informacin. Cmo extraer informacin de los datos? Hay muchas formas: obtener estadsticas sobre destinos hoteleros preferidos, obtener movimientos tursticos segn la procedencia, emitir facturas en una agencia de viajes, enviar cartas a nuestros mejores clientes, etc. Para poder realizar todas estas operaciones es necesario almacenar de alguna forma datos sobre los clientes, los paquetes de viajes, las reservas, informacin estadstica, etc. segn la informacin que se desee obtener. Tradicionalmente, antes del uso de computadores, la informacin se extraa tras un minucioso examen de los datos almacenados en fichas de cartn que se guardaban en los cajones de grandes ficheros en una oficina, lo cual era muy costoso debido al tiempo requerido, o bien a la poca exactitud de los resultados obtenidos, que haca tomar decisiones poco acertadas. Con la llegada de los computadores, y los dispositivos de almacenamiento electrnico, discos duros, tambores magnticos, fichas perforadas, cintas magnticas, etc., aparece el concepto de fichero electrnico. Un fichero electrnico es igual que un fichero con cajones y fichas de cartn en su interior, slo que estn almacenados sobre una superficie magntica (con el consiguiente ahorro de espacio), y son gestionados a travs de un computador (con el consiguiente ahorro en velocidad a la hora de acceder), lo que posibilita su examen de forma veloz a travs de la mquina. Normalmente, los datos necesarios no se almacenan en un slo fichero, sino que para extraer una determinada informacin, es necesario consultar ficheros de distinto tipo: ficheros de clientes, de pedidos, de proveedores, de ofertas, de facturas, de albaranes, etc. Por ejemplo, para realizar un pedido de comestibles en un hotel, sera necesario consultar un fichero de existencias o stock, y el fichero de proveedores, realizar un pedido, y dejar constancia del mismo en el fichero de pedidos, para que, una vez recibido el pedido, nos cercioremos de que lo que se ha recibido es aquello que se pidi. Este fue un gran paso en lo que respecta al almacenamiento y gestin de los datos. No obstante, a medida que pas el tiempo, se observ que la informacin extrada de estos ficheros era a menudo contradictoria y propensa a errores de coordinacin (incoherentes): aparecen albaranes con nmeros de clientes que n o existen en el fichero de clientes, cada vez que es necesario indicar un proveedor en la ficha de pedidos hay que poner su nombre y direccin, con lo cual un mismo proveedor puede aparecer con varias direcciones distintas por error, etc. Para solucionar este problema, interviene de nuevo la capacidad de los computadores para hacer rpidamente muchas cosas simples. Se opt por hacer que el computador controlase la concordancia entre los datos, y para ello se dio a los datos una estructura distinta, y a no basada en ficheros como tales, sino basada en listas o tablas de fichas (llamadas tuplas o lneas), y en cada una de las cuales no se encontraba toda la informacin, sino que era necesario relacionar datos de varias tablas para obtener la informacin deseada. Aparecen as las bases de datos.

Ing. Valente Cuadra ucn-ing-cuadra.blogspot.com

Universidad Central de Nicaragua Ingeniera en Sistemas Base de datos I

La evolucin de la informtica ha pasado por numerosas formas de abordar los problemas mediante programas, en funcin de la potencia de las mquinas en cada poca, y de la experiencia de los informticos que ha ido aumentando a lo largo de los aos. De esta forma, aparecieron las bases de datos jerrquicas y en red, cuy as caractersticas veremos ms adelante. Posteriormente las bases de datos relacionales, que son las que nosotros estudiaremos, sustituyeron rpidamente a estas dos, y a que las relacionales se basan en estudios matemticos que aseguran la eficiencia de las operaciones que permite realizar, as como su correctitud y completitud, y definen claramente la forma en que deben abordarse los problemas. Actualmente, las bases de datos relacionales son las ms usadas a nivel profesional, aunque para aplicaciones avanzadas y en los ambientes acadmicos tambin tienen bastante importancia las bases de datos orientadas a objetos (especialmente para trabajos sobre Internet), y las bases de datos deductivas (para trabajos en Inteligencia Artificial). 2. Definicin de base de datos. Existen numerosas definiciones de lo que es una base de datos, y de lo que es un S.G.B.D. De hecho, a menudo se confunden ambos trminos dad a la relacin biunvoca existente entre ambos. La definicin ms aceptada dice algo as como: En esencia, una base de datos no es ms que una coleccin de informacin que existe a lo largo de un perodo de tiempo, a menudo de varios aos. Ms claramente, el trmino base de datos se refiere a una coleccin de datos gestionada por un Sistema Gestor de Bases de Datos, S.G.B.D., o simplemente Sistema de Bases de Datos. Silberschatz extiende un poco ms el concepto de base de datos, incluyendo en el trmino a los programas para acceder a estos datos, aunque no deja claro si son s lo los programas componentes del S.G.B.D., o incluye tambin a los programas de aplicacin, hecho que, otros autores, como Julio Carmona, dan por sentado, aunque con mucha menos rigurosidad. Se considera, en general, como base de datos a la coleccin de datos junto con el S.G.B.D. Idealmente, el S.G.B.D. debe poseer una serie de caractersticas indispensables par a satisfacer a los usuarios: - Debe poseer un lenguaje de definicin de datos que permita fcilmente la creacin de nuevas bases de datos, as como la modificacin de su estructura. - Debe poseer un lenguaje de manipulacin de datos, que permita la insercin, eliminacin, modificacin y consulta de los datos de la base, de la forma ms eficiente y conveniente posible. - Debe permitir el almacenamiento de enormes cantidades de datos (miles de millones de caracteres), sin que el usuario perciba una degradacin en cuanto al rendimiento global del sistema. - Debe permitir la gestin segura de los datos, con respecto a accesos no autorizados, y a accidentes producidos por los dispositivos mecnicos o electrnicos que soportan los datos almacenados. - Debe permitir el acceso simultneo por parte de varios usuarios, impidiendo adems, que dichos accesos concurrentes den lugar a datos corruptos o inconsistentes. - Debe suministrar independencia fsica de los datos, que asegure que, sea cual sea la estructura de los datos en los dispositivos electromecnicos de almacenamiento, el usuario y las aplicaciones los percibirn siempre de manera uniforme y til.

Ing. Valente Cuadra ucn-ing-cuadra.blogspot.com

Universidad Central de Nicaragua Ingeniera en Sistemas Base de datos I


Estas caractersticas dan lugar a otra definicin de base de datos, quizs ms orientada a la moda actual en informtica: el diseo orientado a objetos, que consiste en hacer programas viendo el mundo como u n conjunto de objetos que se relacionan entre s para conseguir un objetivo comn. Segn esta visin, podemos considerar una base de datos como una organizacin coherente de datos permanentes, y accesibles para usuarios concurrentes. Esta definicin lleva implcito el concepto de S.G.B.D., y a que es ste quien se debe encargar de almacenar los datos (y por tanto de hacerlos permanentes y no voltiles), de gestionar su integridad (y por tanto de que sean coherentes), y de controlar a los mltiples usuarios (permitiendo as la concurrencia). La forma en que las distintas bases de datos comerciales y acadmicas abordan estas caractersticas difiere enormemente, no slo por las tcnicas utilizadas sino tambin por las aproximaciones o paradigmas con que se han desarrollado. Aunque en el tema 2 haremos un breve estudio de los tipos de bases de datos, nos centraremos exclusivamente en el tipo ms extendido: las bases de dato s relacionales, y a que tienen un formalismo subyacente que las hace muy potentes. Adems, fueron desarrolladas hace y a bastantes aos, y han evolucionado lo suficiente como para suministrar poderosas herramientas que hacen fcil su gestin. De hecho, todas las caractersticas que hemos visto que debe poseer un S.G.B.D., son suministradas a travs de entornos e interfaces amigables y comprensibles que permiten un rpido aprendizaje de todas las funciones propias de una base de datos. En contraposicin, otro tipo de bases de datos, como las Orientadas a objetos, requieren que casi todas las funciones de creacin de base de datos, manipulacin, etc., se efecten a travs de programas, lo cual requiere un profundo conocimiento de las tcnicas de programacin, impropio de una carrera como la de Turismo. Por otro lado, sistemas igual de evolucionados, como el jerrquico o en red, han cado en desuso, y su aprendizaje supone un esfuerzo que aporta ms bien poco al estudiante que debe enfrentarse de inmediato ante un mundo de datos bsicamente relacional. 3. Componentes de un sistema de base de datos. Hasta ahora hemos visto una idea general de lo que es una base de datos, y la necesidad de que exista un gestor central que separe los datos en s de los usuarios, y que facilite una serie de tareas, as como se asegure de que se cumplen determinados requisitos indispensables para el buen funcionamiento del sistema. Ahora vamos a desmenuzar un poco ms el concepto de base de datos, y vamos describir sus componentes bsicos, justificando adems la necesidad de cada uno de ellos. 3.1. Datos. Efectivamente, una base de datos no tiene sentido sino est compuesta por datos. Lo que no est tan claro es la forma en que estos datos se deben disponer, qu datos se deben almacenar, y cmo los debe entender la mquina. La disposicin de los datos depende del mbito de aplicacin concreto en que se enmarque la base de datos. No es lo mismo una base de datos que almacene un dibujo vectorial de monumentos histricos que una base de datos para almacenar las reservas de clientes en un hotel. Lo que vara fundamentalmente en uno y otro caso, es la forma en que los datos se relacionan entre s, y el tipo de accesos a la informacin que va a realizar el usuario. Adems, los datos deben disponerse de manera que las consultas sean lo ms eficiente posible, evitando a la vez la existencia de datos duplicados que pueden dar al traste con la coherencia de la base de datos. De esta forma, no slo se consideran datos aquellos que el usuario desea almacenar, sino toda estructura de apoyo que el sistema necesite para hacer ms eficiente una consulta. Por ejemplo, supongamos que trabajamos en un hotel cuya base de datos posee un fichero con todas las agencias de viajes que contratan nuestros servicios de alojamiento en alguno de sus paquetes de viajes. Supongamos que para facilitar los accesos ms comunes tenemos las fichas de tales agencias ordenadas por nombre. Qu ocurre si queremos acceder a todas las agencias de Egipto para mandarles una carta felicitndolas por el ao nuevo

Ing. Valente Cuadra ucn-ing-cuadra.blogspot.com

Universidad Central de Nicaragua Ingeniera en Sistemas Base de datos I


musulmn?. Resulta inaceptable que miremos una por una todas las agencias de nuestro fichero, y a que esto nos llevara un tiempo desorbitado. La solucin informtica a este problema consiste en crear un fichero aparte cuy as fichas contienen slo dos campos: Pas de la agencia, y Nombre de la agencia. Las fichas de este fichero estarn ordenadas por Pas, y dentro de cada pas, por orden alfabtico del Nombre de la agencia. Para acceder a las agencias de Egipto, no accedemos al fichero principal, sino que nos dirigimos a este fichero auxiliar ordenado por pas, y de ah podemos averiguar directamente cules son los nombres de las agencias de Egipto. A continuacin nos vamos al fichero principal, accediendo slo a las fichas cuy os nombres hemos extrado anteriormente del auxiliar y de estas extraemos la direccin, lo que permite, finalmente, el envo de las cartas. El fichero auxiliar es lo que se llama un ndice del fichero principal. La gran ventaja de este mtodo, es que el mantenimiento del fichero auxiliar, cu ando trabajamos con un computador, lo realiza automticamente el sistema, lo que nos ahorra la tarea de tener que escribir explcitamente una ficha auxiliar cada vez que se inserta una nueva agencia en el fichero principal. De esta forma se obtiene u n a gran eficiencia en las consultas, sin que el usuario tenga que trabajar ms: el computador trabaja por nosotros. Pues bien, este fichero aparte, creado con el nico objetivo de facilitar el acceso a la informacin, tambin lo consideramos datos, aunque deban ser gestionados automticamente, e incluso algunos usuarios no tengan ni la menor idea de su existencia. Por otro lado, es muy importante decidir qu datos son los que se van a almacenar. A menudo ocurre que en una base de datos se almacenan las facturas con una antigedad inferior a X aos. El nmero de aos que se desea almacenar una factura electrnicamente puede ser una decisin crucial dependiendo de la capacidad de almacenamiento de nuestra mquina y del volumen de facturas que se expidan anualmente. A dems, si casi no se necesita acceder a dicha informacin histrica, puede ser ms interesante destruir electrnicamente esa informacin, y almacenarla exclusivamente en papel, con lo que el ahorro de espacio en disco puede contrarrestar el esfuerzo de hacer las consultas manualmente. Contrariamente, cuando se crea la base de datos, pueden parecer innecesarios ciertos datos de un cliente, como por ejemplo, Fecha de nacimiento. Posteriormente, si trabajamos en una agencia de viajes, y creamos un paquete de viajes de aventura por la selva del Amazonas, puede interesarnos promocionarlo slo a aquellos clientes menores de 35 aos, con lo que nos damos cuenta de que habra sido buena idea almacenar la fecha de nacimiento. Aunque el S.G.B.D. nos permite modificar la estructura de la base de datos para almacenar este nuevo campo, introducirlo para todos los clientes es una tarea ardua y fatigosa. Por ltimo, tambin es interesante, por cuestiones de seguridad y aprovechamiento de los recursos del computador, decidir en qu formato se van a almacenar los datos: si se van a almacenar encriptados para que nadie los pueda copiar, o si se van a codificar o a comprimir de alguna forma para hacer que ocupen menos espacio. Existe toda una teora sobre compresin y codificacin de datos, que puede hacer que, dependiendo de las caractersticas de los datos a almacenar, se requiera mucha menos memoria de la necesaria siguiendo los mtodos convencionales de almacenamiento.

Ing. Valente Cuadra ucn-ing-cuadra.blogspot.com

You might also like