Você está na página 1de 16

SISTEMAS GESTORES DE BASES DE DATOS

CONCEPTO Y CARACTERISTICAS ESPECIALES Un sistema gestor de base de datos se define como el conjunto de programas que administran y gestionan la informacin contenida en una base de datos. Ayuda a realizar las siguientes acciones:

Definicin de los datos Mantenimiento de la integridad de los datos dentro de la base de datos Control de la seguridad y privacidad de los datos Manipulacin de los datos

Objetivos
Existen distintos objetivos que deben cumplir los SGBD:

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. Consistencia. En aquellos casos en los que no se ha logrado eliminar la redundancia, 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. Por otra parte, la base de datos representa una realidad determinada que tiene determinadas condiciones, por ejemplo que los menores de edad no pueden tener licencia de conducir. El sistema no debera aceptar datos de un conductor menor de edad. En los SGBD existen herramientas que facilitan la programacin de este tipo de condiciones. 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 segura de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categoras de permisos. Manejo de transacciones. Una transaccin es un programa que se ejecuta como una sola operacin. Esto quiere decir que luego de una ejecucin en la que se produce una falla es el mismo que se obtendra si el programa no se hubiera ejecutado. Los SGBD proveen mecanismos para programar las modificaciones de los datos de una forma mucho ms simple que si no se dispusiera de ellos.

Tiempo de respuesta. Lgicamente, es deseable minimizar el tiempo que el SGBD tarda en darnos la informacin solicitada y en almacenar los cambios realizados.

Ventajas

Proveen facilidades para la manipulacin de grandes volmenes de datos (ver objetivos). Entre stas: o Simplifican la programacin de equipos de consistencia.
o

Manejando las polticas de respaldo adecuadas, garantizan que los cambios de la base sern siempre consistentes sin importar si hay errores correctamente, etc. Organizan los datos con un impacto mnimo en el cdigo de los programas. Bajan drsticamente los tiempos de desarrollo y aumentan la calidad del sistema desarrollado si son bien explotados por los desarrolladores.

Usualmente, proveen interfaces y lenguajes de consulta que simplifican la recuperacin de los datos.

Inconvenientes
1. Tpicamente, es necesario disponer de una o ms personas que administren de la base de datos, en la misma forma en que suele ser necesario en instalaciones de cierto porte disponer de una o ms personas que administren los sistemas operativos. Esto puede llegar a incrementar los costos de operacin en una empresa. Sin embargo hay que balancear este aspecto con la calidad y confiabilidad del sistema que se obtiene. 2. Si se tienen muy pocos datos que son usados por un nico usuario por vez y no hay que realizar consultas complejas sobre los datos, entonces es posible que sea mejor usar una planilla de clculo. 3. Complejidad: los software muy complejos y las personas que vayan a usarlo deben tener conocimiento de las funcionalidades del mismo para poder aprovecharlo al mximo. 4. Tamao: la complejidad y la gran cantidad de funciones que tienen hacen que sea un software de gran tamao, que requiere de gran cantidad de memoria para poder correr. 5. Coste del hardware adicional: los requisitos de hardware para correr un SGBD por lo general son relativamente altos, por lo que estos equipos pueden llegar a costar gran cantidad de dinero.

COMPOSICION DE UN SGBD 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.

MODELOS DE BASES DE DATOS MS CONOCIDOS Y UTILIZADOS


Modelo de datos jerrquico Este modelo utiliza rboles para la representacin lgica de los datos. Este rbol esta compuesto de unos elementos llamados nodos. El nivel ms alto del rbol se denomina raz. Cada nodo representa un registro con sus correspondientes campos. La representacin grfica de este modelo se realiza mediante la creacin de un rbol invertido, los diferentes niveles quedan unidos mediante relaciones.

En este modelo solo se pueden representar relaciones 1:M, por lo que presenta varios inconvenientes: No se admiten relaciones N:M Un segmento hijo no puede tener ms de un padre. No se permiten ms de una relacin entre dos segmentos. Para acceder a cualquier segmento es necesario comenzar por el segmento raz El rbol se debe de recorrer en el orden designado.

Modelo de datos en red En este modelo las entidades se representan como nodos y sus relaciones son las lneas que los unen. En esta estructura cualquier componente puede relacionarse con cualquier otro.

