Sei sulla pagina 1di 92

Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.

) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayora por documentos y textos impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo tecnolgico de campos como la informtica y la electrnica, la mayora de las bases de datos estn en formato digital (electrnico), que ofrece un amplio rango de soluciones al problema de almacenar datos. Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rpida y estructurada. Las propiedades de estos SGBD, as como su utilizacin y administracin, se estudian dentro del mbito de la informtica. Las aplicaciones ms usuales son para la gestin de empresas e instituciones pblicas. Tambin son ampliamente utilizadas en entornos cientficos con el objeto de almacenar la informacin experimental. Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios pases. Por ejemplo, en Espaa los datos personales se encuentran protegidos por la Ley Orgnica de Proteccin de Datos de Carcter Personal (LOPD). Contenido [ocultar]

1 Tipos de base de datos o 1.1 Segn la variabilidad de los datos almacenados 1.1.1 Bases de datos estticas 1.1.2 Bases de datos dinmicas o 1.2 Segn el contenido 1.2.1 Bases de datos bibliogrficas 1.2.2 Bases de datos de texto completo 1.2.3 Directorios 1.2.4 Bases de datos o "bibliotecas" de informacin qumica o biolgica 2 Modelos de bases de datos o 2.1 Bases de datos jerrquicas o 2.2 Base de datos de red o 2.3 Bases de datos transaccionales o 2.4 Bases de datos relacionales o 2.5 Bases de datos multidimensionales o 2.6 Bases de datos orientadas a objetos o 2.7 Bases de datos documentales

2.8 Bases de datos deductivas 2.8.1 Lenguaje 2.8.2 Ventajas 2.8.3 Desventajas 2.8.4 Fases 2.8.5 Interpretacin 2.8.6 Mecanismos o 2.9 Gestin de bases de datos distribuida (SGBD) 3 Vase tambin
o

Tipos de base de datos Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se est manejando, la utilidad de las mismas o las necesidades que satisfagan. Segn la variabilidad de los datos almacenados Bases de datos estticas Son bases de datos de slo lectura, utilizadas primordialmente para almacenar datos histricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a travs del tiempo, realizar proyecciones, tomar decisiones y realizar anlisis de datos para inteligencia empresarial. Bases de datos dinmicas stas son bases de datos donde la informacin almacenada se modifica con el tiempo, permitiendo operaciones como actualizacin, borrado y adicin de datos, adems de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de informacin de un supermercado, una farmacia, un videoclub o una empresa. Segn el contenido Bases de datos bibliogrficas Slo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro tpico de una base de datos bibliogrfica contiene informacin sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una determinada publicacin, etc. Puede contener un resumen o extracto de la publicacin original, pero nunca el texto completo, porque si no, estaramos en presencia de una base de datos a texto completo (o de fuentes primarias ver

ms abajo). Como su nombre lo indica, el contenido son cifras o nmeros. Por ejemplo, una coleccin de resultados de anlisis de laboratorio, entre otras. Bases de datos de texto completo Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una coleccin de revistas cientficas. Directorios Un ejemplo son las guas telefnicas en formato electrnico. Bases de datos o "bibliotecas" de informacin qumica o biolgica Son bases de datos que almacenan diferentes tipos de informacin proveniente de la qumica, las ciencias de la vida o mdicas. Se pueden considerar en varios subtipos:

Las que almacenan secuencias de nucletidos o protenas. Las bases de datos de rutas metablicas. Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomolculasBases de datos clnicas. Bases de datos bibliogrficas (biolgicas, qumicas, mdicas y de otros campos): PubChem, Medline, EBSCOhost.

Modelos de bases de datos Adems de la clasificacin por la funcin de las bases de datos, stas tambin se pueden clasificar de acuerdo a su modelo de administracin de datos. Un modelo de datos es bsicamente una "descripcin" de algo conocido como contenedor de datos (algo en donde se guarda la informacin), as como de los mtodos para almacenar y recuperar informacin de esos contenedores. Los modelos de datos no son cosas fsicas: son abstracciones que permiten la implementacin de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemticos. Algunos modelos con frecuencia utilizados en las bases de datos: Bases de datos jerrquicas Artculo principal: Base de datos jerrquica. En este modelo los datos se organizan en una forma similar a un rbol (visto al revs), en donde un nodo padre de informacin puede tener varios hijos. El nodo

que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerrquicas son especialmente tiles en el caso de aplicaciones que manejan un gran volumen de informacin y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos. Base de datos de red Artculo principal: Base de datos de red. ste es un modelo ligeramente distinto del jerrquico; su diferencia fundamental es la modificacin del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerrquico). Fue una gran mejora con respecto al modelo jerrquico, ya que ofreca una solucin eficiente al problema de redundancia de datos; pero, aun as, la dificultad que significa administrar la informacin en una base de datos de red ha significado que sea un modelo utilizado en su mayora por programadores ms que por usuarios finales. Bases de datos transaccionales Son bases de datos cuyo nico fin es el envo y recepcin de datos a grandes velocidades, estas bases son muy poco comunes y estn dirigidas por lo general al entorno de anlisis de calidad, datos de produccin e industrial, es importante entender que su fin nico es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicacin de informacin no es un problema como con las dems bases de datos, por lo general para poderlas aprovechar al mximo permiten algn tipo de conectividad a bases de datos relacionales. Un ejemplo habitual de transaccin es el traspaso de una cantidad de dinero entre cuentas bancarias. Normalmente se realiza mediante dos operaciones distintas, una en la que se decrementa el saldo de la cuenta origen y otra en la que incrementamos el saldo de la cuenta destino. Para garantizar la atomicidad del sistema (es decir, para que no aparezca o desaparezca dinero), las dos operaciones deben ser atmicas, es decir, el sistema debe garantizar que, bajo cualquier circunstancia (incluso una cada del sistema), el resultado final es que, o bien se han realizado las dos operaciones, o bien no se ha realizado ninguna. Bases de datos relacionales

Artculo principal: Modelo relacional. Artculo principal: Base de datos relacional. ste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San Jos (California), no tard en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podran considerarse en forma lgica como conjuntos de datos llamados "tuplas". Pese a que sta es la teora de las bases de datos relacionales creadas por Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar. Esto es pensando en cada relacin como si fuese una tabla que est compuesta por registros (las filas de una tabla), que representaran las tuplas, y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerrquico y el de red). Esto tiene la considerable ventaja de que es ms fcil de entender y de utilizar para un usuario espordico de la base de datos. La informacin puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la informacin. El lenguaje ms habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Durante su diseo, una base de datos relacional pasa por un proceso al que se le conoce como normalizacin de una base de datos. Durante los aos 80 la aparicin de dBASE produjo una revolucin en los lenguajes de programacin y sistemas de administracin de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestin. Bases de datos multidimensionales Artculo principal: Base de datos multidimensional. Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creacin de Cubos OLAP. Bsicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podra serlo tambin en una base de datos multidimensional), la diferencia est ms bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan mtricas que se desean estudiar.

Bases de datos orientadas a objetos Artculo principal: Base de datos orientada a objetos. Este modelo, bastante reciente, y propio de los modelos informticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:

Encapsulacin - Propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as accesos incorrectos o conflictos. Herencia - Propiedad a travs de la cual los objetos heredan comportamiento dentro de una jerarqua de clases. Polimorfismo - Propiedad de una operacin mediante la cual puede ser aplicada a distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definicin de la base de datos. Una operacin (llamada funcin) se especifica en dos partes. La interfaz (o signatura) de una operacin incluye el nombre de la operacin y los tipos de datos de sus argumentos (o parmetros). La implementacin (o mtodo) de la operacin se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicacin de los usuarios pueden operar sobre los datos invocando a dichas operaciones a travs de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podra denominarse independencia entre programas y operaciones. SQL:2003, es el estndar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92. Bases de datos documentales Permiten la indexacin a texto completo, y en lneas generales realizar bsquedas ms potentes. Tesaurus es un sistema de ndices optimizado para este tipo de bases de datos. Bases de datos deductivas Un sistema de base de datos deductiva, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a travs de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son tambin llamadas bases de datos lgicas, a raz de que se basa en lgica matemtica. Este tipo de base de datos surge debido a las

limitaciones de la Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones indirectas de los datos almacenados en la base de datos. Lenguaje Utiliza un subconjunto del lenguaje Prolog llamado Datalog el cual es declarativo y permite al ordenador hacer deducciones para contestar a consultas basndose en los hechos y reglas almacenados. Ventajas

Uso de reglas lgicas para expresar las consultas. Permite responder consultas recursivas. Cuenta con negaciones estratificadas Capacidad de obtener nueva informacin a travs de la ya almacenada en la base de datos mediante inferencia. Uso de algoritmos de optimizacin de consultas. Soporta objetos y conjuntos complejos.

Desventajas

Crear procedimientos eficaces de deduccin para evitar caer en bucles infinitos. Encontrar criterios que decidan la utilizacin de una ley como regla de deduccin. Replantear las convenciones habituales de la base de datos.

Fases

Fase de Interrogacin: se encarga de buscar en la base de datos informaciones deducibles implcitas. Las reglas de esta fase se denominan reglas de derivacin. Fase de Modificacin: se encarga de aadir a la base de datos nuevas informaciones deducibles. Las reglas de esta fase se denominan reglas de generacin.

Interpretacin Encontramos dos teoras de interpretacin de las bases de datos deductivas:

Teora de Demostracin: consideramos las reglas y los hechos como axiomas.

Los hechos son axiomas base que se consideran como verdaderos y no contienen variables. Las reglas son axiomas deductivos ya que se utilizan para deducir nuevos hechos.

Teora de Modelos: una interpretacin es llamada modelo cuando para un conjunto especfico de reglas, stas se cumplen siempre para esa interpretacin. Consiste en asignar a un predicado todas las combinaciones de valores y argumentos de un dominio de valores constantes dado. A continuacin se debe verificar si ese predicado es verdadero o falso.

Mecanismos Existen dos mecanismos de inferencia:


Ascendente: donde se parte de los hechos y se obtiene nuevos aplicando reglas de inferencia. Descendente: donde se parte del predicado (objetivo de la consulta realizada) e intenta encontrar similitudes entre las variables que nos lleven a hechos correctos almacenados en la base de datos.

Gestin de bases de datos distribuida (SGBD) La base de datos y el software SGBD pueden estar distribuidos en mltiples sitios conectados por una red. Hay de dos tipos: 1. Distribuidos homogneos: utilizan el mismo SGBD en mltiples sitios. 2. Distribuidos heterogneos: Da lugar a los SGBD federados o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de autonoma local y tienen acceso a varias bases de datos autnomas preexistentes almacenados en los SGBD, muchos de estos emplean una arquitectura clienteservidor. Estas surgen debido a la existencia fsica de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder as a distintas universidades, sucursales de tiendas, etctera. Vase tambin

Sistema de gestin de base de datos Modelo relacional, normalizacin de bases de datos Base de datos orientada a objetos Almacn de datos Minera de datos Base de datos biolgica Base de datos probabilstica

DesarrolloWeb.com > Manuales > Manual de iniciacin a la programacin

