Sunteți pe pagina 1din 18

Unidad I. Conceptos de base de datos.

1.1 Definicin de base de datos.


Un sistema gestor de bases de datos (SGBD) consiste en una coleccin de datos interrelacionados y un conjunto de programas para acceder a dichos datos. La coleccin de datos, normalmente denominada base de datos, contiene informacin relevante para una empresa. (Silberschatz, 2002).

Base de datos: Es una coleccin de archivos relacionados que almacenan tanto una representacin abstracta del dominio de un problema del mundo real cuyo manejo resulta de inters para una organizacin, como los datos correspondientes a la informacin acerca del mismo. Tanto la representacin como los datos estn sujetos a una serie de restricciones, las cuales forman parte del dominio del problema, y cuya descripcin esta tambin almacenada en esos archivos. (Luque, 2002)

1.2 Objetivos de las bases de datos.


El objetivo principal de un SGBD es proporcionar una forma de almacenar y recuperar la informacin de una base de datos de manera que sea tanto prctica como eficiente. (Silberschatz, 2002).

Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:

Redundancia e inconsistencia de datos.

Debido a que los archivos y programas de aplicacin son creados por diferentes programadores en un largo perodo de tiempo, los diversos archivos tienen probablemente diferentes formatos y los programas pueden estar escritos en diferentes lenguajes. Ms an, la misma informacin puede estar duplicada en diferentes lugares (archivos). Por ejemplo, la direccin y nmero de telfono de un cliente particular puede aparecer en un archivo que contenga registros de cuentas de ahorros y en un archivo que contenga registros de una cuenta corriente. Esta redundancia conduce a un almacenamiento y coste de acceso ms altos. Adems, puede conducir a inconsistencia de datos; es decir, las diversas copias de los mismos datos pueden no coincidir. Por ejemplo, un cambio en la direccin del cliente puede estar reflejado en los registros de las cuentas de ahorro pero no estarlo en el resto del sistema.

Dificultad para tener acceso a los datos.

Supngase que uno de los empleados del banco necesita averiguar los nombres de todos los clientes que viven en el distrito postal 28733 de la ciudad. El empleado pide al departamento de procesamiento de datos que genere dicha lista. Debido a que esta peticin no fue prevista cuando el sistema original fue diseado, no hay un programa de aplicacin a mano para satisfacerla. Hay, sin embargo, un programa de aplicacin que genera la lista de todos los clientes. El empleado del banco tiene ahora dos opciones: bien obtener la lista de todos los clientes y obtener la informacin que necesita manualmente, o bien pedir al departamento de procesamiento de datos que haga que un programador de sistemas escriba el programa de aplicacin necesario. Ambas alternativas son obviamente insatisfactorias. Supngase que se escribe tal programa y que, varios das ms tarde, el mismo empleado necesita arreglar esa lista para incluir slo

aquellos clientes que tienen una cuenta con saldo de 10.000 o ms. Como se puede esperar, un programa para generar tal lista no existe. De nuevo, el empleado tiene que elegir entre dos opciones, ninguna de las cuales es satisfactoria. La cuestin aqu es que el entorno de procesamiento de archivos convencional no permite que los datos necesarios sean obtenidos de una forma prctica y eficiente. Se deben desarrollar sistemas de recuperacin de datos ms interesantes para un uso general.

Aislamiento de los datos.

Puesto que los datos estn repartidos en varios archivos, y estos no pueden tener diferentes formatos, es difcil escribir nuevos programas de aplicacin para obtener los datos apropiados.

Anomalas del acceso concurrente.

Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta ms rpido, muchos sistemas permiten que mltiples usuarios actualicen los datos simultneamente. En un entorno as la interaccin de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir esta posibilidad debe mantenerse alguna forma de supervisin en el sistema.

Problemas de seguridad.

La informacin de toda empresa es importante, aunque unos datos lo son ms que otros, por tal motivo se debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna informacin, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado de seguridad que garantice la autentificacin y proteccin de los datos. En un banco por ejemplo, el personal de