A diferencia del modelo jerrquico, en este modelo, un hijo puede tener varios padres. Los conceptos bsicos en el modelo en red son: El tipo de registro, que representa un nodo. Elemento, que es un campo de datos.

Agregado de datos, que define un conjunto de datos con nombre.

Este modelo de datos permite representar relaciones N:M Modelo de datos relacional Este modelo es el ms utilizado actualmente ya que utiliza tablas bidimensionales para la representacin lgica de los datos y sus relaciones. Algunas de sus principales caracteristicas son: Puede ser entendido y usado por cualquier usuario. Permite ampliar el esquema conceptual sin modificar las aplicaciones de gestin.

Los usuarios no necesitan saber donde se encuentran los datos fsicamente.

El elemento principal de este modelo es la relacin que se representa mediante una tabla.

CLASIFICACION
Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se este manejando, o la utilidad de la misma:

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, 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 una tienda de abarrotes, una farmacia, un videoclub.

Segn el contenido
[editar]Bases de datos bibliogrficas Solo 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. [editar]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. [editar]Directorios Un ejemplo son las guas telefnicas en formato electrnico. [editar]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 biomolculas Bases de datos clnicas. Bases de datos bibliogrficas (biolgicas, qumicas, mdicas y de otros campos): PubChem, Medline, EBSCOhost. [editar]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:

[editar]Bases

de datos jerrquicas

Artculo principal: Base de datos jerrquica

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. [editar]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. [editar]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. [editar]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. [editar]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. [editar]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. [editar]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. [editar]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. [editar]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, etctera

Productos SGBD disponibles en el mercado


SGBD libres

MySQL Licencia Dual, depende el uso (no se sabe hasta cuando, ya que la compr Oracle). Sin embargo, existen 2 versiones: una gratuita que sera equivalente a la edicin "express" SQL server de Microsoft Windows y otra ms completa de pago, ese pago se hara en la licencia de ella ya que permitira usarse en otras distribuciones sin usar la licencia GNU.