Un Sistema Gestor de Bases de Datos (SGBD) o DBMA (DataBase Management System) es una coleccin de programas cuyo objetivo es servir de interfaz entre la base de datos, el usuario y las aplicaciones. Se compone de un lenguaje de definicin de datos, de un lenguaje de manipulacin de datos y de un lenguaje de consulta. Un SGBD permiten definir los datos a distintos niveles de abstraccin y manipular dichos datos, garantizando la seguridad e integridad de los mismos. Algunos ejemplos de SGBD son Oracle, DB2, PostgreSQL, MySQL, MS SQL Server, etc. Un SGBD debe permitir: Definir una base de datos: especificar tipos, estructuras y restricciones de datos. Construir la base de datos: guardar los datos en algn medio controlado por el mismo SGBD Manipular la base de datos: realizar consultas, actualizarla, generar informes. Las caractersticas de un Sistema Gestor de Base de Datos SGBD son: Abstraccin de la informacin. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento fsico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. As, se definen varios niveles de abstraccin. Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (fsico o lgico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella. Redundancia mnima. Un buen diseo de una base de datos lograr evitar la aparicin de informacin repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los clculos hace necesaria la aparicin de redundancias. Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, ser necesario vigilar que aquella informacin que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultnea. Seguridad. La informacin almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta informacin se encuentra segurizada frente a usuarios malintencionados, que intenten leer informacin privilegiada; frente a ataques que deseen manipular o destruir la informacin; o simplemente ante las torpezas de algn usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categoras de permisos. Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra

circunstancia capaz de corromper la informacin almacenada. Respaldo y recuperacin. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la informacin almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder. Control de la concurrencia. En la mayora de entornos (excepto quizs el domstico), lo ms habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar informacin, bien para almacenarla. Y es tambin frecuente que dichos accesos se realicen de forma simultnea. As pues, un SGBD debe controlar este acceso concurrente a la informacin, que podra derivar en inconsistencias.

El gestor de la base de datos Se trata de un conjunto de programas no visibles al usuario final que se encargan de la privacidad, la integridad, la seguridad de los datos y la interaccin con el sistema operativo. Proporciona una interfaz entre los datos, los programas que los manejan y los usuarios finales. Cualquier operacin que el usuario hace contra la base de datos est controlada por el gestor. El gestor almacena una descripcin de datos en lo que llamamos diccionario de datos, as como los usuarios permitidos y los permisos. Tiene que haber un usuario administrador encargado de centralizar todas estas tareas. Diccionario de datos Es una base de datos donde se guardan todas las propiedades de la base de datos, descripcin de la estructura, relaciones entre los datos, etc. El diccionario debe contener:

La descripcin externa, conceptual e interna de la base de datos Las restricciones sobre los datos El acceso a los datos Las descripciones de las cuentas de usuario Los permisos de los usuarios Los esquemas externos de cada programa

El administrador de la base de datos Es una persona o grupo de personas responsables del control del sistema gestor de base de datos. Las principales tareas de un administrador son:

La definicin del esquema lgico y fsico de la base de datos

La definicin de las vistas de usuario La asignacin y edicin de permisos para los usuarios Mantenimiento y seguimiento de la seguridad en la base de datos Mantenimiento general del sistema gestor de base de datos

Los lenguajes Un sistema gestor de base de datos debe proporcionar una serie de lenguajes para la definicin y manipulacin de la base de datos. Estos lenguajes son los siguientes:

Lenguaje de definicin de datos (DDL). Para definir los esquemas de la base de datos Lenguaje de manipulacin de datos (DML). Para manipular los datos de la base de datos Lenguaje de control de datos(DCL). Para la administracin de usuarios y seguridad en la base de datos. Se puede definir una base de datos, como un fichero se guarda en campos o delimitadores, por ejemplo, podemos almacenar el nombre y el apellido de las personas de modo separado, de sta forma es posible obtener del fichero todos los nombres o todos los apellidos, tanto de forma separada como conjunta. Normalmente el nmero de campos que se tienen en una base vara segn las necesidades en cuanto a gestin de datos, de forma que despus se pueda explotar la informacin de forma ordenada y separada, aunque el resto de la informacin sigue almacenada y guardada en la base de datos Una base de datos, no es solo el fichero en donde estn datos, sino que en dicho archivo se encuentra la estructura de los datos, osea, para saber que longitud tiene para contener desde letras a nmeros o incluso otros datos ms complejos, dependiendo de la estructura de la base y del sistema gestor. En realidad aparte de los datos que son almacenados en el archivo, tambin hay una serie de datos, en los que se informa del tipo de campo, los campos y la longitud de cada campo, es lo que se llama gestor de datos, que permite saber que cada registro (un registro es una suma de campos, por ejemplo a Ana LOPEZ LOPEZ, Ana lo guardamos en el campo Nombre y LOPEZ LOPEZ en el campo Apellidos, cada registro es cada persona que almacenamos en la base, osea una persona es un registro y cada registro est constituido por los campos Nombre y Apellido Un Sistema de Bases de Datos (SBD) es una serie de recursos para manejar grandes volmenes de informacin, sin embargo no todos los sistemas que manejan informacin son bases de datos. Un sistema de bases de datos debe responder a las siguientes caractersticas: ==== ~- Independencia de los Datos. Es decir, que los datos no dependen del programa y por tanto cualquier aplicacin puede hacer uso de los datos.

~- Reduccin de la Redundancia. Llamamos redundancia a la existencia de duplicacin de los datos, al reducir sta al mximo conseguimos un mayor aprovechamiento del espacio y adems evitamos que existan inconsistencias entre los datos. Las inconsistencias se dan cuando nos encontramos con datos contradictorios. ~- Seguridad. Un SBD debe permitir que tengamos un control sobre la seguridad de los datos. ====

2. Base de Datos 3. Componentes de una Base de Datos 4. Tipos de Usuarios en Base de Datos 5. Conceptos Bsicos de Base de datos 6. Niveles de Abstraccin en Base de datos 7. DBMS 8. Integridad de Datos 9. 10. Recuperacin de Datos 11. Mirror o Espejo 12. Seguridad de los Datos 13. Control y Administracinde Recursos 14. Ciclo de vida de las operaciones de Base de datos 15. Diseo de Base de datos 16. Modelo Entidad Relacin 17. Ejercicios Es un sistema que almacena datos que estn relacionados. Es un repositorio en donde guardamos informacin integrada que podemos almacenar y recuperar.

Un conjunto de informacin almacenada en memoria auxiliar que permite acceso directo y un conjunto de programas que manipulan esos datos

Componentes de una Base de Datos:


Hardware: constituido por dispositivo de almacenamiento como discos, tambores, cintas, etc. Software: que es el DBMS o Sistema Administrador de Base de Datos.

Datos: los cuales estn almacenados de acuerdo a la estructura externa y van a ser procesados para convertirse en informacin.

Tipos de Usuarios en Base de Datos


Usuario Final: es la persona que utiliza los datos, esta persona ve datos convertidos en informacin: Desarrollador de Aplicaciones: es la persona que desarrolla los sistemas que interactun con la Base de Datos. DBA: es la persona que asegura integridad, consistencia, redundancia, seguridad este es el Administrador de Base de Datos quien sed encarga de realizar el mantenimiento diario o peridico de los datos.

Las personas tienen acceso DBMS se clasifican de la siguiente manera: USUARIOS INGENUOS. Son aquellos que interactuan con el sistema por medio de aplicaciones permanentes. USUARIOS SOFISTICADOS.- son aquellos con la capacidad de acceder a la informacin por medios de lenguajes de consulta. PROGRAMADORES DE APLICACIN.- son aquellos con un amplio dominio del DML capaces de generar nuevos mdulos o utilerias capaces de manejar nuevos datos en el sistema. USUARIOS ESPECIALIZADOS.- son aquellos que desarrollan mdulos que no se refieren precisamente al manejo de los datos, si no a aplicaciones avanzadas como sistemas expertos, reconocimientos de imgenes, procesamiento de audio y dems.

Conceptos Bsicos de Base de datos


Archivo: son conjuntos de registros. Registros: son conjuntos de campos. Campos: es la minma unidad de referencia.

Niveles de Abstraccin en Base de datos

Externo: esa es la visin del usuario final, se ve como se maneja los datos ya convertidos en informacin. Es aquel en el que se presenta al usuario final y que puede combinaciones o relaciones entre los datos que conforman a la base de datos global. Puede definirse como la forma en el que el usuario aprecia la informacin y sus relaciones. Conceptual: se ve como esta estructurado la Base Datos, equipos de campo tiene como estan estructurado los registros. Es aquel en el que se definen las estructuras lgicas de almacenamiento y las relaciones que se darn entre ellas. Ejemplos comunes de este nivel son el diseo de los registros y las

ligas que permitirn la conexin entre registros de un mismo archivo, de archivos distintos incluso, de ligas hacia archivos. Interno: se ve como se almacena los datos fisicamente. Es aquel en el que se determinan las caractersticas de almacenamiento en el medio secundario. Los diseadores de este nivel poseen un amplio dominio de cuestiones tcnicas y de manejo de hardware. Muchas veces se opta por mantener el nivel fsico proporcionado por el sistema operativo para facilitar y agilizar el desarrollo. DBMS(Data Managment System (Sistema Administrador de Base de Datos) ) Los Sistemas Gestores de Bases de Datos son un tipo de software muy especfico, dedicado a servir de interfaz entre las bases de datos y las aplicaciones que la utilizan. Se compone de un lenguaje de definicin de datos, de un lenguaje de manipulacin de datos y de un lenguaje de consulta. En los textos que tratan este tema, o temas relacionados, se mencionan los trminos SGBD y DBMS, siendo ambos equivalentes, y acrnimos, respectivamente, de Sistema Gestor de Bases de Datos y DataBase Management System, su expresin inglesa. Subsistema de un DBMS

Motor Ncleo DBMS: recibe los requerimientos lgicos de E/S y los convierte en operaciones de lectura y escritura. Lgicos: son cualquier tipo de consulta requerimiento de lectura con ingreso de datos (requerimiento de estructura) es ayudado por el Sistema Operativo para convertir estos requerimientos lgicos en fsicos que actun sobre dispositivos de almacenamiento. Herramientas de definicin: permite definir y modificar la estructura de la Base de Datos, a este nivel definimos lo que se conoce como "Esquema " que es la definicin total de Base de Datos, es que definimos la estructura de la tabla, los tipos de campos, las restricciones para los campos.

Subesquema: manejo de vistas de datos, de niveles externos. Esquema: manejo de niveles conceptuales.

Interface de Procesamiento: me provee de las facilidades de actualizacin, despliegue y visualizacin de datos. Desarrollo de Aplicaciones: me permite generar una aplicacin por Ej: generadores de formas, pantalla, cdigo, herramientas case, etc. Diccionario de Datos: este es el componente al subsistema con el que interactun directamente el DBA, le proporciona niveles de consulta y reportes tiles para su trabajo de administracin. Es la descripcin de la estructura de Base de Datos y relaciones entre datos, y programas. DBMS Caractersticas y Objetos:

Independencia de Datos: el DBMS me provee una independencia de mis datos vs. las aplicaciones. Cambio en datos no implica cambio en programas y viceversa (Menor coste de mantenimiento).

Minimizar Redundancia (Datos repetidos): desperdicio de Espacio de Almacenamiento.

Independencia de datos es proteger nuestro programa de aplicaciones frente a las modificaciones en la estructura de datos y viceversa, ya sea en forma fsica lgica.

Independencia Fsica: es proteccin a los programas de aplicacin debido a cambios en la estructura de archivos, con cambios en las caractersticas de los campos. Ej: cambio de clave primaria a secundaria. Independencia Lgica: proteccin a los programas de aplicacin cuando se modifica el esquema.

Redundancia, datos repetidos y distribuidos en cualquier parte. El efecto que ocasiona la redundancia es tener inconsistencia de datos y desperdicio de espacio de almacenamiento. Esta se presenta cuando se repiten innecesariamente datos en los archivos que conforman la base de datos.

Inconsistencia de Datos: dato que esta en lugar con un valor y encuentra en otro lugar con otro valor. Ej: se actualiza el archivo cliente pero no se actualiza el archivo de transacciones.

Ocurre cuando existe informacin contradictoria o incongruente en la base de datos. Integridad de Datos Integridad: conjunto de seguridades que son utilizadas para mantener los datos correctos. Ocurre cuando no existe a travs de todo el sistema procedimientos uniformes de validacin para los datos.

Fuente de Error: estas fuentes de error se origina si el programa de entrada de datos no esta validado. Ej: fallas de hardware, actualizaciones incompletas, defectos del software, insercin de datos no vlidos, errores humanos.

Una tcnica que usa el BDMS de una entrada de datos no vlida es la validacin. Validacin: es proteger los datos, validar los datos en la entrada de datos. Existen tipos de validaciones:

Tipo de Dato: es si se define un campo como carcter char y no puede ingresar nmeros enteros. Valor de Dato: si se define un valor entero se puede especificar un rango y no se puede pasar de ese valor. Valores Claves / No Nulos: asegura registros nicos y cuyos valores no sean nulos. Integridad Referencial: asegura al DBMS que no exista registros hijos sin sus registros padres correspondientes.

Control de Concurrencia Simultaniedad Se da en ambiente multi-usuario, tratando de acceder aun objeto de datos al mismo tiempo. Ocurre cuando el sistema es multiusuario y no se establecen los controles adecuados para sincronizar los procesos que afectan a la base de datos. Comnmente se refiere a la poca o nula efectividad de los procedimientos de bloqueo Granularidad: que es el tamao de las unidades aseguradas. Ej: la granularidad puede proteger un campo, un registro, un archivo,etc.

Dead-look(bloqueo): es la tcnica que evita errores de concurrencia, se da cuando se desarrolla una espera circular entre dos transacciones y cada una de estas solicita una actualizacin sobre el mismo archivo, no permite a otros usuarios el recurso hasta que trmine el proceso, se da la espera circular. Recuperacin de Datos

Recuperar los datos frente a las fuentes de error mencionadas anteriormente. La restauracin de la Base de Datos a su estado normal es responsabilidad del DBA, quien esl el responsable de implantar procedimientos de deteccin de error y recuperacin. El DBA es quien tiene el control centralizado de la base de datos. Se persigue con esto reducir el nmero de personas que tengan acceso a los detalles tcnicos y de diseo para la operacin del DBMS. Las soluciones principales de un DBA son: DEFINICION DEL ESQUEMA.- Crea el esquema original de la base de datos y genera el diccionario de datos por medio de proposiciones en DDL. DEFINICION DE ESTRUCTURAS DE ALMACENAMIENTO Y METODOS DE ACCESO.- Se encarga de generar a seleccionar estructuras para el medio secundario y definir los mtodos de acceso a la informacin, esto ultimo por medio de proposiciones en DML. MODIFICACION DE ESQUEMA Y ORGANIZACIN.- Es una actividad poco frecuente que consiste en redisear el esquema de la base de datos. Esto se hara necesario ante la modificacin abrupta de las condiciones originales que dieron pie al diseo del esquema primario. Las proposiciones para llevar a cabo esta tarea se realizan en DDL. CONCESION DE AUTORIZACIONES DE ACCESO.- Se encarga de registrar a los usuarios para permitir su acceso al DBMS. Asigna a cada uno de ellos una serie de atributos que le permiten gozar de privilegios como el acceso a determinadas reas de aplicacin, de los datos o del uso de recursos en el sistema. ESPECIFICACION DE LAS LIMITANTES DE INTEGRIDAD.- Crea una serie de tablas donde se especifica el conjunto de restricciones que sern aplicables durante los procesos de actualizacin Para recuperar: Backup(respaldo): disco duro,cinta.

Backup caliente: Base de Datos esta operativa. Backup frio: Base de Datos no esta operativa.

Mirror o Espejo

Archivos de Logs: (registro de transaccin) Son las transacciones diarias que se registran en la Base de Datos. Cuando ocurre un problema se acude a los archivos de logs se hace un REVERSO y tambin se puede recuperar la ltima transaccin que se hizo. Seguridad de los Datos Se presentan cuando no es posible establecer claves de acceso y resguardo en forma uniforme para todo el sistema, facilitando as el acceso a intrusos. La seguridad de los datos se puede definir en las siguientes aspectos:

Objeto a asegurar: el primer objeto a asegurar son los objetos, programas y finalmente al esquema. Codificacin de Claves: el DBMS provee la seguridad de los Login (usuario y password). Control de Acceso: se especifican seguridades contra accesos indicados orientado a personas no autorizada.

Control y Administracinde Recursos El DBMS debe proveer al DBA de todos los mecanismos para control y administracin de recursos. Para que el DBA con integridad de datos, recuperacin de errores e implementacin de seguridad. Establecimiento de Relaciones entre Datos El BDMS debe proveer los recursos para el establecimiento de relaciones entre los datos, cuales son las relaciones: 1 -> 1, 1 -> n, n -> n Ciclo de vida de las operaciones de Base de datos Etapas:

Planificacin del Proyecto

Definicin del Sistema Recoleccin y Anlisis de los Requisitos Diseo de la Base de Datos Seleccin del SGDB / DBMS Diseo de la Aplicacin Prototipo Implementacin Conversin y Carga de datos Prueba Mantenimiento

Estas etapas no son estrictamente secuenciales de hecho hay que repetir algunas de las etapas varias veces haciendo lo que se conoce como "Ciclos de Re-alimentacin" por Ej: los problemas que se encuentran en la etapa de Diseo de la Base de Datos pueden requerir una recoleccin de requisitos adicional y su posterior anlisis. El ciclo de vida de un desarrollo de una base de datos consta de siete pasos: Anlisis de las necesidades Estudio de viabilidad Definicin de requisitos Diseo conceptual / lgico Implementacin Evaluacin y Mantenimiento Planificacin del Proyecto: Esta etapa con lleva la planificacin de como se puede llevar acabo las etapas de ciclo de vida de la manera ms eficiente, hay tres componentes principales:

El trabajo que se va arealizar. Los recurso para llevarlo acabo. El dinero para pagar todo ello.

Definicin del Sistema En esta etapa se especifica el mbito y los ndices de la aplicacin de la Base de Datos as como con que otros sistemas interactua. Tambin hay que determinar quienes son los usuarios y las reas de la aplicacin. Recoleccin y Anlisis de los Requisitos:

En esta etapa se recoge y analiza los requerimientos de los usuarios y de las reas de aplicacin. Esta informacin se la puede recoger de varias formas:

Entrevistando el personal de la empresa concretamente aquellos que son considerando expertos en la rea que se de. Observando el funcionamiento de la empresa. Examinando documentos sobre todo aquellos que se utilizan para recoger o visualizar la informacin. Utilizando cuestionario para recoger informacin de grandes grupos de usuarios. Utilizan la experiencia adquirida en el Diseo de Sistemas similares.

Esta etapa tiene como resultado en conjunto de documentos con las especificaciones de requisitos de los usuarios en donde se describen las operaciones que se realizan en la empresa desde distintos puntos de vista. Los requisitos de desarrollo involucran el software y hardware necesario para la implementacin, los recursos humanos necesarios (tanto internos como externos), la formacin al personal. Diseo de Base de datos: En esta etapa se crea un esquema conceptual de la base de datos. Se desarrollan las especificaciones hasta el punto en que puede comenzar la implementacin. Durante esta etapa se crean modelos detallados de las vistas de usuario y sobre todo las relaciones entre cada elemento del sistema, documentando los derechos de uso y manipulacin de los diferentes grupos de usuarios. Si parte de la informacin necesaria para crear algn elemento establecido ya se encuentra implementado en otro sistema de almacenamiento hay que documentar que relacin existir entre uno y otro y detallar los sistemas que eviten la duplicidad o incoherencia de los datos. El diseo consta, como se vio anteriormente, de tres fases: el diseo global o conceptual, el diseo lgico y el modelo fsico. Esta etapa consta de tres fases: diseo conceptual, diseo lgico, diseo fisico de la Base de Datos. La primera fase consiste en la produccin de un esquema conceptual que es independiente de todos los consideraciones fisicas.este modelo se refina despus en un esquema lgico eliminando las construcciones que no se puede representar en el modelo de Base de Datos escogido (relacional, orientado a objeto,etc). En la tercera fase el esquema lgico que traduce un esquema fisico para el sistema gestor de Base de Datos escogido. La fase de diseo fisico considera las estructuras de

almacenamiento y los mtodos de acceso necesarios para proporcionar un acceso eficiente a la Base de Datos en memoria secundaria. Seleccin del SGBD / DBMS: Si no se dispone de un Sistema Gestor de Base de Datos o que se encuentre obsoleto se debe escoger un SGBD que sea adecuado para el sistema de informacin esta eleccin se debe hacer en cualquier momento antes del diseo lgico. Diseo de aplicacin: En esta etapa de disea los programas de aplicacin que usarn y aplicar la Base de Datos, esta etapa el diseo de la Base de Datos son paralelos en la mayor parte de los casos no se puede finalizar el diseo de las aplicaciones hasta que se a terminado el diseo de Base de Datos. Por otra lado la Base de Datos exige para dar soporte a las aplicaciones por lo que ahora una retroalimentacin desde el diseo de las aplicaciones al diseo de la Base de Datos. En esta etapa hay que asegurarse de que toda la funcionalidad especificada en los requisitos de usuarios se encuentra en el diseo de la aplicacin. Prototipo: Esta etapa es opcional es para construir prototipo de la aplicain que permiten a los diseadores y al usuario probar el sistema, un prototipo es un modelo de trabajo de las aplicaciones del sistema. El prototipo no tiene toda la funcionalidad del sistema final pero es suficiente para que los usuarios puedan usar el sistema e identificar que aspectos estan bien, cuales no son adecuados adems de poder sugerir mejora la inclusin de nuevos elementos. Implementacin: En esta etapa se crean las definiciones de la Base de Datos a nivel conceptual externo interno, as como los programas de aplicacin la implementacin de la Base de Datos se realiza mediante las sentencias SQL, estas sentencias se encargan de crear el sistema d la base, los ficheros donde se almacenarn los datos y las vistas de los usuarios. Los programas de aplicacin se implementan utilizando lenguaje de tercera y cuarta generacin, partes de estas aplicaciones son transacciones de la Base de Datos que se implementan tambin mediante lenguaje SQL. La sentencia de este lenguaje se pueden embeber en un lenguaje de programcin anfitrion como Visual Basic,Java, etc. Tambin se implementan en esta etapa todos l,os controles de seguridad e integridad.

Una vez totalmente detallado el modelo conceptual se comienza con la implementacin fsica del modelo de datos, a medida que se va avanzando en el modelo el administrador del sistema va asegurando la correccin del modelo y el validador la utilidad del mismo. Conversin y Carga de datos: Esta etapa es necesaria cuando se esta reemplazando un sistema antiguo por uno nuevo. Los datos se cargan desde el sistema viejo al nuevo directamente si es necesario se convierte al formato que requiera el nuevo SGBD y luego se carga esta etapa se la suele llamar "Migracin". Prueba: En esta etapa se prueba y vlida el sistema con los requisitos especificados por los usuarios. Para ello se debe disear una materia de test con datos reales que se deben llevar acabo de manera metdica y rigurosa. Si la fase de prueba se lleva correctamente descubrir los errores en los programas de aplicacin y en la estructura de la Base de Datos. Mantenimiento: Una vez que el sistema esta completamente probado o implementado se pone en marcha. El sistema esta ahora en la fase de mantenimiento en la que se lleva acabo los siguientes tareas: monitoreo de las prestaciones del sistema y mantenimiento, y actualizacin del sistema. En esta ltima etapa todos los usuarios del sistema acceden a la base de datos y deben asegurarse el correcto funcionamiento de la misma, que sus derechos son los adecuados, teniendo a su disposicin cuanta informacin necesiten. Tambin debern asegurarse que el acceso a los datos es cmodo, prctico, seguro y que se han eliminado, en la medida de lo posible, las posibilidades de error. El administrador se asegura que todos los derechos y todas las restricciones han sido implementadas correctamente y que se ha seguido en manual de estilo en la totalidad de la implementacin Modelo Entidad Relacin

Modelaje: es el proceso mediante el cual podemos identificar las propiedades dinmicas estticas de un dominio de aplicacin con mira a su transformacin en un diseo interpretable en un sistema computarizado. Es el plasmar los requerimientos de los usuarios en un programa para poder implementarlo. Entidad: es el objeto sobre el cual se requiere mantener almacenar informacin. Relacin: es la asociacin significativa y estable entre dos entidades

Atributo: son las propiedades que describen y califican una entidad. Ej: Entidad cliente(nombre, apelliido, direccin, edad, sexo)

Las entidades se las representa mediante cajas que se colocan el nombre de la entidad con letras maysculas. Ej:

Las relaciones se representan con lneas que conectan las cajas de las entidades. Ej:

Los atributos se incluyen dentro de las cajas de las entidades y se escriben con minsculas. Ej:

Entidades: se puede considerar entidades a los sujetos, objetos, a los eventos, a los lugares y a los abstracciones.

Relaciones: las relaciones tiene tres propiedades caractersticas:

Grado Cardinalidad: que se clasifica en:

Opcionalidad: es la participacin obligatoria u opcional en la entidad de la relacin.

Leyenda: es una expresin que escribe el rol de cada entidad en la relacin.

Como se lee el Grado Cardinalidad:

Uno a muchos: una instancia de la entidad A se relaciona con una ms instancias de la entidad B.

Muchos a muchos: una instancia de la entidad A se relaciona con una ms instancias de la entidad B y una instancia de la entidad B se relaciona con uno ms instancias de le entidad B.

Uno a uno: una instancia de la entidad A se relaciona con uno y slo unainstancia de la entidad B.

Relacin Recursiva Una instancia de una entidad se asocia con instancia de si misma, es opcional en los dos extremos,es decir, no hay el carcter de obligatorio. Ej:

Atributo: Los atributos son empleados para identificar, describir, calificar expresar el estado de una entidad. Todo entidad posee un atributo combinacin de atributos que se denomina "clave primaria" y que emplea para diferenciar cada instancia de los dems. Adicionalmente los atributos pueden ser obligatoriou opcionales.

A los atributos que forman parte de la clave primaria se los identifica anteponiendoles el signo de numero (#). A los atributos obligatoriose les antepone el asterisco (*). A los atributos opcionales se les antepone un circulo (o).

Ejemplo:

En un diagrama entidad-relacin tambin puede agrupar las entidades en supertipo y en subtipo.


Los supertipo agrupa a dos ms entidades subtipo. Los subtipo heredan los atributos de las entidades supertipo.

Cada subtipo puede tener relaciones propias independientes del supertipo. Los subtipos se representan como cajas dibujadas dentro de la caja del supertipo.

EJERCICIOS: COMPAA DE BOTES SAN JUAN San Juan es un agente que renta embarcaciones a los clientes por una determinada tarifa. San Juan no posee barcos, en lugar de eso los arrienda a nombre a los propietarios que deseen obtener ingresos cuando no usan sus botes. Por tal servicio San Juan cobra una cuota y se especializa en barcos que puedan usarse para viajes de varios das o semanas. La embarcacin ms pequea tiene 28 pies de largo y la ms grande es de 44. Cada barco esta por completo equipado cuando se renta; gran parte del equipo proporciona el

propietario, San Juan agrega otra parte. El equipo que proporciona el propietario incluye lo que es parte del bote como: radio, brjula, indicadores de profundidad. Otros importantes instrumentos como estufas y refrigeradores. Otros que proporciona el propietario no estn instalados como parte del bote tales implementos incluyen velas, cuerdas, anclas bolsas de caucho, salvavidas, y en la cabina platos, cubiertos, utensilios de cocina, etc. San Juan aporta el equipo de consumo que podra considerarse como provisiones, libros, jabn, toallas de cocina y artculos similares. Una importante responsabilidad de San Juan es registrar el equipo que este en el bote, en particular lo que no estn fijos en la embarcacin. San Juan prefiere conservar registros precisos de sus clientes y los viajes para tener estadsticas de cuales clientes han ido y en que viaje; algunos itinerarios son ms peligrosos que otros por tal motivo a San Juan le gustara saber que clientes tienen determinado experiencias. En algunos viajes los clientes solicitan servicios de una tripulacin y San Juan contrata por hora a tales personas. Las embarcaciones necesitan mantenimiento, San Juan incluye servicios precisos de todos esos procesos y costos de mantenimiento incluyendo actividades normales como limpieza, cambia de aceite o representaciones no programadas. En algunos casos son necesarias las invitaciones durante un viaje, en tal caso los clientes se comunican por radio con el despachador de San Juan quien determina la mejor opcin para hacer la reparacin. Por tanto ms estas decisiones los despachadores necesitan informacin sobre sus opciones de reparacin y antecedentes sobre costos y calidad de la reparacin. ENTIDADES:

CLIENTE PROPIETARIO BOTE EQUIPO VIAJE MANTENIMIENTO REPARACIN TRIPULACIN TIP_EQUIPO

Video club En una tienda de video se necesita mantener informacin de alrededor de 3000 casetas cada uno de los casetes tiene asignado un nmero por cada `pelcula se necesita conocer un titulo y categora por ejemplo: comedia, suspenso, drama, accin, ciencia ficcin, etc. Se mantienen algunas copias de muchas pelculas. Se le da a cada pelcula una identificacin y se mantiene seguimiento de lo que contiene cada casete. Un casete puede venir en varios formatos y una pelcula es grabada en un solo casete; frecuentemente las pelculas son pedidas de acuerdo a un actor especifico Tom Cruise y Demi More son los ms populares es por esto que se debe mantener informacin de los actores que pertenecen a cada pelcula. No en todas las pelculas actan artistas famosos, a los clientes de la tienda le gusta conocer datos como el nombre real del actor, y su fecha de nacimiento. En la tienda se mantienen informacin solo d los actores que aparecen en las pelculas y que se tiene a disposicin. Solo se alquila videos a aquellos que pertenecen al club de videos. Para pertenecer al club se debe tener un buen crdito. Por cada miembro del club se mantiene una ficha con su nombre, telfono y direccin, cada miembro del club tiene asignado un nmero de membresa. Se desea mantener informacin de todos los casetes que un cliente alquila, cuando un cliente alquila un casete se debera conocer e nombre de la pelcula, la fecha en la que se alquila y la fecha de devolucin.

ENTIDAD

CLIENTE PELCULAS TIPO_PEL ACTORES CASETE ALQUILER

ACTOS VANDLICOS Una cadena de hoteles a decidido acabar con los clientes que deterioran el mobiliario del hotel. Quieren guardar en una base de datos los clientes que han deteriorado o robado muebles y cuales son estos muebles. En la base de datos tendremos informacin de cada hotel (cdigo, direccin, telfono), as como un conjunto de habitaciones identificadas con un nmero de identificacin nico para cada hotel y un nmero de inmobiliario estndar con un cdigo, descripcin precio, por ejemplo: "Silla de cuero, diseo clsico, $43 ". Despus de hacer un inventario todo el mobiliario de los hoteles esta identificado, es decir, sabemos que y cuanto elemento de mobiliario hay en cada habitacin de cada hotel. Los muebles pueden cambiar de habitacin pero no necesitamos guardar la habitacin antigua. Para cada habitacin guardaremos tambin si es soleada, si tiene lavado y si tiene nevera. Cada cliente tiene informacin personal (cedula de identidad, nombre, etc.) y

adems un historial de sus actos vandlicos. Para cada cliente guardaremos que muebles y cuantos han deteriorado. Tambin queremos saber la estancia que ha hecho cada cliente en el hotel, guardaremos en un atributo la fecha de llegada y de salida, as como la de la habitacin en la que se ha alojado. Un cliente puede alojarse en una misma habitacin del hotel en diferentes estancias. Queremos saber los actos vandlicos (que y cuantos muebles) que ha hecho cada cliente en conjunto independientemente de la habitacin que se halla producido. Queremos saber los actos vandlicos de cada cliente en cada habitacin. ENTIDADES

CLIENTE HOTEL HABITACIN MOBILIARIO ESTANCIA TIPO_CLIENTE ACTO_VANDALICO TIPO_HABITACION TIPO_MUEBLE

Ejercicios Propuestos El Instituto Se pretende dotar a un centro escolar de medios informticos con el fin de automatizar su gestin. Descripcin En el centro se utilizan cuadernillos de notas para cada alumno, donde se ponen las notas correspondientes a cada evaluacin de las asignaturas a las que asiste el alumno. Para ello es preciso tener una lista de alumnos que siguen una asignatura y una lista de alumnos que no tienen nota de una asignatura determinada. Tambin se quiere la lista de notas dada por un profesor. Adems, cada clase tiene un profesor que hace las funciones de tutor, un profesor puede ser tutor de varias clases e impartir varias asignaturas en una clase, pero una asignatura solo puede ser impartida por un profesor en una clase. En cada clase, hay tambin dos representantes o delegados. Resultados a considerar El sistema debe dar respuesta a las siguientes preguntas: 1. El profesor J. Prez imparte Ingles en 4o C (Lista de destinos del profesor por asignatura y clase). 2. P. Snchez es alumno de la clase 3o A (Lista de alumnos por clase). 3. P. Rodrguez ha obtenido una nota de 6 en Ingles el 12/3/97 (Libretas de notas). 4. La profesora C. Castillo es tutora de 5o B (Lista de tutores). 5. J. Largo es delegado de 3o A (Lista de delegados). 6. El profesor J. Prez es profesor del Instituto desde Septiembre de 1992.

La asociacin "Amigos de la Fiesta" desea recoger en una base de datos toda la informacin acerca de las corridas de todos que se celebran en Espaa y de todos los datos relacionados con ellas. Se desea tener informacin acerca de cada corrida, identificada conjuntamente por un nmero de orden, la feria en la que se celebra y el ao de celebracin (por ejemplo: orden = 2, feria = San Isidro, Ao = 1999). En una determinada corrida actan una serie de toreros (mnimo 1 y mximo 3) de los que desea guardar su DNI, nombre, apodo y fecha en que tom la alternativa (fecha en la que se convirti en matador de toros). Adems se desea saber quien fue el torero que le dio la alternativa (padrino) en su da (un torero puede dar la alternativa a varios toreros o a ninguno). En cada corrida un torero obtiene una serie de premios (cuntas orejas, cuntos rabos y si sali por la puerta grande o no) de los que se desea mantener informacin. Cada torero puede tener un apoderado del que es protegido. A su vez, un apoderado lo puede ser de varios toreros. De l se desea saber su DNI, nombre, direccin y telfono. Una corrida se celebra en una plaza de toros de la que se desea saber su nombre que se supone nico, localidad, direccin y aforo. En una misma plaza se pueden celebrar varias corridas de toros. En cada corrida son estoqueados al menos 6 toros. Cada toro viene identificado por el cdigo de la ganadera a la que pertenece, el ao en que naci y un nmero de orden. Adems se desea mantener informacin acerca de su nombre y color as como el orden en que fue toreado. Cada toro pertenece a una ganadera determinada. De cada ganadera se pretende saber su cdigo, localidad y antigedad (fecha de creacin). Ejemplos de Enunciados

1. 2. Cada orden de comprar da lugar a una factura.

3. Un empleado pueden o no puede ser un vendedor pero un vendedor puede ser un empleado.

4. Un cliente solamente puede enviar una orden de compra al mismo tiempo cualquier persona que no tenga una orden pendiente no es un cliente.

5. Un cliente es un cliente sin importar el nmero de orden de compra que tenga pendiente hasta la fecha. Cada orden de compra pertenece a un cliente.

6. Un vendedor puede tener una o ms clientes. 7. Cada producto que tenemos en stock esta compuesto de uno ms partes, cada parte es usada en un solo producto.

MODELO RELACIONAL Modelo Programador Relacional Relacin Tupla Atributo Archivo Registro Campo Tabla Fila Columna Campo

El conjunto de una base de datos es el conjunto de tabla relacional. La tabla.- Es un conjunto de restricciones. NORMALIZACIN.- El proceso que revisa que la tabla este bien estructurado se llama normalizacin. La normalizacin esta basada en el concepto de formas normales cada forma normal tiene un conjunto de reglas que deben ser verificada (1NF, 2NF, 3NF).

Estas formas normales son anidados, es decir que para que una relacin este en 3FN debe haber pasado por 2FN y esta por la 1FN. Conceptos usados en la normalizacin

Dependencia Funcional.- es la relacin que existe entre dos atributos. Ejemplo:

Dado un valor de X existe un valor de Y entonces Y es funcionalmente dependiente de Y. EMPLEADO Cod_empleado 001 002 XY

Nombre Juan Perez Ana Quiroz

Claves o llaves.- Es el atributo que le da la diferencia a cada tabla este atributo hace que no tengamos tuplas o filas repetidas. Nombre_cliente Juan Perez Ana Quiroz Ana Quiroz Juan Perez Jos Lopez

Cod_cliente 001 002 003 004 005

Dependencia transitoria.- Es la dependencia que esta encadenada.

X Y Z = Dado un valor de "X" existe un valor de "Y" y dado un valor de "Y" existe un valor de "Z" entonces se dice que "z" es transitivamente dependiente de "X".

Primera Forma Normal (1FN) 1. 2. 3. 4. ID 100 150 175 200 Las celdas o campos deben tener valores singulares. Las entradas de cualquier columna o atributo deben ser de la misma clase. Cada columna debe tener un nombre nico. Dos filas o tuplas no pueden ser iguales. Deporte Ski Natacin Squas Natacin Valor 200 50 50 50

Al realizar operaciones sobre la tabla se pueden presentar problemas, estos problemas son llamadas anomalas, estas anomalas pueden ser de insercin, actualizacin, eliminacin, etc. Segunda Forma Normal (2FN) Todo atributo no clave depende de un atributo clave "Eliminar dependencias parciales a la clave Primaria de una Tabla" Tercera Forma Normal (3FN) Una relacin esta en 3FN si y solo si esta en 2FN y tiene dependencias transitivas, es decir, dependencia encadenada. EJERCICIO APLICANDO NORMALIZACION EMPRESA XYZ

Cliente: _________________________ Fecha: __________________________ Cdigo Detalle Producto xxx xxx xxx xxxxxx xxxxxx xxxxxx xx xx xx Tamao O E x x x R Cantidad

N Factura: __________ N Orden: __________ Precio Venta xxx.xx xxx.xx xxx.xx Precio Dscto. xxx.xx xxx.xx xxx.xx Precio Valor Especial xxx.xx xxx.xx xxx.xx xxx.xx xxx.xx xxx.xx

Total Factura $ xxx.xx

1FN

Nmero_factura Fecha_factura Total_factura * Numero_orden Fecha_orden * * Cta_bco_cliente Nombre_cliente Direccion_cliente Direccion_entrega * Codigo_producto Descripcion_producto Tamao_producto Cantidad_ordenada Cantidad_entregada

Cantidad_restante Precio_venta Precio_dscto Precio_especial Valor_linea

2FN

Nmero_factura * Fecha_factura Total_factura Numero_orden * Fecha_orden Cta_bco_cliente * Nombre_cliente Direccion_cliente Direccion_entrega

Codigo_producto Descripcion_producto Tamao_producto Cantidad_ordenada * Cantidad_entregada Cantidad_restante Precio_venta Precio_dscto Precio_especial Valor_linea

3 FN

Nmero_factura * Fecha_factura Total_factura Numero_orden * Fecha_orden Cta_bco_cliente * Nombre_cliente Direccion_cliente Direccion_entrega

Codigo_producto Descripcion_producto * Tamao_producto Precio_venta Precio_dscto Precio_especial Codigo_factura Codigo_producto * Cantidad_ordenada * Cantidad_entregada Cantidad_restante Valor_linea Ejercicio 1. Actos vandlicos Una cadena de hoteles ha decidido acabar con los clientes que deterioran el mobiliario del hotel. Quieren guardar en una base de datos los clientes que han deteriorado o robado muebles y cules son estos muebles. En la base de datos tendremos informacin de cada hotel (cdigo, direccin y telfono), as como un conjunto de habitaciones identificadas por un nmero de habitacin nico para cada hotel y un conjunto de elementos de mobiliario estndard con un cdigo, descripcin y precio, por ejemplo: "silla de cuero diseo clsico, 9875 ". Despus de hacer un inventario, todo el mobiliario de los hoteles est identificado, es decir, sabemos qu y cuantos elementos de mobiliario hay en cada habitacin de cada hotel. Los muebles pueden cambiar de habitacin, pero no necesitamos guardar la habitacin antigua. Para cada habitacin, guardaremos tambin si es soleada, si tiene lavabo y si tiene nevera. Cada cliente tiene informacin personal (DNI, nombre, etc), y adems un historial de sus actos vandlicos: para cada cliente guardaremos qu muebles y cuntos ha deteriorado.Tambin queremos saber las estancias que ha hecho cada cliente en los hoteles, guardando en un nico atributo la fecha de llegada y la de salida, as como la habitacin en que se ha alojado. Un cliente puede alojarse en una misma habitacin de hotel en diferentes estancias.

Ejercicio 1.1: Queremos saber los actos vandlicos (qu y cuantos muebles) que ha hecho cada cliente en conjunto, independientemente de la habitacin y hotel que se hayan producido. Ejercicio 1.2: Queremos saber los actos vandlicos de cada cliente en cada habitacin del hotel. Ejercicio 2. Almacenes Unos almacenes quieren hacer un estudio sobre los hbitos de compra de sus clientes. Disponen de un conjunto de artculos identificados por su cdigo de barras, cada uno con una descripcin y el nombre de su fabricante. Para cada artculo, quieren probar diversas colocaciones para estudiar como vara su venta. Para cada colocacin tendremos un precio y un lema (del tipo "Ms dulces que la miel"), no necesariamente diferentes. Como un artculo y un lugar determinan una colocacin, no puede existir una colocacin sin ningn artculo. Los clientes de nuestro almacn se identifican por su nombre, nmero de visa, y adems queremos guardar su direccin y telfono. De las compras que realizan, slo queremos saber qu articulo, en qu colocacin y el nmero de unidades que ha comprado. Diversas compras del mismo artculo en la misma colocacin se acumulan en la misma tupla sumando el nmero de unidades. Ejercicio 3. Biblioteca En una biblioteca hay que guardar la informacin de todas las publicaciones que se tienen. Cada publicacin tiene un ttulo nico. Las publicaciones pueden ser peridicas o no. De las peridicas hay que saber su periodicidad. Las publicaciones peridicas constan de revistas, cada una definida por un volumen, nmero y ao. Cada revista contiene artculos, especificados por autores, ttulo y pginas de la revista. De cada revista (volumen y nmero) se puede tener ms de un ejemplar, caracterizado por un nmero de ejemplar. Se puede tener ms de un ejemplar, aunque no de todos los volmenes o nmeros. Las publicaciones se pueden clasificar en diferentes temas, que pueden estar agrupados en una relacin jerrquica de tema-subtema. Los socios de la biblioteca pueden coger en prstamo todas las publicaciones peridicas que deseen por un periodo de quince das. Los prstamos siempre hacen referencia a los ejemplares concretos de las publicaciones. Si al solicitar un prstamo de una publicacin, sta tiene todos los ejemplares ocupados, el socio se puede poner en una lista de espera para la publicacin peridica, para ser avisado en el momento que se devuelva alguno de los ejemplares. Ejercicio 4. Electricista

La empresa de suministros elctricos "El Chispa" te encarga hacer un diseo de BD de control de stocks y facturacin con los siguientes requerimientos: "El Chispa" vende artculos. De cada artculo se quiere guardar el cdigo del artculo, nombre, color, medidas, fabricante y precio de venta. Por ejemplo: E12, enchufe txuco, blanco, 9x 9 cm, Simon, 210 . Un artculo no puede ser suministrado por ms de un fabricante y no queremos guardar los precios de venta antiguos, slo el actual. De cada fabricante queremos guardar infomacin del cdigo del fabricante, nombre, direccin, poblaci, telfono y forma de pago (al contado, cheque o transferencia). De cada venta "El Chispa" hace un Doc de entrega/venta, donde constan el cdigo de entrega/venta, fecha, datos del cliente, nmero y cdigo de los artculos vendidos, precio por unidad y precio total por artculo (nmero de unidades x precio/unidad). A finales de mes o cuando toque, se agrupan los albaranes hechos a un cliente en una factura donde queremos que conste: cdigo de factura, fecha, datos del cliente, la informacin de cada albarn (nmero y nombre de los artculos, precio por unidad y precio total por artculo), total de la factura, forma de pago y vencimiento en caso que el pago no sea al contado. Todo albarn slo se puede facturar una sola vez. De un cliente se quiere guardar el NIF, nombre, direccin, poblacin y telfono. Una factura pertenece nicamente a un cliente. Tenemos un nico almacen donde guardamos todos los artculos. Queremos guardar el nmero de artculos que tenemos en el almacen en un momento determinado. Los fabricantes envian artculos al almacen. Queremos guardar los envos de entrada al almacen. Todo envo consta nicamente de un artculo. De cada envo queremos saber la fecha, cdigo del artculo y nmero de unidades enviadas. Un fabricante puede enviar el mismo da unidades de un mismo artculo. En este caso se suma el nmero de unidades enviadas en la misma fecha. Ejercicio 5. Conflictos blicos Una organizacin internacional quiere hacer un seguimiento de los conflictos blicos que se producen en el mundo. Por esto quiere crear una BD que responda a los siguientes requerimientos: Un conflicto es cualquier lucha armada que afecte a uno o a diversos paises, donde se producen muertos i/o heridos. Todo conflicto se identificar por un nombre o causa que provoca el conflicto. Este nombre puede cambiar con el paso del tiempo, por lo que cada conflicto se identificar con un cdigo numrico nico. Para cada conflicto se quiere

guardar los paises queafecta as como el nmero de muertos y heridos par cada pas y el total. Los conflictos pueden ser de diferentes tipos, segn la causa que los haya originado, clasificndose, como mucho, en cuatro grupos: territoriales, religiosos, econmicos y raciales. En cada uno se guardarn diferentes datos. En los territoriales tendremos las regiones afectadas, en los religiosos las religiones en conflicto, en los econmicos las materias primas disputadas y en los raciales las razas enfrentadas. En los conflictos intervienen diferentes grupos armados (como mnimo dos) y diferentes organizaciones intermediarias, pudiendo no haber ninguna. Los mismos grupos armados y organizaciones intermediarias pueden intervenir en diferentes conflictos. Tanto los grupos como las organizaciones podrn entrar y salir del conflicto. En este caso se recogern las fechas de incorporacin y de salida. Podra ser que en un momento determinado un grupo u organizacin no interviniera en ningn conflicto. Para cada grupo armado se guarda un cdigo que se le asigna y un nombre. Cada grupo armado dispone de una o ms divisiones y es liderado por un nico lder poltico. Las divisiones de que dispone un grupo se numeran consecutivamente y se registra el nmero de barcos, tanques, aviones y hombres de que dispone as como les bajas que ha tenido. Para los grupos armados se obtiene el nmero de bajas como la suma de las bajas producidas en todas las divisiones. Los traficantes de armas suministran diferentes tipos de armamento a los grupos armados. De cada tipo de arma se recoge un nombre y un indicador de su capacidad destructiva. De cada traficante se tiene un nombre y los diferentes tipos y cantidades de armas que puede suministrar. Se guarda el nmero total de armas de cada tipo que cada traficante suministra a un grupo armado. Los lderes polticos se identifican por su nombre y por cdigo del grupo armado que lideran. Adems se guarda una descripcin en texto de los apoyos que ha recibido. Cada divisin la pueden dirigir conjuntamente un mximo de tres jefes militares, a pesar de que cada jefe militar no dirige ms que una divisin. A cada jefe militar se le identifica por un cdigo y rango que tiene. Dado que un jefe militar no acta por iniciativa propia, sino por iniciativa de un nico lder poltico de los que lideran el grupo armado donde pertenece el jefe, queremos saber quin es este lder poltico a quien obedece. De las organizaciones intermediarias se recojer su cdigo, nombre, tipo (gubernamental, no gubernamental, internacional), la organizacin de quien depende (una como mximo), el nmero de personas que mantiene desplegadas en cada conflicto y el tipo de ayuda que da en cada conflicto que puede ser nicamente uno dels siguientes tipos: mdica, diplomtica o presencial.

Con diferentes finalidades, los lderes polticos dialogan con las organizaciones. Se desea recoger explcitamente esta informacin. As, para cada lder se guardarn aquellas organizaciones con las que dialoga y viceversa. Ejercicio 6. Parques naturales El ministerio de Medio Ambiente decide crear un sistema de informacin sobre parques naturales gestionados por cada Comunidad Autnoma. Despus de un anlisis exhaustivo del contexto se ha llegado a las siguientes conclusiones: Una Comunidad Autnoma (CA) puede tener varios parques naturales. En toda la comunidad autnoma existe un nico organismo responsable de los parques. Un parque puede estar compartido por ms de una comunidad. Un parque natural se identifica por un nombre y la fecha en que fu declarado parque natural, y est compuesto por varias reas identificadas por un nombre (nico dentro del parque pero puede ser genrico entre parques naturales) y una extensin en kilmetros cuadrados. Por motivos de eficiencia se quiere favorecer las consultas que hagan referencia al nmero de parques existentes en cada CA y la superficie total declarada como parque natural en cada CA. En cada rea residen especies que pueden ser de tres tipos: vegetales, animales i minerales. Cada especie tiene una denominacin cientfica, una denominacin vulgar y un nmero de individuos en cada rea. De las especies vegetales se quiere saber si tienen floracin y en qu periodo (mes) se produce. De los animales se quiere saber su tipo de alimentacin (herbvora, carnvora u omnvora) y su periodo de celo. De los minerales se quiere saber si se trata de cristales o rocas. Interesa, adems, registrar qu especies sirven de alimento a otras especies, teniendo en cuenta que ninguna especie mineral se considera alimento de ninguna otra especie y que una especie vegetal no se alimenta de ninguna otra especie. Cada parque tiene un personal en dedicacin exclusiva. De este personal se guarda el DNI, nmero de la SS, nombre y apellidos, direccin, telfonos (fijo y movil) y sueldo. Se distinguen cuatro tipos de personal: Personal de gestin: registra los datos de los visitantes del parque y se situan a la entrada del parque. Las entradas se identifican por un nmero y orientacin (N, S, E, O). Personal de vigilancia: vigila una rea determinada del parque que recorre un vehculo de un tipo determinado y con una matrcula. Personal de conservacin: mantiene y conserva un rea determinada del parque. Cada uno realiza una tarea determinada (limpiar, dar de comer, jardinera, etc.) en un lugar concreto del rea (caminos, zona recreativa, jardines, etc.).

Personal investigador: tiene una titulacin que hay que guardar y puede realizar slo o en grupo proyectos de investigacin sobre una determinada especie. Un proyecto de investigacin tiene un ttulo, presupuesto, un nico investigador principal, un periodo de realizacin y un conjunto de investigadores que participan. Un visitante (DNI, nombre, apellidos, direccin y profesin) puede alojarse en els alojamientos que tiene el parque. Los alojamientos tienen una capacidad limitada y una determinada categora. Los alojamientos organizan excursiones al parque en vehculo o a pi unos determinados das de la semana y a horas determinadas. Para ir a estas excursiones hay que ser visitante del parque. Ejercicio 7. ONG La coordinadora nacional de ONGs quiere mantener una base de datos de las asociaciones de este tipo que existen en nuestro pas. Por ello necesita guardar informacin sobre cada asociacin, los socios que las forman, los proyectos que realizan y los trabajadores que particpan. De las asociaciones se quiere almacenar su CIF, nombre, direccin, provincia, el tipo de ONG (ecologista, de integracin, de desarrollo, etc.) as como si est declarada de utilidad pblica por el Ministerio de Interior. Cada asociacin est formada por socios de quienes se quiere conocer su DNI, nombre y apellidos, direccin, provincia, fecha de alta de la asociacin, cuota mensual con la que colaboran y la aportacin anual que realizan. La aportacin anual ser el total de las cuotas mensuales ms otras aportaciones voluntarias. Cada trabajador de una ONG se identifica por su DNI, nombre y apellidos, direccin, telfonos y fecha de ingreso. Todo trabajador trabaja para una nica ONG. Estos trabajadores pueden ser de dos tipos: profesionales y voluntarios. Los profesionales cobran un sueldo y ocupan un cierto cargo en la asociacin. Se quiere guardar el cargo que ocupan, la cantidad que pagan a la SS i el porcentaje de IRPF que se les descuenta. Los voluntarios trabajan en la organizacin desinteresadamente. Queremos saber de ellos su edad, profesin y horas que dedican a la asociacin. Las asociaciones realizan proyectos a los cuales estn asignados sus trabajadores. Un trabajador puede trabajar en diferentes proyectos de un mismo pas. De cada proyecto se quiere almacenar un nmero de identificacin en la ONG, pas y regin donde se realiza, el objectivo que pretende y el nombre de personas que afecta. Ejercicio 8. Pinacoteca El Ministerio de Educacin y Ciencia quiere tener informacin sobre todos los cuadros que se encuentran en las pinacotecas.

De cada pinacoteca se quiere saber el nombre nico, ciudad donde se encuentra, direccin y extensin en metros cadrados. Cada pinacoteca tiene un conjunto de cuadros de los cuales se quiere guardar el cdigo (nico para todas las pinacotecas), nombre, medidas, fecha en que se pint y tcnica utilizada par pintarlo. Cada cuadro es pintado por un nico pintor, del que queremos saber el nombre y apellidos, ciudad y pas donde naci, fecha de nacimiento y fecha de la muerte. Un pintor puede tener un nico maestro, pero un maestro puede serlo de varios pintores. Los pintores pueden pertenecer o no a una escuela de la cual se quiere saber el nombre as como el pas y fecha en que apareci. Los pintores pueden tener tambin uno o varios mecenas que los protejen. De los mecenas queremos saber el nombre y apellidos, pas y fecha de nacimiento, fecha de la muerte y la fecha de inicio y final del soporte que di al pintor. Un mecenas puede serlo de varios pintores y un pintor puede tener varios mecenas en periodos diferentes. Se quiere recoger la relacin que existe entre un pintor y su mecenas. Ejercicio 9. Proyectos de investigacin En la UAB se quiere llevar un un control sobre els proyectos de investigacin que se realizan. Se quiere disear una BD que contenga toda la informacin sobre los proyectos, departamentos, grupos de investigacin y profesores. Se consideran los siguientes requisitos: Un departamento se identifica por un nombre, cdigo, centro (Facultad o Escuela) donde est situado, direccin, profesor de la universidad que ejerce como director de departamento y un telfono de contacto (secretara de departamento). Dentro de un departamento se crean Unidades donde estn adscritos los profesores. Todo profesor ha de pertenecer a una unidad. Cada unidad tiene un nombre nico dentro de la universidad, pertenece a un nico departamento i est asociada a un rea de conocimiento (CCIA, ATC, etc.). Cada unidad tiene un jefe de unidad que ha de ser profesor de universidad. Un profesor del departamento est identificado por un DNI, nombre y apellidos, aos de experiencia en investigacin, unidad a la que pertenece y proyectos en que trabaja. Existen tres tipos de profesorado: Funcionario (Catedrticos de Universidad y Titulares de Universidad), Ayudantes de Universidad y Asociados. Del personal funcionario queremos saber el cdigo de funcionario, el ao de su toma de posesin y perfil de la asignatura a la que oposit. De los Ayudantes de Universidad queremos saber la fecha de incorporacin. Del Asociado queremos saber la fecha de incorporacin y la empresa en que trabaja.

Cada proyecto de investigacin tiene un nombre, cdigo nico, presupuesto, fechas de inicio y final del proyecto y un nico profesor que ejerce de investigador principal del proyecto. Un proyecto puede estar financiado por uno o varios programas nacionales. Un programa nacional viene identificado per un nombre nico y la cantidad total de dinero que el programa dispone para financiar proyectos. Dentro de cada programa cada proyecto tiene un nmero asociado y una cantidad de dinero con que el programa financia el proyecto. Un profesor puede participar en varios proyectos y puede ser investigador principal de varios proyectos. En cada proyecto un profesor se incorpora en una determinada fecha y lo abandona en otra con una determinada dedicacin (horas por semana). Un profesor puede incorporarse ms de una vez a un proyecto en fechas separadas. Ejercicio 10. Reserva de salas La ETSE quiere controlar el sistema de reservas de sus salas que pone a disposicin del personal de la Escuela durante un curso acadmico con las siguientes restricciones: De cada sala (sala de grados, sala de actos, seminarios, aulas) queremos saber el cdigo (Q2/xxxx,Q0/xxxx, etc.), el tipo de sala (aula, seminario, sala de actos, sala de grados, etc.), capacidad y equipamiento audiovisual que contiene de forma permamente. Del equipamiento audiovisual que tiene la Escuela queremos guardar un cdigo nico, nombre (proyector, can, etc.), si s permanente o mvil y la sala donde se encuentra, caso de que sea fijo. Tenemos cuatro tipos de equipamiento: can de proyeccin, proyector de transparencias, proyector de diapositivas y ordenador. Del can de proyeccin queremos saber la marca, modelo, luminosidad y resolucin mxima en la que trabaja. Del proyector de transparencias queremos conocer su luminosidad y si acepta transparencias en color o no. Del proyector de diapositivas interesa guardar la marca, modelo, si admite cargador clsico o moderno y luminosidad. Del ordenador queremos saber el procesador, RAM y resolucin mxima. Un profesor puede reservar una sala en una fecha concreta (dia, mes y ao) a intervalos de hora (de 12:00 a 13:00, de 17:00 a 18:00). Cuando reserva la sala, el profesor tambin reserva todo el equipamiento fijo que contiene la sala. Un profesor tambin puede reservar equipamiento audiovisual mvil con un nmero variable (2 caones, 3 proyectores, etc.) en una fecha concreta (da, mes y ao) a intervalos de una hora. Dada una fecha y una hora, queremos saber las salas disponibles y el equipamiento audiovisual disponible. A finales de curso queremos saber el grado de ocupacin de las salas.

Qu son las bases de datos?


Una base de datos es un almacn que nos permite guardar grandes cantidades de informacin de forma organizada para que luego podamos encontrar y utilizar fcilmente. A continuacin te presentamos una gua que te explicar el concepto y caractersticas de las bases de datos. El trmino de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. Una base de datos se puede definir como un conjunto de informacin relacionada que se encuentra agrupada estructurada. Desde el punto de vista informtico, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos. Cada base de datos se compone de una o ms tablas que guarda un conjunto de datos. Cada tabla tiene una o ms columnas y filas. Las columnas guardan una parte de la informacin sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla conforma un registro.

Definicin de base de datos

Se define una base de datos como una serie de datos organizados y relacionados entre s, los cuales son recolectados y explotados por los sistemas de informacin de una empresa o negocio en particular.

Caractersticas
Entre las principales caractersticas de los sistemas de base de datos podemos mencionar:

Independencia lgica y fsica de los datos. Redundancia mnima. Acceso concurrente por parte de mltiples usuarios. Integridad de los datos. Consultas complejas optimizadas. Seguridad de acceso y auditora. Respaldo y recuperacin. Acceso a travs de lenguajes de programacin estndar.

Sistema de Gestin de Base de Datos (SGBD)


Los Sistemas de Gestin de Base de Datos (en ingls DataBase Management System) son un tipo de software muy especfico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definicin de datos, de un lenguaje de manipulacin de datos y de un lenguaje de consulta.

Ventajas de las bases de datos Control sobre la redundancia de datos:


Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, adems de provocar la falta de consistencia de datos. En los sistemas de bases de datos todos estos ficheros estn integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos.

Consistencia de datos:
Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato est almacenado una sola vez, cualquier actualizacin se debe realizar slo una vez, y est disponible para todos los usuarios inmediatamente. Si un dato est duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes.

Comparticin de datos:

En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estn autorizados.

Mantenimiento de estndares:
Gracias a la integracin es ms fcil respetar los estndares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estndares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estndares de documentacin, procedimientos de actualizacin y tambin reglas de acceso.

Mejora en la integridad de datos:


La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.

Mejora en la seguridad:
La seguridad de la base de datos es la proteccin de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integracin de datos en los sistemas de bases de datos hace que stos sean ms vulnerables que en los sistemas de ficheros.

Mejora en la accesibilidad a los datos:


Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicacin que realice tal tarea.

Mejora en la productividad:
El SGBD proporciona muchas de las funciones estndar que el programador necesita escribir en un sistema de ficheros. A nivel bsico, el SGBD proporciona todas las rutinas de manejo de ficheros tpicas de los programas de aplicacin. El hecho de disponer de estas funciones permite al programador centrarse mejor en la funcin especfica requerida por los usuarios, sin tener que preocuparse de los detalles de implementacin de bajo nivel.

Mejora en el mantenimiento:
En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicacin que los manejan.

Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados. Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.

Aumento de la concurrencia:
En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda informacin o se pierda la integridad. La mayora de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo.

Mejora en los servicios de copias de seguridad:


Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada da, y si se produce algn fallo, utilizar estas copias para restaurarlos. En este caso, todo el trabajo realizado sobre los datos desde que se hizo la ltima copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.

Desventajas de las bases de datos Complejidad:


Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar un buen uso de ellos.

Coste del equipamiento adicional:


Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir ms espacio de almacenamiento. Adems, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una mquina ms grande o una mquina que se dedique solamente al SGBD. Todo esto har que la implantacin de un sistema de bases de datos sea ms cara.

Vulnerable a los fallos:

El hecho de que todo est centralizado en el SGBD hace que el sistema sea ms vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias de seguridad (Backup).

Tipos de Campos
Cada Sistema de Base de Datos posee tipos de campos que pueden ser similares o diferentes. Entre los ms comunes podemos nombrar:

Numrico: entre los diferentes tipos de campos numricos podemos encontrar enteros sin decimales y reales decimales. Booleanos: poseen dos estados: Verdadero Si y Falso No. Memos: son campos alfanumricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados. Fechas: almacenan fechas facilitando posteriormente su explotacin. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los das entre una fecha y otra. Alfanumricos: contienen cifras y letras. Presentan una longitud limitada (255 caracteres). Autoincrementables: son campos numricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta: Servir de identificador ya que resultan exclusivos de un registro.

Tipos de Base de Datos


Entre los diferentes tipos de base de datos, podemos encontrar los siguientes:

MySql: es una base de datos con licencia GPL basada en un servidor. Se caracteriza por su rapidez. No es recomendable usar para grandes volmenes de datos. PostgreSql y Oracle: Son sistemas de base de datos poderosos. Administra muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y sistemas de gran calibre. Access: Es una base de datos desarrollada por Microsoft. Esta base de datos, debe ser creada bajo el programa access, el cual crea un archivo .mdb con la estructura ya explicada. Microsoft SQL Server: es una base de datos ms potente que access desarrollada por Microsoft. Se utiliza para manejar grandes volmenes de informaciones.

Modelo entidad-relacin
Los diagramas o modelos entidad-relacin (denominado por su siglas, ERD Diagram Entity relationship) son una herramienta para el modelado de datos de un sistema de informacin. Estos modelos expresan entidades relevantes para un sistema de informacin, sus inter-relaciones y propiedades.

Cardinalidad de las Relaciones


El diseo de relaciones entre las tablas de una base de datos puede ser la siguiente:

Relaciones de uno a uno: una instancia de la entidad A se relaciona con una y solamente una de la entidad B. Relaciones de uno a muchos: cada instancia de la entidad A se relaciona con varias instancias de la entidad B. Relaciones de muchos a muchos: cualquier instancia de la entidad A se relaciona con cualquier instancia de la entidad B.

Estructura de una Base de Datos


Una base de datos, a fin de ordenar la informacin de manera lgica, posee un orden que debe ser cumplido para acceder a la informacin de manera coherente. Cada base de datos contiene una o ms tablas, que cumplen la funcin de contener los campos. En el siguiente ejemplo mostramos una tabla comentarios que contiene 4 campos.

Los datos quedaran organizados como mostramos en siguiente ejemplo:

Por consiguiente una base de datos posee el siguiente orden jerrquico:


Tablas Campos Registros Lenguaje SQL

El lenguaje SQL es el ms universal en los sistemas de base de datos. Este lenguaje nos permite realizar consultas a nuestras bases de datos para mostrar, insertar, actualizar y borrar datos. A continuacin veremos un ejemplo de ellos:

Mostrar: para mostrar los registros se utiliza la instruccin Select. Select * From comentarios. Insertar: los registros pueden ser introducidos a partir de sentencias que emplean la instruccin Insert. Insert Into comentarios (titulo, texto, fecha) Values
('saludos', 'como esta', '22-10-2007')

Borrar: Para borrar un registro se utiliza la instruccin Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una seleccin que se llevara a cabo mediante la clusula Where. Delete From comentarios Where id='1'. Actualizar: para actualizar los registros se utiliza la instruccin Update. Como para el caso de Delete, necesitamos especificar por medio de Where cules son los registros en los que queremos hacer efectivas nuestras modificaciones. Adems, tendremos que especificar cules son los nuevos valores de los campos que deseamos actualizar. Update
comentarios Set titulo='Mi Primer Comentario' Where id='1'.

No te pierdas la seccin de Foros del Web dedicada especialmente al tema de las bases de datos.

Base de datos (mdulo)


Base de datos

Caractersticas de la base de datos Agregar una base de datos Detalles de una base de datos Plantillas de la base de datos Campos de la base de datos Conjunto predefinido Agregar un registro en la base de datos Ver una base de datos Eliminar una Base de datos Usos didcticos Enlaces

Moodle 1.6 Esta actividad permite que los usuarios incorporen datos en un formulario diseado por el profesor del curso. Las entradas se pueden clasificar, buscar, etc. Las entradas pueden contener el texto, imgenes y otros formatos de informacin. Este mdulo es una novedad en la versin de Moodle 1.6, pero tambin funciona con Moodle 1.5.4.

Permite crear una base de datos accesible, en lectura y escritura, tanto al alumnado como al profesorado. Tiene diferentes tipos de campos: o Texto o Imgenes o Archivo o URL o Fecha o Men o Men (Seleccin mltiple) o Botn de marcar (Checkbox) o Botones de eleccin (Radio buttons) Su icono estndar es:

El Mdulo Base de Datos permite a los profesores y/o estudiantes construir, mostrar y buscar un repositorio de entradas con registros sobre cualquier tema concebible. El formato y la estructura de estas entradas pueden ser casi ilimitadas, incluyendo imgenes, archivos, URLs, nmeros y texto entre otras cosas. Usted puede estar familiarizado con tecnologas similares para crear bases datos como pueden ser Microsoft Access o Filemaker.

Contenido
[ocultar]

1 Cmo usar el mdulo Base de Datos 2 Ejemplos de Bases de datos 3 Ver tambin o 3.1 Tabla de mdulos de Actividades

Cmo usar el mdulo Base de Datos

Lo primero que debe hacer es agregar una base de datos. Se le requerir un nombre, indique algn texto descriptivo que indique el propsito a los usuarios y complete otras pocas opciones. Seguidamente defina el tipo de Campos que definan la informacin que desee almacenar. Por ejemplo, una base de datos de pintores famosos puede tener un campo de imgen llamado cuadro, para subir un archivo de imgen que muestre el cuadro, y dos campos de texto llamados artista y ttulo para el nombre del artista y el ttulo del cuadro. Tiene la posibilidad, opcional, de editar las Plantilla para modificar la manera en que la base de datos mostar las entradas. Note que si usted, ms tarde, edita los campos de la base de datos, deber usar el Botn Restaurar plantilla, o manualmente editar la plantilla, para asegurar que los nuevos campos son correctamente aadidos en la visualizacin. Finalmente el Profesor y/o los Alumnos pueden empezar a introducir datos y (opcionalmente) comentar o calificar otros envos. Estas entradas pueden ser visualizadas como registro nico, lista o pueden ser buscadas y ordenadas.

Ejemplos de Bases de datos


En Moodle.org tenemos tres buenos ejemplo de aplicacin de mdulo Base de datos:

Moodle Buzz, Una base de datos de artculos sobre Moodle con su ttulo, autor y el enlace Web. Themes, Una base de datos sobre Temas de Moodle con captura, enlace para su descarga y comentarios de los usuarios. Modules and plugins, Una base de datos sobre los mdulos de Moodle que contiene enlaces Web (descarga, docum

Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo ms utilizado en la actualidad para implementar bases de datos ya planificadas. Permiten establecer interconexiones (relaciones) entre los datos (que estn guardados en tablas), y a travs de dichas conexiones relacionar los datos de ambas tablas, de ah proviene su nombre: "Modelo Relacional". Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de los laboratorios IBM en San Jos (California), no tard en consolidarse como un nuevo paradigma en los modelos de base de datos.1

Contenido
[ocultar]

1 Caractersticas 2 Elementos o 2.1 Relaciones base y derivadas o 2.2 Restricciones o 2.3 Dominios o 2.4 Clave nica o 2.5 Clave primaria

2.6 Clave fornea 3 Clave ndice o 3.1 Procedimientos almacenados 4 Estructura 5 Manipulacin de la informacin 6 Manejadores de base de datos relacionales 7 Ventajas y desventajas 8 Diseo de las bases de datos relacionales 9 Vase tambin 10 Referencias 11 Enlaces externos

[editar] Caractersticas

Una base de datos relacional se compone de varias tablas o relaciones. No pueden existir dos tablas con el mismo nombre ni registro. Cada tabla es a su vez un conjunto de registros (filas y columnas). La relacin entre una tabla padre y un hijo se lleva a cabo por medio de las claves primarias y ajenas (o forneas). Las claves primarias son la clave principal de un registro dentro de una tabla y stas deben cumplir con la integridad de datos. Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la clave primaria del registro padre; por medio de stas se hacen las relaciones.

[editar] Elementos
[editar] Relaciones base y derivadas
En una base de datos relacional, todos los datos se almacenan y se accede a ellos por medio de relaciones. Las relaciones que almacenan datos son llamadas "relaciones base" y su implementacin es llamada "tabla". Otras relaciones no almacenan datos, pero son calculadas al aplicar operaciones relacionales. Estas relaciones son llamadas "relaciones derivadas" y su implementacin es llamada "vista" o "consulta". Las relaciones derivadas son convenientes ya que expresan informacin de varias relaciones actuando como si fuera una sola.

[editar] Restricciones
Una restriccin es una condicin que obliga el cumplimiento de ciertas condiciones en la base de datos. Algunas no son determinadas por los usuarios, sino que son inherentemente definidas por el simple hecho de que la base de datos sea relacional. Algunas otras restricciones las puede definir el usuario, por ejemplo, usar un campo con valores enteros entre 1 y 10.

Las restricciones proveen un mtodo de implementar reglas en la base de datos. Las restricciones restringen los datos que pueden ser almacenados en las tablas. Usualmente se definen usando expresiones que dan como resultado un valor booleano, indicando si los datos satisfacen la restriccin o no. Las restricciones no son parte formal del modelo relacional, pero son incluidas porque juegan el rol de organizar mejor los datos. Las restricciones son muy discutidas junto con los conceptos relacionales.

[editar] Dominios
Un dominio describe un conjunto de posibles valores para cierto atributo. Como un dominio restringe los valores del atributo, puede ser considerado como una restriccin. Matemticamente, atribuir un dominio a un atributo significa "todos los valores de este atributo deben de ser elementos del conjunto especificado". Distintos tipos de dominios son: enteros, cadenas de texto, fecha,no procedurales etc.

[editar] Clave nica


Cada tabla puede tener uno o ms campos cuyos valores identifican de forma nica cada registro de dicha tabla, es decir, no pueden existir dos o ms registros diferentes cuyos valores en dichos campos sean idnticos. Este conjunto de campos se llama clave nica. Pueden existir varias claves nicas en una determinada tabla, y a cada una de stas suele llamrsele candidata a clave primaria.

[editar] Clave primaria


Una clave primaria es una clave nica elegida entre todas las candidatas que define unvocamente a todos los dems atributos de la tabla, para especificar los datos que sern relacionados con las dems tablas. La forma de hacer esto es por medio de claves forneas. Slo puede existir una clave primaria por tabla y ningn campo de dicha clave puede contener valores NULL.

[editar] Clave fornea


Una clave fornea es una referencia a una clave en otra tabla, determina la relacin existente en dos tablas. Las claves forneas no necesitan ser claves nicas en la tabla donde estn y s a donde estn referenciadas. Por ejemplo, el cdigo de departamento puede ser una clave fornea en la tabla de empleados. Se permite que haya varios empleados en un mismo departamento, pero habr uno y slo un departamento por cada clave distinta de departamento en la tabla de empleados.

[editar] Clave ndice


Las claves ndice surgen con la necesidad de tener un acceso ms rpido a los datos. Los ndices pueden ser creados con cualquier combinacin de campos de una tabla. Las consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave ndice. Las bases de datos relacionales incluyen mltiples tcnicas de ordenamiento, cada una de ellas es ptima para cierta distribucin de datos y tamao de la relacin. Los ndices generalmente no se consideran parte de la base de datos, pues son un detalle agregado. Sin embargo, las claves ndices son desarrolladas por el mismo grupo de programadores que las otras partes de la base de datos.

[editar] Procedimientos almacenados


Un procedimiento almacenado es cdigo ejecutable que se asocia y se almacena con la base de datos. Los procedimientos almacenados usualmente recogen y personalizan operaciones comunes, como insertar un registro dentro de una tabla, recopilar informacin estadstica, o encapsular clculos complejos. Son frecuentemente usados por un API por seguridad o simplicidad. Los procedimientos almacenados no son parte del modelo relacional, pero todas las implementaciones comerciales los incluyen.

[editar] Estructura
La base de datos se organiza en dos marcadas secciones; el esquema y los datos (o instancia). El esquema es la definicin de la estructura de la base de datos y principalmente almacena los siguientes datos:

El nombre de cada tabla El nombre de cada columna El tipo de dato de cada columna La tabla a la que pertenece cada columna

Las bases de datos relacionales pasan por un proceso al que se le conoce como normalizacin, el resultado de dicho proceso es un esquema que permite que la base de datos sea usada de manera ptima. Los datos o instancia es el contenido de la base de datos en un momento dado. Es en s, el contenido de todos los registros.

[editar] Manipulacin de la informacin


Para manipular la informacin utilizamos un lenguaje relacional, actualmente se cuenta con dos lenguajes formales el lgebra relacional y el clculo relacional. El lgebra relacional permite describir la forma de realizar una consulta, en cambio, el clculo relacional slo indica lo que se desea devolver. El lenguaje ms comn para construir las consultas a bases de datos relacionales es SQL (Structured Query Language), un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. En el modelo relacional los atributos deben estar explcitamente relacionados a un nombre en todas las operaciones, en cambio, el estndar SQL permite usar columnas sin nombre en conjuntos de resultados, como el asterisco taquigrfico (*) como notacin de consultas. Al contrario del modelo relacional, el estndar SQL requiere que las columnas tengan un orden definido, lo cual es fcil de implementar en una computadora, ya que la memoria es lineal. Es de notar, sin embargo, que en SQL el orden de las columnas y los registros devueltos en cierto conjunto de resultado nunca est garantizado, a no ser que explcitamente sea especificado por el usuario.

[editar] Manejadores de base de datos relacionales


Existe software exclusivamente dedicado a tratar con bases de datos relacionales. Este software se conoce como SGBD (Sistema de Gestin de Base de Datos relacional) o RDBMS (del ingls Relational Database Management System). Entre los gestores o manejadores actuales ms populares encontramos: MySQL, PostgreSQL, Oracle, DB2,INFORMIX, Interbase, FireBird, Sybase y Microsoft SQL Server.

[editar] Ventajas y desventajas


Ventajas

Provee herramientas que garantizan evitar la duplicidad de registros. Garantiza la integridad referencial, as, al eliminar un registro elimina todos los registros relacionados dependientes. Favorece la normalizacin por ser ms comprensible y aplicable.

Desventajas

Presentan deficiencias con datos grficos, multimedia, CAD y sistemas de informacin geogrfica. No se manipulan de forma manejable los bloques de texto como tipo de dato. Las bases de datos orientadas a objetos (BDOO) se propusieron con el objetivo de satisfacer las necesidades de las aplicaciones anteriores y as, complementar pero no sustituir a las bases de datos relacionales.

[editar] Diseo de las bases de datos relacionales


El primer paso para crear una base de datos, es planificar el tipo de informacin que se quiere almacenar en la misma, teniendo en cuenta dos aspectos: la informacin disponible y la informacin que necesitamos. La planificacin de la estructura de la base de datos, en particular de las tablas, es vital para la gestin efectiva de la misma. El diseo de la estructura de una tabla consiste en una descripcin de cada uno de los campos que componen el registro y los valores o datos que contendr cada uno de esos campos. Los campos son los distintos tipos de datos que componen la tabla, por ejemplo: nombre, apellido, domicilio. La definicin de un campo requiere: el nombre del campo, el tipo de campo, el ancho del campo, etc. Los registros constituyen la informacin que va contenida en los campos de la tabla, por ejemplo: el nombre del paciente, el apellido del paciente y la direccin de este. Generalmente los diferentes tipos de campos que se pueden almacenar son los siguientes: Texto (caracteres), Numrico (nmeros), Fecha / Hora, Lgico (informaciones lgicas si/no, verdadero/falso, etc.), imgenes. En resumen, el principal aspecto a tener en cuenta durante el diseo de una tabla es determinar claramente los campos necesarios, definirlos en forma adecuada con un nombre especificando su tipo y su longitud.

Base de datos jerrquica


Saltar a: navegacin, bsqueda

Una base de datos jerrquica es un tipo de sistema de gestin de bases de datos que, como su nombre indica, almacenan la informacin en una estructura jerrquica que enlaza los registros en forma de estructura de rbol (similar a un rbol visto al revs), en donde un nodo padre de informacin puede tener varios nodos hijo. Esta relacin jerrquica no es estrictamente obligatoria, de manera que pueden establecerse relaciones entre nodos hermanos. En este caso la estructura en forma de rbol se convierte en una estructura en forma de grafo dirigido. Esta variante se denomina Bases de datos de red.

Contenido
[ocultar]

1 Breve resea histrica 2 Cmo funcionan 3 Limitaciones del modelo jerrquico o 3.1 Duplicidad de registros o 3.2 Integridad referencial o 3.3 Desnormalizacin 4 Gestores de bases de datos jerrquicas 5 Vase tambin 6 Enlaces externos

[editar] Breve resea histrica


Las bases de datos jerrquicas fueron concebidas en los aos 1960. El primer metamodelo de base de datos propuesto fue la mencionada Base de datos en red, concebida bajo el auspicio de CODASYL (COnference on DAta SYstems Languages). Posteriormente se refin la idea dando lugar a la base de datos jerrquica. La primera implementacin de este metamodelo fue IMS (Information Management System). Se trata de un diseo de IBM y otros colaboradores en 1966 para el Programa Apollo de la NASA. IMS an se encuentra activo. El sector de la banca y las Administraciones Pblicas adoptaron rpidamente esta tecnologa, sin la cual, no hubiese sido posible el grado de automatizacin que tienen hoy da. Estos sectores eran los nicos con capacidad econmica suficiente para adquirir los enormes mainframe para la automatizacin de bases de datos, nica solucin posible en la poca. Poco despus, en 1970, E. F. Codd propuso el modelo relacional. Las ventajas de este modelo y su enfoque matemtico centraron los esfuerzos de la industria dando lugar a los sistemas gestores de bases de datos relacionales. Estos ltimos han reemplazado a las bases de datos jerrquicas hoy da, pero no completamente. La mayora de las antiguas bases de datos jerrquicas de bancos y Administraciones Pblicas an siguen en actividad. Esto se debe a que el rendimiento de las bases de datos jerrquicas sigue sin ser superado por las bases de datos relacionales. Adems estos sectores sufren un gran volumen de transacciones. Observse, por ejemplo, la cantidad de apuntes contables que requiere una red de cajeros automticos en un solo da.

[editar] Cmo funcionan


A diferencia del modelo relacional, el modelo jerrquico no diferencia una vista lgica de una vista fsica de la base de datos. De manera que las relaciones entre datos se establecen siempre a nivel fsico, es decir, mediante referencia a direcciones fsicas del medio de almacenamiento (sectores y pistas).

Los datos se almacenan en la forma de registros, el equivalente a las filas del modelo relacional. Cada registro consta de un conjunto de campos, el equivalente a las columnas del modelo relacional. Un conjunto de registros con los mismos campos se denomina fichero (record type, en ingls), el equivalente a las tablas del modelo relacional. El modelo jerrquico facilita relaciones padre-hijo, es decir, relaciones 1:N (de uno a varios) del modelo relacional. Pero a diferencia de ste ltimo, las relaciones son unidireccionales. En justicia, dichas relaciones son hijo-padre, pero no padre-hijo. Por ejemplo, el registro de un empleado (nodo hijo) puede relacionarse con el registro de su departamento (nodo padre), pero no al contrario. Esto implica que solamente se puede consultar la base de datos desde los nodos hoja hacia el nodo raz. La consulta en el sentido contrario requiere una bsqueda secuencial por todos los registros de la base de datos (por ejemplo, para consultar todos los empleados de un departamento). En las bases de datos jerrquicas no existen ndices que faciliten esta tarea. Obsrvese que, a priori, no existen relaciones N:M (de muchos a muchos) en el modelo jerrquico. Salvo que se simulen mediante varias relaciones 1:N. No obstante, esto puede provocar problemas de inconsistencia, ya que el gestor de base de datos no controla estas relaciones. Como ya se ha mencionado, las relaciones se establecen mediante punteros entre registros. Es decir, un registro hijo contiene la direccin fsica en el medio de almacenamiento de su registro padre. Esto tiene una ventaja fundamental sobre las bases de datos relacionales: el rendimiento. El acceso de un registro a otro es prcticamente inmediato sin necesidad de consultar tablas de correspondencia. Las relaciones jerrquicas entre diferentes tipos de datos pueden hacer que sea muy sencillo responder a determinadas preguntas, pero muy difcil el contestar a otras.

[editar] Limitaciones del modelo jerrquico


A continuacin se mencionan los problemas tpicos de las bases de datos jerrquicas y que no existen en las bases de datos relacionales. Todos estos problemas derivan del hecho de que el sistema gestor de base de datos no implementa ningn control sobre los propios datos, sino que queda en manos de las aplicaciones garantizar que se cumplen las condiciones invariantes que se requieran (por ejemplo, evitar la duplicidad de registros). Dado que todas las aplicaciones estn sujetas a errores y fallos, esto es imposible en la prctica. Adems dichas condiciones suelen romperse ex profeso por motivos operativos (generalmente, ajustes debidos a cambios en el negocio) sin evaluarse sus consecuencias.

[editar] Duplicidad de registros


No se garantiza la inexistencia de registros duplicados. Esto tambin es cierto para los campos "clave". Es decir, no se garantiza que dos registros cualesquiera tengan diferentes valores en un subconjunto concreto de campos.

[editar] Integridad referencial


No existe garanta de que un registro hijo est relacionado con un registro padre vlido. Por ejemplo, es posible borrar un nodo padre sin eliminar antes los nodos hijo, de manera que stos ltimos estn relacionados con un registro invlido o inexistente..

[editar] Desnormalizacin
Este no es tanto un problema del modelo jerrquico como del uso que se hace de l. Sin embargo, a diferencia del modelo relacional, las bases de datos jerrquicas no tienen controles que impidan la desnormalizacin de una base de datos. Por ejemplo, no existe el concepto de campos clave o campos nicos. La desnormalizacin permite ingresar redundancia de una forma controlada, seguir a una serie de pasos conlleva a:

Combinar las relaciones Duplicar los atributos no claves Introduccin de grupos repetitivos Crear tablas de extraccin

Cuando se debe desnormalizar:


Se debe desnormalizar para optimizar el esquema relacional Para hacer referencia a la combinacin de 2 relaciones que forman una sola relacin

Ejemplo: Proveedor (Nro_proveedor, calle, ciudad, cod_postal, descripcin) La relacin Proveedor esta desnormalizada, ya que para normalizarla deberamos crear una tabla con ciudad y cdigo postal

[editar] Gestores de bases de datos jerrquicas


Base de datos de red
Saltar a: navegacin, bsqueda

Una base de datos de red es una base de datos conformada por una coleccin o set de registros, los cuales estn conectados entre s por medio de enlaces en una red. El registro es similar al de una entidad como las empleadas en el modelo relacional.

Un registro es una coleccin o conjunto de campos (atributos), donde cada uno de los que contiene solamente un nico valor almacenado, exclusivamente el enlace es la asociacin entre dos registros, as que podemos verla como una relacin estrictamente binaria.

Una estructura de base de datos de red, llamada algunas veces estructura de plex, abarca ms que la estructura de rbol, porque un nodo hijo en la estructura red puede tener ms de un nodo padre. En otras palabras, la restriccin de que en un rbol jerrquico cada hijo puede tener slo un padre, se hace menos severa. As, la estructura de rbol se puede considerar como un caso especial de la estructura de red.

[editar] Ejemplo
Para ilustrar la estructura de los registros en una base de datos de red, mostraremos la base de datos alumno materia, con los siguientes registros (en el Lenguaje de programacin Pascal):
type materia = record clave: string[7] nombreM: string[25] cred: string[2]; end; type alumno = record nombre: string[30]; control: string[8]; materia: Materia; {Enlace a materia} end;

En sntesis una base de datos en red puede tener 1 o mas elementos padre.

[editar] Vase tambin

Bases de datos
Una base de datos o banco de datos es un conjunto de datos que pertenecen al mismo contexto almacenados sistemticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayora por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnolgico de campos como la informtica y la electrnica, la mayora de las bases de datos tienen formato electrnico, que ofrece un amplio rango de soluciones al problema de almacenar datos. En informtica existen los sistemas gestores de bases de datos (SGBD), que permiten almacenar y posteriormente acceder a los datos de forma rpida y estructurada. Las propiedades de los sistemas gestores de bases de datos se estudian en informtica.

Las aplicaciones ms usuales son para la gestin de empresas e instituciones pblicas. Tambin son ampliamente utilizadas en entornos cientficos con el objeto de almacenar la informacin experimental. Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios pases. Por ejemplo en Espaa, los datos personales se encuentran protegidos por la Ley Orgnica de Proteccin de Datos de Carcter Personal (LOPD).

Tipos de bases de datos


Las bases de datos pueden clasificarse de varias maneras, de acuerdo al criterio elegido para su clasificacin:

Segn la variabilidad de los datos almacenados


Bases de datos estticas stas son bases de datos de slo lectura, utilizadas primordialmente para almacenar datos histricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a travs del tiempo, realizar proyecciones y tomar decisiones. Bases de datos dinmicas stas son bases de datos donde la informacin almacenada se modifica con el tiempo, permitiendo operaciones como actualizacin y adicin de datos, adems de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de informacin de una tienda de abarrotes, una farmacia, un videoclub, etc.

Segn el contenido
Bases de datos bibliogrficas Solo contienen un surrogante (representante) de la fuente primaria, que permite localizarla. Un registro tpico de una base de datos bibliogrfica contiene informacin sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una determinada publicacin, etc. Puede contener un resmen o extracto de la publicacin original, pero nunca el texto completo, porque sino estaramos en presencia de una base de datos a texto completo (o de fuentes primariasver ms abajo). Como su nombre lo indica, el contenido son cifras o nmeros. Por ejemplo, una coleccin de resultados de anlisis de laboratorio, entre otras. Bases de datos de texto completo Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una coleccin de revistas cientficas.

Directorios Un ejemplo son las guas telefnicas en formato electrnico. Banco de imgenes, audio, video, multimedia, etc. Bases de datos o bibliotecas de informacin Biolgica Son bases de datos que almacenan diferentes tipos de informacin proveniente de las ciencias de la vida o mdicas. Se pueden considerar en varios subtipos:

Aquellas que almacenan secuencias de nucletidos o protenas. Las bases de datos de rutas metablicas Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomolculas Bases de datos clnicas Bases de datos bibliogrficas (biolgicas)

Modelos de bases de datos


Adems de la clasificacin por la funcin de las bases de datos, stas tambin se pueden clasificar de acuerdo a su modelo de administracin de datos. Un modelo de datos es bsicamente una descripcin de algo conocido como contenedor de datos (algo en donde se guarda la informacin), as como de los mtodos para almacenar y recuperar informacin de esos contenedores. Los modelos de datos no son cosas fsicas: son abstracciones que permiten la implementacin de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemticos. Algunos modelos con frecuencia utilizados en las bases de datos:

Bases de datos jerrquicas


stas son bases de datos que, como su nombre indica, almacenan su informacin en una estructura jerrquica. En este modelo los datos se organizan en una forma similar a un rbol (visto al revs), en donde un nodo padre de informacin puede tener varios hijos. El nodo que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerrquicas son especialmente tiles en el caso de aplicaciones que manejan un gran volumen de informacin y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.

Base de datos de red


ste es un modelo ligeramente distinto del jerrquico; su diferencia fundamental es la modificacin del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerrquico). Fue una gran mejora con respecto al modelo jerrquico, ya que ofreca una solucin eficiente al problema de redundancia de datos; pero, aun as, la dificultad que significa administrar la informacin en una base de datos de red ha significado que sea un modelo utilizado en su mayora por programadores ms que por usuarios finales.

Base de datos relacional


Artculo principal: Modelo relacional

ste es el modelo ms utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San Jos (California), no tard en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de relaciones. Estas relaciones podran considerarse en forma lgica como conjuntos de datos llamados tuplas. Pese a que sta es la teora de las bases de datos relacionales creadas por Edgar Frank Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar. Esto es pensando en cada relacin como si fuese una tabla que est compuesta por registros (las filas de una tabla), que representaran las tuplas, y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerrquico y el de red). Esto tiene la considerable ventaja de que es ms fcil de entender y de utilizar para un usuario espordico de la base de datos. La informacin puede ser recuperada o almacenada mediante consultas que ofrecen una amplia flexibilidad y poder para administrar la informacin. El lenguaje ms habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Durante su diseo, una base de datos relacional pasa por un proceso al que se le conoce como normalizacin de una base de datos. Durante los aos 80 (1980-1989) la aparicin de dBASE produjo una revolucin en los lenguajes de programacin y sistemas de administracin de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestin.

Bases de datos orientadas a objetos

Este modelo, bastante reciente, y propio de los modelos informticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:

Encapsulacin Propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as accesos incorrectos o conflictos. Herencia Propiedad a travs de la cual los objetos heredan comportamiento dentro de una jerarqua de clases. Polimorfismo Propiedad de una operacin mediante la cual puede ser aplicada a distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definicin de la base de datos. Una operacin (llamada funcin) se especifica en dos partes. La interfaz (o signatura) de una operacin incluye el nombre de la operacin y los tipos de datos de sus argumentos (o parmetros). La implementacin (o mtodo) de la operacin se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicacin de los usuarios pueden operar sobre los datos invocando a dichas operaciones a travs de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podra denominarse independencia entre programas y operaciones. Se est trabajando en SQL3, que es el estndar de SQL92 ampliado, que soportar los nuevos conceptos orientados a objetos y mantendra compatibilidad con SQL92.

Bases de datos documentales


Permiten la indexacin a texto completo, y en lneas generales realizar bsquedas ms potentes. Tesaurus es un sistema de ndices optimizado para este tipo de bases de datos.

Base de datos deductivas


Un sistema de base de datos deductivas, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a travs de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Tambin las bases de datos deductivas son llamadas base de datos lgica, a raz de que se basan en lgica matemtica.

Gestin de bases de datos distribuida


La base de datos est almacenada en varias computadoras conectadas en red. Surgen debido a la existencia fsica de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder as a distintas universidades, sucursales de tiendas, etcetera 2.

3. Elementos principales 4. En resumen 5. Algunos antecedentes, Por qu fue creado? 6. Evolucin de la arquitectura cliente servidor 7. Que es una arquitectura 8. Que es un cliente 9. Que es un servidor 10. Elementos de la arquitectura cliente/servidor 11. Caractersticas del modelo cliente/servidor 12. Tipos de clientes, de servidor 13. Estilos del modelo cliente servidor 14. Presentacin remota 15. Lgica distribuida 16. Administracin de datos remota 17. Base de datos distribuida 18. Definicin de Middleware 19. Funciones de un programa servidor 20. Bibliografa INTRODUCCIN En vista del aprendizaje que tenemos diariamente en el aula de clases, nos vemos desafiados por un mundo lleno de conocimientos que invoca a la investigacin. Este trabajo fue realizado precisamente para llenar las expectativas y ansias de intelectualidad que nos brinda la carrera, desde bases de datos, vemos la importancia de la arquitectura cliente servidor. Es exactamente lo que se plasmara en el siguiente trabajo, la forma de Conocer una arquitectura que en este momento es una de las ms importantes y utilizadas en el mbito de enviar y recibir informacin, tambin es una herramienta potente para guardar los datos en una base de datos como servidor.

------------------------------------Con respecto a la definicin de arquitectura cliente/servidor se encuentran las siguientes definiciones:

Cualquier combinacin de sistemas que pueden colaborar entre si para dar a los usuarios toda la informacin que ellos necesiten sin que tengan que saber donde esta ubicada. Es una arquitectura de procesamientos cooperativo donde uno de los componentes pide servicios a otro.

Es un procesamiento de datos de ndole colaborativo entre dos o ms computadoras conectadas a una red. El trmino cliente/servidor es originalmente aplicado a la arquitectura de software que describe el procesamiento entre dos o ms programas: una aplicacin y un servicio soportante. IBM define al modelo Cliente/Servidor. "Es la tecnologa que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cmputo o cualquier otro recurso del grupo de trabajo y/o, a travs de la organizacin, en mltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio hechos por estaciones de trabajo inteligentes o "clientes'', resultan en un trabajo realizado por otros computadores llamados servidores". "Es un modelo para construir sistemas de informacin, que se sustenta en la idea de repartir el tratamiento de la informacin y los datos por todo el sistema informtico, permitiendo mejorar el rendimiento del sistema global de informacin"

Elementos principales "Los elementos principales de la arquitectura cliente servidor son justamente el elemento llamado cliente y el otro elemento llamado servidor". Por ejemplo dentro de un ambiente multimedia, el elemento cliente seria el dispositivo que puede observar el vdeo, cuadros y texto, o reproduce el audio distribuido por el elemento servidor. Por otro lado el cliente tambin puede ser una computadora personal o una televisin inteligente que posea la capacidad de entender datos digitales. Dentro de este caso el elemento servidor es el depositario del vdeo digital, audio, fotografas digitales y texto y los distribuye bajo demanda de ser una maquina que cuenta con la capacidad de almacenar los datos y ejecutar todo el software que brinda stos al cliente. EN RESUMEN C/S es una relacin entre procesos corriendo en mquinas separadas El servidor (S) es un proveedor de servicios. El cliente (C) es un consumidor de servicios. C y S Interactan por un mecanismo de pasaje de mensajes: Pedido de servicio. Respuesta ALGUNOS ANTECEDENTES, PORQUE FUE CREADO?

Existen diversos puntos de vista sobre la manera en que debera efectuarse el procesamiento de datos, aunque la mayora que opina, coincide en que nos encontramos en medio de un proceso de evolucin que se prolongar todava por algunos aos y que cambiar la forma en que obtenemos y utilizamos la informacin almacenada electrnicamente. El principal motivo detrs de esta evolucin es la necesidad que tienen las organizaciones (empresas o instituciones pblicas o privadas), de realizar sus operaciones ms gil y eficientemente, debido a la creciente presin competitiva a la que estn sometidas, lo cual se traduce en la necesidad de que su personal sea mas productivo, que se reduzcan los costos y gastos de operacin, al mismo tiempo que se generan productos y servicios ms rpidamente y con mejor calidad. En este contexto, es necesario establecer una infraestructura de procesamiento de informacin, que cuente con los elementos requeridos para proveer informacin adecuada, exacta y oportuna en la toma de decisiones y para proporcionar un mejor servicio a los clientes. El modelo Cliente/Servidor rene las caractersticas necesarias para proveer esta infraestructura, independientemente del tamao y complejidad de las operaciones de las organizaciones pblicas o privadas y, consecuentemente desempea un papel importante en este proceso de evolucin. Evolucin de la arquitectura cliente servidor La era de la computadora central "Desde sus inicios el modelo de administracin de datos a travs de computadoras se basaba en el uso de terminales remotas, que se conectaban de manera directa a una computadora central". Dicha computadora central se encargaba de prestar servicios caracterizados por que cada servicio se prestaba solo a un grupo exclusivo de usuarios. La era de las computadoras dedicadas Esta es la era en la que cada servicio empleaba su propia computadora que permita que los usuarios de ese servicio se conectaran directamente. Esto es consecuencia de la aparicin de computadoras pequeas, de fcil uso, ms baratas y ms poderosas de las convencionales. La era de la conexin libre Hace mas de 10 aos que la computadoras escritorio aparecieron de manera masiva. Esto permiti que parte apreciable de la carga de trabajo de cmputo tanto en el mbito de clculo como en el mbito de la presentacin se lleven a cabo desde el escritorio del usuario. En muchos de los casos el usuario obtiene la informacin que necesita de alguna computadora de servicio. Estas computadoras de escritorio se conectan a las computadoras de servicio empleando software que permite la emulacin de algn tipo de terminal. En

otros de los casos se les transfiere la informacin haciendo uso de recursos magnticos o por trascripcin. La era del cmputo a travs de redes

Esta es la era que esta basada en el concepto de redes de computadoras, en la que la informacin reside en una o varias computadoras, los usuarios de esta informacin hacen uso de computadoras para laborar y todas ellas se encuentran conectadas entre si. Esto brinda la posibilidad de que todos los usuarios puedan acceder a la informacin de todas las computadoras y a la vez que los diversos sistemas intercambien informacin. La era de la arquitectura cliente servidor "En esta arquitectura la computadora de cada uno de los usuarios, llamada cliente, produce una demanda de informacin a cualquiera de las computadoras que proporcionan informacin, conocidas como servidores"estos ltimos responden a la demanda del cliente que la produjo. Los clientes y los servidores pueden estar conectados a una red local o una red amplia, como la que se puede implementar en una empresa o a una red mundial como lo es la Internet. Bajo este modelo cada usuario tiene la libertad de obtener la informacin que requiera en un momento dado proveniente de una o varias fuentes locales o distantes y de procesarla como segn le convenga. Los distintos servidores tambin pueden intercambiar informacin dentro de esta arquitectura. QUE ES UNA ARQUITECTURA Una arquitectura es un entramado de componentes funcionales que aprovechando diferentes estndares, convenciones, reglas y procesos, permite integrar una amplia gama de productos y servicios informticos, de manera que pueden ser utilizados eficazmente dentro de la organizacin. Debemos sealar que para seleccionar el modelo de una arquitectura, hay que partir del contexto tecnolgico y organizativo del momento y, que la arquitectura Cliente/Servidor requiere una determinada especializacin de cada uno de los diferentes componentes que la integran. QUE ES UN CLIENTE Es el que inicia un requerimiento de servicio. El requerimiento inicial puede convertirse en mltiples requerimientos de trabajo a travs de redes LAN o WAN. La ubicacin de los datos o de las aplicaciones es totalmente transparente para el cliente.

QUE ES UN SERVIDOR Es cualquier recurso de cmputo dedicado a responder a los requerimientos del cliente. Los servidores pueden estar conectados a los clientes a travs de redes LANs o WANs, para proveer de mltiples servicios a los clientes y ciudadanos tales como impresin, acceso a bases de datos, fax, procesamiento de imgenes, etc. Para ver el grfico seleccione la opcin "Descargar" del men superior Este es el ejemplo grfico de la arquitectura cliente servidor. ELEMENTOS DE LA ARQUITECTURA CLIENTE/SERVIDOR En esta aproximacin, y con el objetivo de definir y delimitar el modelo de referencia de una arquitectura Cliente/Servidor, debemos identificar los componentes que permitan articular dicha arquitectura, considerando que toda aplicacin de un sistema de informacin est caracterizada por tres componentes bsicos:

Presentacin/Captacin de Informacin Procesos Almacenamiento de la Informacin

Los cuales se suelen distribuir tal como se presenta en la figura: Aplicaciones Cliente/Servidor Para ver el grfico seleccione la opcin "Descargar" del men superior Y se integran en una arquitectura Cliente/Servidor en base a los elementos que caracterizan dicha arquitectura, es decir:

Puestos de Trabajo Comunicaciones Servidores

Tal como se presenta en la figura: Arquitectura Cliente/Servidor Para ver el grfico seleccione la opcin "Descargar" del men superior De estos elementos debemos destacar: El Puesto de Trabajo o Cliente Una Estacin de trabajo o microcomputador (PC: Computador Personal) conectado a una red, que le permite acceder y gestionar una serie de recursos el cual se perfila como un

puesto de trabajo universal. Nos referimos a un microcomputador conectado al sistema de informacin y en el que se realiza una parte mayoritaria de los procesos. Se trata de un fenmeno en el sector informtico. Aquellos responsables informticos que se oponen a la utilizacin de los terminales no programables, acaban siendo marginados por la presin de los usuarios. Debemos destacar que el puesto de trabajo basado en un microcomputador conectado a una red, favorece la flexibilidad y el dinamismo en las organizaciones. Entre otras razones, porque permite modificar la ubicacin de los puestos de trabajo, dadas las ventajas de la red. Los Servidores o Back-end Una mquina que suministra una serie de servicios como Bases de Datos, Archivos, Comunicaciones,...). Los Servidores, segn la especializacin y los requerimientos de los servicios que debe suministrar pueden ser:

Mainframes Miniordenadores Especializados (Dispositivos de Red, Imagen, etc.)

Una caracterstica a considerar es que los diferentes servicios, segn el caso, pueden ser suministrados por un nico Servidor o por varios Servidores especializados. Las Comunicaciones En sus dos vertientes:

Infraestructura de redes Infraestructura de comunicaciones

Infraestructura de redes Componentes Hardware y Software que garantizan la conexin fsica y la transferencia de datos entre los distintos equipos de la red. Infraestructura de comunicaciones Componentes Hardware y Software que permiten la comunicacin y su gestin, entre los clientes y los servidores. La arquitectura Cliente/Servidor es el resultado de la integracin de dos culturas. Por un lado, la del Mainframe que aporta capacidad de almacenamiento, integridad y acceso a la informacin y, por el otro, la del computador que aporta facilidad de uso (cultura de PC),

bajo costo, presentacin atractiva (aspecto ldico) y una amplia oferta en productos y aplicaciones. CARACTERISTICAS DEL MODELO CLIENTE/SERVIDOR En el modelo CLIENTE/SERVIDOR podemos encontrar las siguientes caractersticas: 1. El Cliente y el Servidor pueden actuar como una sola entidad y tambin pueden actuar como entidades separadas, realizando actividades o tareas independientes. 2. Las funciones de Cliente y Servidor pueden estar en plataformas separadas, o en la misma plataforma. Para ver el grfico seleccione la opcin "Descargar" del men superior 3. Un servidor da servicio a mltiples clientes en forma concurrente. 4. Cada plataforma puede ser escalable independientemente. Los cambios realizados en las plataformas de los Clientes o de los Servidores, ya sean por actualizacin o por reemplazo tecnolgico, se realizan de una manera transparente para el usuario final. 5. La interrelacin entre el hardware y el software estn basados en una infraestructura poderosa, de tal forma que el acceso a los recursos de la red no muestra la complejidad de los diferentes tipos de formatos de datos y de los protocolos. 6. Un sistema de servidores realiza mltiples funciones al mismo tiempo que presenta una imagen de un solo sistema a las estaciones Clientes. Esto se logra combinando los recursos de cmputo que se encuentran fsicamente separados en un solo sistema lgico, proporcionando de esta manera el servicio ms efectivo para el usuario final. Tambin es importante hacer notar que las funciones Cliente/Servidor pueden ser dinmicas. Ejemplo, un servidor puede convertirse en cliente cuando realiza la solicitud de servicios a otras plataformas dentro de la red. Su capacidad para permitir integrar los equipos ya existentes en una organizacin, dentro de una arquitectura informtica descentralizada y heterognea. 7. Adems se constituye como el nexo de unin mas adecuado para reconciliar los sistemas de informacin basados en mainframes o minicomputadores, con aquellos otros sustentados en entornos informticos pequeos y estaciones de trabajo. 8. Designa un modelo de construccin de sistemas informticos de carcter distribuido. 1. Su representacin tpica es un centro de trabajo (PC), en donde el usuario dispone de sus propias aplicaciones de oficina y sus propias bases de datos, sin dependencia

directa del sistema central de informacin de la organizacin, al tiempo que puede acceder a los 2. recursos de este host central y otros sistemas de la organizacin ponen a su servicio. En conclusin, Cliente/Servidor puede incluir mltiples plataformas, bases de datos, redes y sistemas operativos. Estos pueden ser de distintos proveedores, en arquitecturas propietarias y no propietarias y funcionando todos al mismo tiempo. Por lo tanto, su implantacin involucra diferentes tipos de estndares: APPC, TCP/IP, OSI, NFS, DRDA corriendo sobre DOS, OS/2, Windows o PC UNIX, en TokenRing, Ethernet, FDDI o medio coaxial, slo por mencionar algunas de las posibilidades. TIPOS DE CLIENTES 1. "cliente flaco":

Servidor rpidamente saturado. Gran circulacin de datos de interfase en la red.

1. "cliente gordo":

Casi todo el trabajo en el cliente. No hay centralizacin de la gestin de la BD. Gran circulacin de datos intiles en la red.

TIPOS DE SERVIDOR Servidores de archivos Servidor donde se almacena archivos y aplicaciones de productividad como por ejemplo procesadores de texto, hojas de clculo, etc. Servidores de bases de datos

Servidor donde se almacenan las bases de datos, tablas, ndices. Es uno de los servidores que ms carga tiene. Servidores de transacciones Servidor que cumple o procesa todas las transacciones. Valida primero y recin genera un pedido al servidor de bases de datos. Servidores de Groupware Servidor utilizado para el seguimiento de operaciones dentro de la red. Servidores de objetos Contienen objetos que deben estar fuera del servidor de base de datos. Estos objetos pueden ser videos, imgenes, objetos multimedia en general. Servidores Web Se usan como una forma inteligente para comunicacin entre empresas a travs de Internet. Este servidor permite transacciones con el acondicionamiento de un browser especfico. Estilos del modelo cliente servidor PRESENTACIN DISTRIBUIDA

1. 2. 3. 4. 5.

Se distribuye la interfaz entre el cliente y la plataforma servidora. La aplicacin y los datos estn ambos en el servidor. Similar a la arquitectura tradicional de un Host y Terminales. El PC se aprovecha solo para mejorar la interfaz grfica del usuario.

Ventajas

Revitaliza los sistemas antiguos. Bajo costo de desarrollo. No hay cambios en los sistemas existentes.

Desventajas

El sistema sigue en el Host. No se aprovecha la GUI y/o LAN. La interfaz del usuario se mantiene en muchas plataformas.

PRESENTACIN REMOTA

1. 2. La interfaz para el usuario esta completamente en el cliente. 3. La aplicacin y los datos estn en el servidor. Ventajas

La interfaz del usuario aprovecha bien la GUI y la LAN. La aplicacin aprovecha el Host. Adecuado para algunos tipos de aplicaciones de apoyo a la toma de decisiones.

Desventajas

Las aplicaciones pueden ser complejas de desarrollar. Los programas de la aplicacin siguen en el Host. El alto volumen de trfico en la red puede hacer difcil la operacin de aplicaciones muy pesadas.

LGICA DISTRIBUIDA 1. 2. La interfaz esta en el cliente. 3. La base de datos esta en el servidor. 4. La lgica de la aplicacin esta distribuida entre el cliente y el servidor. Ventajas

Arquitectura mas corriente que puede manejar todo tipo de aplicaciones. Los programas del sistema pueden distribuirse al nodo mas apropiado. Pueden utilizarse con sistemas existentes.

Desventajas

Es difcil de disear. Difcil prueba y mantenimiento si los programas del cliente y el servidor estn hechos en distintos lenguajes de programacin. No son manejados por la GUI 4GL.

ADMINISTRACIN DE DATOS REMOTA 1. 2. En el cliente residen tanto la interfaz como los procesos de la aplicacin. 3. Las bases de datos estn en el servidor. 4. Es lo que comnmente imaginamos como aplicacin cliente servidor Ventajas

Configuracin tpica de la herramienta GUI 4GL. Muy adecuada para las aplicaciones de apoyo a las decisiones del usuario final. Fcil de desarrollar ya que los programas de aplicacin no estn distribuidos. Se descargan los programas del Host.

Desventajas

No maneja aplicaciones pesadas eficientemente. La totalidad de los datos viaja por la red, ya que no hay procesamiento que realice el Host.

BASE DE DATOS DISTRIBUIDA 1. 2. La interfaz, los procesos de la aplicacin, y , parte de los datos de la base de datos estn en cliente. 3. El resto de los datos estn en el servidor. Ventajas

Configuracin soportada por herramientas GUI 4GL. Adecuada para las aplicaciones de apoyo al usuario final. Apoya acceso a datos almacenados en ambientes heterogneos. Ubicacin de los datos es transparente para la aplicacin.

Desventajas

No maneja aplicaciones grandes eficientemente. El acceso a la base de datos distribuida es dependiente del proveedor del software administrador de bases de datos.

Definicin de middleware "Es un termino que abarca a todo el software distribuido necesario para el soporte de interacciones entre Clientes y Servidores". Es el enlace que permite que un cliente obtenga un servicio de un servidor. Este se inicia en el modulo de API de la parte del cliente que se emplea para invocar un servicio real; esto pertenece a los dominios del servidor. Tampoco a la interfaz del usuario ni la a la lgica de la aplicacin en los dominios del cliente. Tipos de Middleware Existen dos tipos de middleware:

1. Este tipo permite la impresin de documentos remotos, manejos de transacciones, autenticacin de usuarios, etc. 2. Middleware general 3. Middleware de servicios especficos Generalmente trabajan orientados a mensajes. Trabaja uno sola transaccin a la vez. Funciones de un programa servidor 1. 2. 3. 4. 5. 6.

Espera las solicitudes de los clientes. Ejecuta muchas solicitudes al mismo tiempo. Atiende primero a los clientes VIP. Emprende y opera actividades de tareas en segundo plano. Se mantiene activa en forma permanente. BIBLIOGRAFA

www.elrincondelvago.com Taller de Sistemas de Informacin 1 InCo Facultad de Ingeniera 2005 www.ciber-tec.com/ads.htm www.virtual.unal.edu.co/cursos/sedes/manizales/4060029/lecciones/cap6-3.html www.pcm.gob.pe/portal_ongei/publicaciones/cultura/Lib5038

Cliente-servidor
Saltar a: navegacin, bsqueda

La arquitectura cliente-servidor es un modelo de aplicacin distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, que le da respuesta. Esta idea tambin se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es ms ventajosa en un sistema operativo multiusuario distribuido a travs de una red de computadoras. En esta arquitectura la capacidad de proceso est repartida entre los clientes y los servidores, aunque son ms importantes las ventajas de tipo organizativo debidas a la centralizacin de la gestin de la informacin y la separacin de responsabilidades, lo que facilita y clarifica el diseo del sistema.

La separacin entre cliente y servidor es una separacin de tipo lgico, donde el servidor no se ejecuta necesariamente sobre una sola mquina ni es necesariamente un slo programa. Los tipos especficos de servidores incluyen los servidores web, los servidores de archivo, los servidores del correo, etc. Mientras que sus propsitos varan de unos servicios a otros, la arquitectura bsica seguir siendo la misma. Una disposicin muy comn son los sistemas multicapa en los que el servidor se descompone en diferentes programas que pueden ser ejecutados por diferentes computadoras aumentando as el grado de distribucin del sistema. La arquitectura cliente-servidor sustituye a la arquitectura monoltica en la que no hay distribucin, tanto a nivel fsico como a nivel lgico. La red cliente-servidor es aquella red de comunicaciones en la que todos los clientes estn conectados a un servidor, en el que se centralizan los diversos recursos y aplicaciones con que se cuenta; y que los pone a disposicin de los clientes cada vez que estos son solicitados. Esto significa que todas las gestiones que se realizan se concentran en el servidor, de manera que en l se disponen los requerimientos provenientes de los clientes que tienen prioridad, los archivos que son de uso pblico y los que son de uso restringido, los archivos que son de slo lectura y los que, por el contrario, pueden ser modificados, etc. Este tipo de red puede utilizarse conjuntamente en caso de que se este utilizando en una red mixta.

Contenido
[ocultar]

1 Caractersticas 2 Comparacin de la arquitectura C/S con otras arquitecturas de red o 2.1 Comparacin con las redes de pares o 2.2 Comparacin con la arquitectura Cliente-Cola-Cliente 3 Arquitecturas multi-capas 4 Ventajas 5 Desventajas 6 Direccin 7 Ejemplos 8 Cooperacin cliente-servidor o 8.1 Multiple Server 8.1.1 Cooperacin de procesos paralelos 8.1.2 Cooperacin de base de datos 9 Vase tambin

[editar] Caractersticas
En la arquitectura C/S el remitente de una solicitud es conocido como cliente. Sus caractersticas son:

Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la comunicacin (dispositivo maestro o amo). Espera y recibe las respuestas del servidor. Por lo general, puede conectarse a varios servidores a la vez. Normalmente interacta directamente con los usuarios finales mediante una interfaz grfica de usuario. Al contratar un servicio de redes , se tiene que tener en la velocidad de conexin que le otorga al cliente y el tipo de cable que utiliza , por ejemplo : cable de cobre ronda entre 1 ms y 50 ms.

Al receptor de la solicitud enviada por el cliente se conoce como servidor. Sus caractersticas son:

Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempean entonces un papel pasivo en la comunicacin (dispositivo esclavo). Tras la recepcin de una solicitud, la procesan y luego envan la respuesta al cliente. Por lo general, aceptan conexiones desde un gran nmero de clientes (en ciertos casos el nmero mximo de peticiones puede estar limitado). No es frecuente que interacten directamente con los usuarios finales.

[editar] Comparacin de la arquitectura C/S con otras arquitecturas de red


[editar] Comparacin con las redes de pares
Las redes de pares, tambin conocidas como redes par-a-par o peer-to-peer (abreviado con las siglas P2PM) son otro tipo de arquitectura de red.

[editar] Comparacin con la arquitectura Cliente-Cola-Cliente


Si bien la clsica arquitectura C/S requiere uno de los puntos terminales de comunicacin para actuar como un servidor, que puede ser algo ms difcil de aplicar, la arquitectura Cliente-Cola-Cliente habilita a todos los nodos para actuar como clientes simples, mientras que el servidor acta como una cola que va capturando las peticiones de los clientes (un proceso que debe pasar sus peticiones a otro, lo hace a travs de una cola, por ejemplo, una consulta a una base de datos, entonces, el segundo proceso conecta con la base de datos, elabora la peticin, la pasa a la base de datos, etc.). Esta arquitectura permite simplificar en gran medida la implementacin de software. La arquitectura P2P originalmente se bas en el concepto "Cliente-Cola-Cliente".

[editar] Arquitecturas multi-capas


La arquitectura cliente/servidor genrica tiene dos tipos de nodos en la red: clientes y servidores. Consecuentemente, estas arquitecturas genricas se refieren a veces como arquitecturas de dos niveles o dos capas. Algunas redes disponen de tres tipos de nodos:

Clientes que interactan con los usuarios finales. Servidores de aplicacin que procesan los datos para los clientes. Servidores de la base de datos que almacenan los datos para los servidores de aplicacin.

Esta configuracin se llama una arquitectura de tres-capas.

Ventajas de las arquitecturas n-capas: La ventaja fundamental de una arquitectura n-capas comparado con una arquitectura de dos niveles (o una tres-capas con una de dos niveles) es que separa hacia fuera el proceso, eso ocurre para mejorar el balance la carga en los diversos servidores; es ms escalable.

Desventajas de las arquitecturas de la n-capas:


Pone ms carga en la red, debido a una mayor cantidad de trfico de la red. Es mucho ms difcil programar y probar el software que en arquitectura de dos niveles porque tienen que comunicarse ms dispositivos para terminar la transaccin de un usuario.

[editar] Ventajas

Centralizacin del control: los accesos, recursos y la integridad de los datos son controlados por el servidor de forma que un programa cliente defectuoso o no autorizado no pueda daar el sistema. Esta centralizacin tambin facilita la tarea de poner al da datos u otros recursos (mejor que en las redes P2P).. Escalabilidad: se puede aumentar la capacidad de clientes y servidores por separado. Cualquier elemento puede ser aumentado (o mejorado) en cualquier momento, o se pueden aadir nuevos nodos a la red (clientes y/o servidores). Fcil mantenimiento: al estar distribuidas las funciones y responsabilidades entre varios ordenadores independientes, es posible reemplazar, reparar, actualizar, o incluso trasladar un servidor, mientras que sus clientes no se vern afectados por ese cambio (o se afectarn mnimamente). Esta independencia de los cambios tambin se conoce como encapsulacin. Existen tecnologas, suficientemente desarrolladas, diseadas para el paradigma de C/S que aseguran la seguridad en las transacciones, la amigabilidad de la interfaz, y la facilidad de empleo.

[editar] Desventajas

La congestin del trfico ha sido siempre un problema en el paradigma de C/S. Cuando una gran cantidad de clientes envan peticiones simultaneas al mismo servidor, puede ser que cause muchos problemas para ste (a mayor nmero de clientes, ms problemas para el servidor). Al contrario, en las redes P2P como cada nodo en la red hace tambin de servidor, cuanto ms nodos hay, mejor es el ancho de banda que se tiene. El paradigma de C/S clsico no tiene la robustez de una red P2P. Cuando un servidor est cado, las peticiones de los clientes no pueden ser satisfechas. En la mayor parte de redes P2P, los recursos estn generalmente distribuidos en varios nodos de la red. Aunque algunos salgan o abandonen la descarga; otros pueden todava acabar de descargar consiguiendo datos del resto de los nodos en la red. El software y el hardware de un servidor son generalmente muy determinantes. Un hardware regular de un ordenador personal puede no poder servir a cierta cantidad de clientes. Normalmente se necesita software y hardware especfico, sobre todo en el lado del servidor, para satisfacer el trabajo. Por supuesto, esto aumentar el coste. El cliente no dispone de los recursos que puedan existir en el servidor. Por ejemplo, si la aplicacin es una Web, no podemos escribir en el disco duro del cliente o imprimir directamente sobre las impresoras sin sacar antes la ventana previa de impresin de los navegadores.

[editar] Direccin
Los mtodos de direccin en ambientes del servidor de cliente se pueden describir como sigue:

Direccin del proceso de la mquina: la direccin se divide como proceso@mquina. Por lo tanto 56@453 indicara el proceso 56 en la computadora 453. Servidor de nombres: los servidores de nombres tienen un ndice de todos los nombres y direcciones de servidores en el dominio relevante. Localizacin de Paquetes: Los mensajes de difusin se envan a todas las computadoras en el sistema distribuido para determinar la direccin de la computadora de la destinacin. Comerciante: Un comerciante es un sistema que pone en un ndice todos los servicios disponibles en un sistema distribuido. Una computadora que requiere un servicio particular comprobar con el servicio que negocia para saber si existe la direccin de una computadora que proporciona tal servicio.

[editar] Ejemplos
La mayora de los servicios de Internet son tipo de cliente-servidor. La accin de visitar un sitio web requiere una arquitectura cliente-servidor, ya que el servidor web sirve las pginas web al navegador (al cliente). Al leer este artculo en Wikipedia , la computadora y el navegador web del usuario seran considerados un cliente; y las computadoras, las bases de datos, y los usos que componen Wikipedia seran considerados el servidor. Cuando el navegador web del usuario solicita un artculo particular de Wikipedia, el servidor de

Wikipedia recopila toda la informacin a mostrar en la base de datos de Wikipedia, la articula en una pgina web, y la enva de nuevo al navegador web del cliente. Otro ejemplo podra ser el funcionamiento de un juego online. Si existen dos servidores de juego, cuando un usuario lo descarga y lo instala en su computadora pasa a ser un cliente. Si tres personas juegan en un solo computador existiran dos servidores, un cliente y tres usuarios. Si cada usuario instala el juego en su propio ordenador existiran dos servidores, tres clientes y tres usuarios.

[editar] Cooperacin cliente-servidor


[editar] Multiple Server
Para que un proceso se realice de la mejor manera, es preferible utilizar terminales distintos realizando la misma tarea, a centralizar los recursos y que con ms hardware/software se realice la misma tarea. Con la ejecucin de mltiples servidores el procesamiento es ms rpido, el tiempo de respuesta es descentralizado y se incrementa la confiabilidad. [editar] Cooperacin de procesos paralelos El mismo proceso se ejecuta simultneamente (sistemas redundantes). [editar] Cooperacin de base de datos Si se requiere de cierta informacin ya existente, por qu crearla de nuevo, simplemente interacta y aprovecha la informacin ya creada.

[editar] Vase tambin


Las funciones que realiza un DBMS son muy importantes para mantener la integridad y la consistencia de la informacin en una base de datos (BD). La mayoria de las funciones son transparentes para los usurios, bien sean finales o administradores, es por ello que un DBMS provee de abstraccin hacia sus operadores, esto es que en algunos casos no estamos concientes de las funcionalidades que se realizan en segundo plano. Estas funciones incluyen:

La administracin de un diccionario de datos La administracin del almacenamiento de datos Transformacin y presentacin de los datos Administracin de la seguridad Control de acceso a usuarios mltiples Administracin de resplados y recuperacin

Administracin de la integridad de los datos (transacciones) Manejo del lenguaje de acceso a base de datos Interfaces de programacin de aplicaciones Interfaces de comunicacin con bases de datos

De forma global veamos la siguiente imagen

El sistema organizador de Base de Datos (DBMS)


El DBMS es un conjunto de programas que se encargan de manejar la creacin y todos los accesos a las bases de datos. Se compone de un lenguaje de definicin de datos (DDL: Data Definition Language), de un lenguaje de manipulacin de datos (DML: Data Manipulation Language) y de un lenguaje de consulta (SQL: Structured Query Language). El lenguaje de definicin de datos (DDL) es utilizado para describir todas las estructuras de informacin y los programas que se usan para construir, actualizar e introducir la informacin que contiene una base de datos. El lenguaje de manipulacin de datos (DML) es utilizado para escribir programas que crean, actualizan y extraen informacin de las bases de datos. El lenguaje de consulta (SQL) es empleado por el usuario para extraer informacin de la base de datos. El lenguaje de consulta permite al usuario hacer requisiciones de datos sin tener que escribir un programa, usando instrucciones como el SELECT, el PROJECT y el JOIN. La secuencia conceptual de operaciones que ocurren para acceder cierta informacin que contiene una base de datos es la siguiente: 1 El usuario solicita cierta informacin contenida en la base de datos. El DBMS intercepta este requerimiento y lo interpreta. El DBMS realiza las operaciones necesarias para acceder y/o actualizar la informacin solicitada.

1 - SISTEMAS DE ADMINISTRACIN DE BASES DE DATOS (DBMS)

Tutorial creado por Javier . 12 Enero 2007 Colaboracin en lnea Trabaje en equipo online. Pruebe hoy TeamViewer gratis! www.TeamViewer.com Anuncios Google
1 2 3 4 5 6 | siguiente >

"" Un sistema de administracin de bases de datos DBMS (Database Management System, por sus siglas en Ingls) es un sistema basado en computador (software) que maneja una base de datos, o una coleccin de bases de datos o archivos. La persona que administra un D0BMS es conocida como el DBA (Database Administrator, por sus siglas en ingles). USOS Y FUNCIONES DE UN DBMS Los sistemas de administracin de bases de datos son usados para:

Permitir a los usuarios acceder y manipular la base de datos proveyendo mtodos para construir sistemas de procesamiento de datos para aplicaciones que requieran acceso a los datos.

Proveer a los administradores las herramientas que les permitan ejecutar tareas de mantenimiento y administracin de los datos.

Algunas de las funciones de un DBMS son:

Definicin de la base de datos - como la informacin va a ser almacenada y organizada.

Creacin de la base de datos - almacenamiento de datos en una base de datos definida.

Recuperacin de los datos - consultas y reportes.

Actualizacin de los datos - cambiar los contenidos de la base de datos.

Programacin de aplicaciones de para el desarrollo de software.

Control de la integridad de la base de datos.

Monitoreo del comportamiento de la base de datos.

Potrebbero piacerti anche