nminas slo necesita ver la parte de la base de datos que tiene informacin acerca de los distintos empleados del banco y no a otro tipo de informacin.

Problemas de integridad.

Los valores de datos almacenados en la base de datos deben satisfacer cierto tipo de restricciones de consistencia. Estas restricciones se hacen cumplir en el sistema aadiendo cdigos apropiados en los diversos programas de aplicacin. (Silberschatz, 2002).

1.3 Usos y aplicaciones de las bases de datos.


Las bases de datos son ampliamente usadas. Las siguientes son algunas de sus aplicaciones ms representativas:

Banca. Para informacin de los clientes, cuentas, prstamos, y transacciones bancarias.

Lneas areas. Para reservas e informacin de planificacin. Las lneas areas fueron de los primeros en usar las bases de datos de forma distribuida geogrficamente (los terminales situados en todo el mundo accedan al sistema de bases de datos centralizado a travs de las lneas telefnicas y otras redes de datos).

Universidades. Para informacin de los estudiantes, matrculas de las asignaturas y cursos.

Transacciones de tarjetas de crdito. Para compras con tarjeta de crdito y generacin mensual de extractos.

Telecomunicaciones. Para guardar un registro de las llamadas realizadas, generacin mensual de facturas, manteniendo el saldo de las tarjetas telefnicas de prepago y para almacenar informacin sobre las redes de comunicaciones.

Finanzas. Para almacenar informacin sobre grandes empresas, ventas y compras de documentos formales financieros, como bolsa y bonos.

Ventas. Para informacin de clientes, productos y compras.

Produccin. Para la gestin de la cadena de produccin y para el seguimiento de la produccin de elementos en las factoras, inventarios de elementos en almacenes y pedidos de elementos.

Recursos humanos. Para informacin sobre los empleados, salarios, impuestos y beneficios, y para la generacin de las nminas. (Silberschatz, 2002).

1.4 Arquitectura de base de datos.


En 1975, el comit ANSI-SPARC propuso una arquitectura de tres niveles para los sistemas de bases de datos, que resulta muy til a la hora de conseguir las siguientes tres caractersticas:

La separacin entre los programas de aplicacin y los datos. El manejo de mltiples vistas por parte de los usuarios. El uso de un catlogo para almacenar el esquema de la base de datos.

El objetivo de la arquitectura de tres niveles es el de separar los programas de aplicacin de la base de datos fsica. En esta arquitectura, el esquema de una base de datos se define en tres niveles de abstraccin distintos externo, conceptual e interno. (C. J. Date, 2001)

1.4.1 Niveles de abstraccin de una base de datos.


Nivel fsico: El nivel ms bajo de abstraccin describe cmo se almacenan realmente los datos. En el nivel fsico se describen en detalle las estructuras de datos complejas de bajo nivel.

Nivel lgico: El siguiente nivel ms alto de abstraccin describe qu datos se almacenan en la base de datos y qu relaciones existen entre esos datos. La base de datos completa se describe as en trminos de un nmero pequeo de estructuras relativamente simples. Aunque la implementacin de estructuras simples en el nivel lgico puede involucrar estructuras complejas del nivel fsico, los usuarios del nivel lgico no necesitan preocuparse de esta complejidad. Los administradores de bases de datos, que deben decidir la informacin que se mantiene en la base de datos, usan el nivel lgico de abstraccin.

Nivel de vistas: El nivel ms alto de abstraccin describe slo parte de la base de datos completa. A pesar del uso de estructuras ms simples en el nivel lgico, queda algo de complejidad, debido a la variedad de informacin almacenada en una gran

base de datos. Muchos usuarios del sistema de base de datos no necesitan toda esta informacin. En su lugar, tales usuarios necesitan acceder slo a una parte de la base de datos. Para que su interaccin con el sistema se simplifique, se define la abstraccin del nivel de vistas. El sistema puede proporcionar muchas vistas para la misma base de datos. (Silberschatz, 2002).