PostgreSQL (http://www.postgresql.org Postgresql) Licencia BSD

Firebird basada en la versin 6 de InterBase, Initial Developer's PUBLIC LICENSE Version 1.0. SQLite (http://www.sqlite.org SQLite) Licencia Dominio Pblico DB2 Express-C (http://www.ibm.com/software/data/db2/express/) Apache Derby (http://db.apache.org/derby/)

SGBD no libres

Advantage Database dBase FileMaker Fox Pro IBM DB2 Universal Database (DB2 UDB) IBM Informix Interbase de CodeGear, filial de Borland MAGIC Microsoft Access Microsoft SQL Server NexusDB Open Access Oracle Paradox PervasiveSQL Progress (DBMS) Sybase ASE Sybase ASA Sybase IQ WindowBase

IBM IMS Base de Datos Jerrquica CA-IDMS

SGBD no libres y gratuitos



Microsoft SQL Server Compact Edition Basica Sybase ASE Express Edition para Linux (edicin gratuita para Linux) Oracle Express Edition 10

Introduccin
Una base de datos es un conjunto de datos relacionados entre si. Por datos entendemos hechos conocidos que pueden registrarse y que tienen un significado implcito. Por ejemplo, un nmero de telfono, un nmero de documento, un nombre, etc. Una base de datos tiene las siguientes propiedades implcitas:

Una base de datos representa algn aspecto del mundo real, en ocasiones llamada minimundo. Las modificaciones del minimundo se reflejan en la base de datos. Una base de datos es un conjunto de datos lgicamente coherente, con cierto significado inherente. Una coleccin aleatoria de datos no puede considerarse propiamene una base de datos. Toda base de datos se disea, construye y prueba con datos para un propsito especfico. Est dirigida a un grupo de usuarios y tiene ciertas aplicaciones preconcebidas que interesan a dichos usuarios.

Tomemos el conjunto de toda la informacin que es relevante a la operacin de una organizacin: para un banco, ser informacin relativa a cuentas, clientes, empleados, equipos, etc. Toda esa informacin, apropiadamente organizada y codificada se colocar en la base de datos de la organizacin. Ningn programa de aplicacin tendr acceso directo a los archivos que componen la base de datos, sino que interpondremos entre estos archivos y los programas de aplicacin un nuevo nivel de software, el Sistema de Gestin de Base de Datos (SGBD). El SGBD provee acceso a la informacin a un alto nivel de abstraccin: en lugar de manipular archivos, registros, ndices, cilindros, el programa de aplicacin se maneja enteramente en trminos de clientes, cuentas, saldos, etc., que son traducidos por el SGBD a su mplementacin fsica. Un sistema de gestin de base de datos es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por lo tanto, un SGBD es un software de propsito general que facilita el proceso de definir, construir y manipular bases de datos para diversas aplicaciones.

Definir la base de datos consiste en especificar los tipos de datos, las estructuras y las restricciones de los datos que se almacenarn en ella. El proceso de construir una base de datos consta de la carga de los datos mismos en algn medio de almacenamiento controlado por un SGBD. En la manipulacin de una base de datos intervienen funciones como consultar la base de datos para obtener datos especficos, actualizar la base de datos para reflejar cambios en el minimundo y generar informes a partir de los datos.

Caractersticas del SGBD


Ahora analizaremos qu caractersticas son deseables en los SBGD y qu capacidades deben ofrecer. Control de redundancia En la creacin tradicional de programas de archivos, cada grupo de usuarios mantiene sus propios archivos para manejar sus aplicaciones de procesamiento de datos. Supongamos la situacin para una base de datos de un supermercado. Los grupos involucrados seran, entre otros, el de finanzas y el de reposicin. Con el enfoque tradicional, cada sector mantendra archivos independientes para los proveedores, cada uno con un objetivo distinto. Buena parte de los datos se almacenaran dos veces. Generalmente, esta redundancia de datos provoca varios problemas:

Es necesario realizar la misma actualizacin -introducir un nuevo proveedor- varias veces: una vez en cada archivo que contenga datos de proveedores. Esto implica duplicar el trabajo Se desperdiciar espacio de almacenamiento al guardar los mismos datos en varios lugares Es posible que los archivos que representan los mismos datos se tornen inconsistentes

Con el enfoque de bases de datos, las vistas de los diferentes grupos de usuarios se integran durante el el diseo de la base de datos. Para conservar la consistencia, debe crearse un diseo que almacene cada dato lgico -como la direccin del proveedor- en un solo lugar de la base de datos. Ello evita la inconsistencia y ahorra espacio de almacenamiento. Restriccin de los accesos no autorizados Cuando muchos usuarios comparten una misma base de datos, es probable que no todos tengan la autorizacin para tener acceso a toda la informacin que contiene. El SGBD debe contar con un subsistema de seguridad y autorizacin que permita al DBA crear cuentas y especificar restricciones para ellas. Cumplimiento de las restricciones de integridad La mayor parte de las aplicaciones de base de datos tienen ciertas restricciones de integridad que deben cumplir los datos. El SGBD debe ofrecer recursos para definir tales restricciones y hacer que se cumplan. Por ejemplo, en la figura A, podemos especificar que el valor del elemento Ciclo dentro de cada registro de la tabla ESTUDIANTE debe ser un entero entre 1 y 5.

ESTUDIANTE Nombre Surez lvarez

Matrcula 17 8

Ciclo 1 2

Carrera 501 502

figura A: tabla ESTUDIANTE Otro tipo de restriccin especifica que los valores de los elementos de informacin sean nicos; por ejemplo, "cada registro de ESTUDIANTE debe tener un valor nico de Matrcula". Estas restricciones se derivan de la semntica (o significado) de los datos y del minimundo que representa. Es responsabilidad de los diseadores de la base de datos identificar las restricciones de integridad durante el diseo. Algunas restricciones se pueden especificar en el SGBD, el cual har automticamente que se cumplan; otras pueden requerir verificacin mediante programas de actualizacin o en el momento en el que se introducen los datos. Respaldo y recuperacin Todo SGBD debe contar con recursos para recuperarse de fallos de hardware o de software. Para ello est el subsistema de respaldo y recuperacin del SGBD. Por ejemplo, si el sistema falla mientras se est ejecutando un complejo programa de actualizacin, el subsistema de recuperacin se encargar de asegurarse de que la base de datos se restaure al estado en el que estaba antes de que comenzara la ejecucin del programa.

Funciones de un SGBD

Las funciones provistas por un SGBD pueden agruparse en tres clases:

Consulta y actualizacin de datos Mantenimiento de esquemas Manejo de transacciones

Consulta y Actualizacin sta es la clase ms bsica de funciones y la nica que es visible "desde afuera". Consiste en un conjunto de herramientas que permite a los distintos tipos de usuarios del SGBD extraer, manipular y modifica la informacin almacenada en la base de datos. Algunos sistemas proveen una nica interfaz, llamada generalmente lenguaje de consulta, para ser usada por todos los tipos de usuario. Por ejemplo, el lenguaje SQL permite ejecutar consultas y actualizaciones en una notacin vagamente similar al lenguaje natural. La expresin:

select matricula, nombre from alumnos where carrera = "Ingeniera" and edad < 21
produce como resultado una tabla con los nmeros de matrcula y los nombres de todos los alumnos menores de edad de la carrera de Ingeniera. Mantenimiento de esquemas El esquema de la base de datos es la descripcin de la estructura de la informacin almacenada en ella. Por ejemplo, para un sistema basado en tablas, el esquema puede consistir en una lista de tablas en uso, los campos que contienen, el tipo de datos de cada campo, descripciones en lenguaje natural del propsito de cada tabla y cada campo, y restricciones sobre los valores admisibles en cada campo. As como los usuarios necesitan acceder, agregar y modificar datos, tambin necesitan acceder, agregar y modificar el esquema de datos. Por ejemplo, un usuario que se acerca por primera vez a una base de datos querr saber antes que nada qu informacin contiene sta, un programador puede escribir programas que definan y creen nuevos tipos de entidades, o eliminen algunos preexistentes; el DBA necesita controlar qu usuarios tienen accesos a qu informacin, formulando reglas de seguridad que se hacen parte del esquema. Manejo de Transacciones Una de las reas principales de aplicacin de los sgbd's es lo que se llama procesamiento de transacciones. Una transaccin es un programa de aplicacin, generalmente de duracin breve, que accede y actualiza una parte tambin generalmente pequea de la base de datos. Tpicos ejemplos son un depsito o extraccin de una cuenta bancaria, o una reservacin en un vuelo, o una verificacin de una tarjeta de crdito. El menejo de transacciones consiste en controlar mltiples transacciones ejecutando el paralelo sobre una misma base de datos corriendo en un sistema que puede fallar. Los objetivos del gestor de transacciones del sgbd son: evitar que las transacciones interfieran unas con otras al ejecutar en paralelo, y garantizar que la base de datos no sea daada en forma irreparable por cadas, ya sea del sistema en s o de alguna de las transacciones. El primero de los objetivos da lugar a lo que se llama control de paralelismo; el segundo, a tcnicas de recuperacin.

Tipos de Usuarios
Muchas personas participan en el diseo, uso y mantenimiento de una base de datos grande. Aqu las identificaremos.

Administradores: Si consideramos a la base de datos y al SGBD como recursos del sistema de base de datos, debemos considerar a una persona que administre dichos recursos. El Administrador de la base de datos (DBA, en ingls) es quin se encarga de autorizar el acceso a la base de datos, de coordinar y vigilar su empleo, y de adquirir los recursos necesarios de software y hardware. El DBA es la persona responsable cuando surgen problemas como violaciones a la seguridad o una respuesta lenta del sistema.

Diseadores de bases de datos: se encargan de identificar los datos que se almacenarn en la base de datos y de elegir las estructuras apropiadas para representar y almacenar dichos datos. Usuarios finales: son las personas que necesitan tener acceso a la base de datos para consultarla, actualizarla y generar informes; la base de datos existe primordialmente para que ellos la usen. Analistas y Programadores de Aplicaciones: los analistas determinan los requerimientos de los usuarios finales y desarrollan especificaciones para transacciones programadas que satisfagan dichos requerimientos. Los programadores implementan estas especificaciones en forma de programas y luego prueban, depuran, documentan y mantienen esas transacciones programadas.

Arquitectura del SGBD e independencia con respecto a los datos


Hay tres caractersticas importantes inherentes al enfoque de las bases de datos, que son la separacin de los programas y los datos, manejo de mltiples vistas de usuario y el empleo de un catlogo para almacenar la descripcin (esquema) de los datos. Aqu especificaremos una arquitectura para los sistemas de bases de datos, denominada arquitectura de tres esquemas, propuesta como ayuda para contar con estas caractersticas. La arquitectura de tres capas El objetivo de la arquitectura de tres esquemas consiste en formar una separacin entre las aplicaciones del usuario y la base de datos fsica. En esta arquitectura, los esquemas se pueden definir en los tres niveles siguientes:

El nivel interno tiene un esquema interno, que describe la estructura fsica de almacenamiento de la base de datos. El esquema interno emplea un modelo fsico de los datos y describe todos los detalles para su almacenamiento, as como los caminos de acceso para la base de datos El nivel conceptual tiene un esquema conceptual, que describe la estructura de toda la base de datos para una comunidad de usuarios. El esquema conceptual oculta los detalles de las estructuras fsicas de almacenamiento y se concentra en describir entidades, tipos de datos, vnculos, operaciones de los usuarios y restricciones. En este nivel podemos usar un modelo de datos de alto nivel o uno de implementacin El nivel externo o de vistas incluye varios esquemas externos o vistas de usurio. Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios determinado, y oculta a ese grupo el resto de la base de datos. En este nivel podemos usar un modelo de datos de alto nivel o uno de implementacin

Los tres esquemas no son ms que descripciones de los datos; los nicos datos que existen realmente estn en el nivel fsico. En un SGBD basado en la arquitectura de tres esquemas, cada grupo de usuarios hace referencia exclusivamente a su propio esquema externo; por tanto, el SGBD debe transformar una solicitud expresada en trminos del esquema conceptual, y luego a una solicitud en el esquema interno que se procesar sobre la base de datos almacenada. Si la solicitud es una obtencin de datos, ser preciso modificar el formato de la informacin extrada de la base de datos almacenada para que coincida con la vista externa del usuario. El proceso de transformar solicitudes y resultados de un nivel a otro se denomina correspondencia o transformacin (mapping). Independencia con respecto a los datos La arquitectura de tres esquemas puede servir para explicar el concepto de independencia con respecto a los datos, que podemos definir como la capacidad para modificar el esquema de un nivel del sistema de base de datos sin tener que modificar el esquema del nivel inmediato superior. Podemos definir dos tipos de independencia con respecto a los datos: 1. La independencia lgica con respecto a los datos es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Podemos modificar el esquema conceptual para ampliar la base de datos (aadiendo un nuevo tipo de registro o un elemento de informacin), o para reducir la base de datos (eliminando un tipo de registro o un elemento de informacin). En el segundo caso, la modificacin no deber afectar los esquemas externos que solo se refieran a los datos restantes. La independencia fsica con respecto a los datos es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Tal vez sea preciso modificar el esquema interno por la necesidad de reorganizar ciertos archivos fsicos -por ejemplo, al crear estructuras de datos adicionales- a fin de mejorar el rendimiento de las operaciones de obtencin o actualizacin. Si la base de datos an contiene los mismos datos, no deber ser necesario modificar el esquema conceptual.

2.

Lenguajes de Bases de Datos


El SGBD debe proveer a cada tipo de usuario de un lenguaje acorde a su categora Lenguaje de definicin de datos Una vez que se ha completado el diseo de una base de datos y se ha elegido un SGBD para su implementacin, el primer paso ser especificar los esquemas conceptual e interno de la base de datos y cualquier correspondencia entre ambos. En muchos SGBD en los que no se mantiene una separacin

estricta entre niveles, el DBA y los diseadores de la base de datos utilizan un mismo lenguaje, el lenguaje de definicin de datos (DDL, en ingls), para definir ambos esquemas. El SGBD contar con un compilador de DDL cuya funcin ser procesar enunciados escritos en el DDL para identificar las descripciones de los elementos de los esquemas y almacenar la descripcin del esquema en el catlogo del SGBD. Lenguaje de manipulacin de datos Una vez que se han compilado los esquemas de la base de datos y que en sta se han introducido datos, los usuarios requerirn algn mecanismo para manipularla. Las operaciones de manipulacin ms comunes son la obtencin, la insercin, la eliminacin y la modificacin de datos. El SGBD ofrece un lenguaje de manipulacin de datos (DML, en ingls) para estos fines

Você também pode gostar