Nivel de Vistas Vista 1 Vista 2 .... Vista n

Nivel Lgico

Nivel Fsico

Los tres niveles de abstraccin de datos. (Silberschatz, 2002).

1.4.2 Independencia lgica y fsica de los datos.


La arquitectura de tres niveles es til para explicar el concepto de independencia de datos que podemos definir como la capacidad para modificar el esquema en un nivel del sistema sin tener que modificar el esquema del nivel inmediato superior.

(http://www.masadelante.com/faqs/base-de-datos)

Se pueden definir dos tipos de independencia de datos:

Independencia lgica: Es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no debern verse afectados.

Independencia fsica: Es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos ficheros fsicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualizacin de datos. Dado que la independencia fsica se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de almacenamiento, es ms fcil de conseguir que la independencia lgica.
(http://www.masadelante.com/faqs/base-de-datos)

Por lo tanto, la arquitectura de tres niveles puede facilitar la obtencin de la verdadera independencia de datos, tanto fsica como lgica. Sin embargo, los dos niveles de correspondencia implican un gasto extra durante la ejecucin de una consulta o de un programa, lo cual reduce la eficiencia del SGBD. Es por esto que muy pocos SGBD han implementado esta arquitectura completa. (http://www.masadelante.com/faqs/base-de-datos)

1.5 Estructura general de un sistema de base de datos.

1.5.1 El gestor de base de datos.


Un Sistema Gestor de base de datos (SGBD) es un conjunto de programas que permiten crear y mantener una base de datos asegurando su integridad, confidencialidad y seguridad. (Luque 2002)

Por tanto 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.(Luque 2002)

1.5.2 Los usuarios de la base de datos.


Hay cuatro tipos de diferentes de usuarios de un sistema de base de datos, diferenciados por la forma en que ellos esperan interactuar con el sistema.

Programadores de Aplicaciones.- Son profesionales informticos que interactan con el sistema a travs de llamadas del Lenguaje de Manipulacin de Datos(LMD), que estn incluidas en un programa escrito en un lenguaje anfitrin (por ejemplo, Cobol, PL/I, Pascal, C ).Estos programas comnmente se llaman programas de aplicacin. Por ejemplo un sistema bancario, incluye programas que generan cheques de nominas, cargan cuentas, abonan cuestas o transfieren fondos entre cuentas.

Usuarios Sofisticados.- Interactan con el sistema sin programas escritos. En su lugar, ellos forman sus consultas en un lenguaje de consulta de base de datos. Cada una de estas consultas se enva al procesador de consultas, cuya funcin es

transformar instrucciones LMD a instrucciones que el gestor de almacenamiento entienda. Los analistas que envan las consultas para explorar los datos en la base de datos entran en esta categora.

Usuarios Especializados.- Son usuarios que escriben aplicaciones de bases de datos especializadas que no son adecuadas en el marco de procesamiento de datos tradicional. Entre estas aplicaciones estn los sistemas de diseo asistido por computadora, sistemas de bases de conocimientos y expertos, sistema que almacenan los datos con los tipos de datos completos (por ejemplo, datos grficos y datos de audio. . Usuarios Normales o Finales.- Son usuarios que interactan con el sistema mediante la invocacin de alguno de los programas de aplicacin permanentes que se han escrito previamente. (Luque,2002)

1.5.3 El administrador de la base de datos (DBA).


La persona que tiene este control central sobre el sistema se llama Administrador de la base de datos (ABD). Las funciones del ABD son:

Definicin del Esquema.- El Administrador de la Base de Datos crea el esquema original de la base de datos escribiendo un conjunto de definiciones que el compilador del Lenguaje de definicin de datos (LDD) traduce a un conjunto de tablas que son almacenadas permanentemente en el diccionario de datos.

Estructura de Almacenamiento y Definicin del Mtodo de Acceso.- Los Administradores de la Base de Datos crean las estructuras de almacenamiento apropiadas y los mtodos de acceso escribiendo un conjunto de definiciones, que son traducidas por el compilador del Lenguaje de Definicin y Almacenamiento de datos.

Esquema y Modificacin de la Organizacin Fsica.- Los programadores llevan a cabo las modificaciones sobre el esquema de base de datos o la descripcin de la organizacin de almacenamiento fsico escribiendo un conjunto de definiciones que son usadas por el compilador de LDD o por el compilador del lenguaje de definicin y almacenamiento de datos para generar las modificaciones en las tablas

correspondientes del sistema interno.

Concesin de la Autorizacin para el acceso a los datos.- La concesin de diferentes tipos de autorizacin permite al administrador de la base de datos determinar que parte de la base de datos pueden acceder los diferentes usuarios. La informacin de autorizacin se mantiene en una estructura del sistema especial que el sistema de la base de datos consulta cuando se intenta el acceso a los datos en el sistema.

Especificacin de las Ligaduras de Integridad.- Los valores de los datos almacenados en la base de datos deben satisfacer ciertas ligaduras de integridad. Por ejemplo, quizs l numero de horas que un empleado puede trabajar en una semana no debe exceder de un limite especificado (por ejemplo, 80 horas). Tales ligaduras deben ser especificadas explcitamente por el Administrador de la Base de Datos. Las

ligaduras de integridad se mantienen en una estructura del sistema especial que el sistema de base de datos consulta cuando tiene lugar una actualizacin en el sistema.(Luque, 2002)

1.5.4 El sistema de comunicacin entre los distintos componentes (APIs, middlewares).


El trmino middlewares abarca a todo el software distribuido (enlace) necesario para el soporte de interacciones entre Clientes y Servidores.

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.

El termino APIs representa un interfaz de comunicacin entre componentes del software, se trata del conjunto de llamadas a bibliotecas que ofrecen acceso a ciertos servicios desde los procesos y representa un mtodo para conseguir la abstraccin en la programacin; generalmente entre niveles o capas inferiores y las superiores del software.
(http://www.monografias.com/trabajos24/arquitectura-cliente-servidor/arquitectura-cliente-servidor.shtml)

1.6 Arquitectura cliente/servidor. 1.6.1 Componentes de aplicaciones.


La mayora de usuarios de un sistema de bases de datos no estn situados actualmente junto al sistema de bases de datos, sino que se conectan a l a travs de una red.

Se puede diferenciar entonces entre las mquinas cliente, en donde trabajan los usuarios remotos de la base de datos, y las mquinas servidor, en las que se ejecuta el sistema de bases de datos.

Las aplicaciones de bases de datos se dividen usualmente en dos o tres partes.

Usuario

Cliente

Usuario

Aplicacin

Cliente de Aplicaciones

Red

Red

Sistema de bases de datos

Servidor

Servidor de aplicaciones

Sistema de base de datos

Arquitectura de dos capas

Arquitectura de tres capas

Arquitecturas de dos y tres capas. (Silberschatz, 2002).

1.6.2 Funciones de componentes.


Arquitectura de dos capas: La aplicacin se divide en un componente que reside en la mquina cliente, que llama a la funcionalidad del sistema de bases de datos en la mquina servidor mediante instrucciones del lenguaje de consultas. Los estndares de

interfaces de programas de aplicacin como ODBC y JDBC se usan para la interaccin entre el cliente y el servidor.

Arquitectura de tres capas:, La mquina cliente acta simplemente como frontal y no contiene ninguna llamada directa a la base de datos. En su lugar, el cliente se comunica con un servidor de aplicaciones, usualmente mediante una interfaz de formularios. El servidor de aplicaciones, a su vez, se comunica con el sistema de bases de datos para acceder a los datos.

La lgica de negocio de la aplicacin, que establece las acciones a realizar bajo determinadas condiciones, se incorpora en el servidor de aplicaciones, en lugar de ser distribuida a mltiples clientes. Las aplicaciones de tres capas son ms apropiadas para grandes aplicaciones, y para las aplicaciones que se ejecutan en World Wide Web. (Silberschatz, 2002).

1.7 Componentes de un gestor de base de datos. 1.7.1 Estructura general.


Un gestor de almacenamiento es un mdulo de programa que proporciona la interfaz entre los datos de bajo nivel en la base de datos y los programas de aplicacin y consultas emitidas al sistema. El gestor de almacenamiento es responsable de la interaccin con el gestor de archivos. Los datos en bruto se almacenan en disco usando un sistema de archivos, que est disponible habitualmente en un sistema operativo convencional. El gestor de almacenamiento traduce las diferentes instrucciones LMD a rdenes de un sistema de archivos de bajo nivel. As, el gestor de almacenamiento es

responsable del almacenamiento, recuperacin y actualizacin de los datos en la base de datos. (Silberschatz, 2002).

Estructura General del Sistema

1.7.2 Funciones.
Los componentes del gestor de almacenamiento incluyen:

Gestor de autorizacin e integridad, que comprueba que se satisfagan las restricciones de integridad y la autorizacin de los usuarios para acceder los datos.

Gestor de transacciones, que asegura que la base de datos quede en un estado consistente (correcto)a pesar de los fallos del sistema, y que las ejecuciones de transacciones concurrentes ocurran si conflictos.

Gestor de archivos, que gestiona la reserva de espacio de almacenamiento de disco y las estructuras de datos usadas para representar la informacin almacenada en disco.

Gestor de memoria intermedia, que es responsable de traer los datos del disco de almacenamiento a memoria principal y decidir qu datos tratar en memoria cach. El gestor de memoria intermedia es una parte crtica del sistema de bases de datos, ya que permite que la base de datos maneje tamaos de datos que son mucho mayores que el tamao de la memoria principal.

El gestor de almacenamiento implementa varias estructuras de datos como parte de la implementacin fsica del sistema:

Archivos de datos, que almacenan la base de datos en s.

Diccionario de datos, que almacena metadatos acerca de la estructura de la base de datos, en particular, el esquema de la base de datos.

ndices, que proporcionan acceso rpido a elementos de datos que tienen valores particulares.

Los componentes del procesador de consultas incluyen:

Intrprete del LDD, que interpreta las instrucciones del LDD y registra las definiciones en el diccionario de datos.

Compilador del LMD, que traduce las instrucciones del LMD en un lenguaje de consultas a un plan de evaluacin que consiste en instrucciones de bajo nivel que entiende el motor de evaluacin de consultas. Una consulta se puede traducir habitualmente en varios planes de ejecucin alternativos que proporcionan el mismo resultado. El compilador del LMD tambin realiza optimizacin de consultas, es decir, elige el plan de evaluacin de menor coste de entre todas las alternativas.

Motor de evaluacin de consultas, que ejecuta las instrucciones de bajo nivel generadas por el compilador del LMD. (Silberschatz, 2002).

Bibliografa
Luque Irene et al. 2002. Base de Datos Desde Chen hasta Codd con ORACLE. ed Alfaomega Ra-Ma. pp 422. Mxico. C. J. DATE. 2001. Introduccin a los SISTEMAS DE BASES DE DATOS. ed PEARSON EDUCACION. pp 960. Mxico. Silberschatz Abraham et al. 2002. FUNDAMENTOS DE BASES DE DATOS. ed McGrawHill. pp 787. Madrid. http://www.masadelante.com/faqs/base-de-datos

http://www.basededatos1.galeon.com/cap1.htm

http://sistemas.itlp.edu.mx/tutoriales/basedat1/tema1_12.htm

http://www.monografias.com/trabajos24/arquitectura-cliente-servidor/arquitectura-clienteservidor.shtml

S-ar putea să vă placă și