Anda di halaman 1dari 9

1.4.

Arquitectura de un Sistema Gestor de


Bases de Datos

Existen tres caractersticas importantes, inherentes a los sistemas de bases de datos:
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.

En 1975, el comit ANSI-SPARC, propuso una arquitectura de tres niveles para los
Sistemas de Gestin de Base de Datos, cuyo objetivo principal era 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:
Nivel interno o fsico: describe la estructura fsica de la base de datos mediante un
esquema interno. Este esquema se especifica con un modelo fsico y describe los
detalles de cmo se almacenan fsicamente los datos: los archivos que contienen la
informacin, su organizacin, los mtodos de acceso a los registros, los tipos de
registros, la longitud, los campos que los componen, etc.
Nivel externo o de visin: es el ms cercano al usuario, se describen varios
esquemas externos o vistas de estos. 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 se puede utilizar un modelo conceptual o
un modelo lgico para especificar los esquemas.
Nivel conceptual: describe la estructura de toda la base de datos para un grupo
determinado de usuarios mediante un esquema conceptual. Este esquema describe
las entidades, atributos, relaciones, operaciones de los usuarios y restricciones,
ocultando los detalles de las estructuras fsicas de almacenamiento.

La mayora de los Sistemas de Gestin de Base de Datos no distinguen
correctamente entre estos tres niveles.En algunos casos, podemos ver como
algunos SGDB incluyen detalles del nivel fsico en el esquema conceptual.

Prcticamente todos los Sistemas de Gestin de Base de Datos, se manejan vistas
de usuario, ya que la mayora de las bases de datos estn pensadas para que otros
usuarios puedan aadir, modificar y utilizar los datos.


Hay que destacar que los tres esquemas son slo descripciones de los mismos datos
tratados, pero con distintos niveles de abstraccin. Los nicos datos que existen
realmente estn a nivel fsico, en un dispositivo de almacenamiento no voltil. En
un Sistema Gestor de Base de Datos basado en la arquitectura que estamos viendo,

cada grupo de usuarios hace referencia exclusivamente a su propio esquema
externo. El proceso de transformar peticiones y resultados de un nivel a otro se
denomina correspondencia o transformacin.








1.5 NIVELES DE ABSTRACCIN DE UNA BASE
DE DATOS

En esta arquitectura, el esquema de una base de datos se define en tres niveles de
abstraccin distintos:
1.- En el nivel interno.
Este esquema se especifica mediante un modelo fsico y describe todos los detalles para el
almacenamiento de la base de datos, as como los mtodos de acceso.
Es el nivel ms cercano al almacenamiento fsico de los datos. Permite escribirlos tal y
como estn almacenados en el ordenador. En este nivel se disean los archivos que
contienen la informacin, la ubicacin de los mismos y su organizacin, es decir se crean
los archivos de configuracin.
2.- En el nivel conceptual.
Este esquema oculta los detalles de las estructuras de almacenamiento y se concentra en
describir entidades, atributos, relaciones, operaciones de los usuarios y restricciones.
En este nivel se representan los datos que se van a utilizar sin tener en cuenta aspectos
como lo que representamos en el nivel interno.
3.- En el nivel externo.
Se describen varios esquemas externos o vistas de usuario. 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.
Es el ms cercano al usuario. En este nivel se describen los datos o parte de los datos que
ms interesan a los usuarios.
Una base de datos especifica tiene un nico nivel interno y un nico nivel conceptual pero
puede tener varios niveles externos.




I ndependencia lgica y fsica de los datos.
(ABRAMHAM, KORTH y SUDARSHAN) La capacidad para modificar una definicin
de esquema en un nivel sin que afecte a una definicin de esquema en el siguiente nivel
ms alto se llama Independencia de datos. Hay dos niveles de independencia de datos:
I ndependencia Fsica de datos: Es la capacidad para modificar el esquema fsico
sin provocar que los programas de aplicacin tengan que rescribirse. Las
modificaciones en el nivel fsico son ocasionalmente necesarias para mejorar el
funcionamiento.
I ndependencia Lgica de datos: Es la capacidad para modificar el esquema lgico
sin causar que los programas de aplicacin tengan que rescribirse. Las
modificaciones en el nivel lgico son necesarias siempre que la estructura lgica de
la base de datos se altere.
La independencia de datos lgica es ms fcil de proporcionar que la independencia de
datos fsica, ya que los programas de aplicacin son fuertemente dependientes de la
estructura lgica de los datos a los que ellos acceden.

(ELMASRI /NAVATHE) Podemos definir dos tipos de independencia con respecto a los
datos:
I ndependencia lgica con respecto a los datos: es la capacidad de modificar el
esquema conceptual sin tener que alterar los esquemas externos no los programas
de aplicacin. Podemos modificar el esquema conceptual para ampliar la base de
datos o para reducir la base de datos.
I ndependencia fsica con respecto a los datos: es la capacidad de modificar el
esquema interno por la necesidad de reorganizar ciertos archivos fsicos 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.
(Tutorial del tecnolgico de la paz ) Se refiere a la proteccin contra los
programas de aplicacin que puedan originar modificaciones cuando se altera la
organizacin fsica o lgica de la base de datos. Existen 2 niveles de independencia
de datos.
I ndependencia fsica de datos: Es la capacidad de modificar el esquema fsico sin
provocar que se vuelvan a escribir los programas de aplicacin.
I ndependencia lgica de datos: Capacidad de modificar el esquema conceptual sin
provocar que se vuelvan a escribir los programas de aplicacin.

1.5 Los usuarios de la base de datos.
Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el
sistema de base de datos desde que este se disea, elabora, termina y se usa.
(ABRAMHAM, KORTH y SUDARSHAN) Hay cuatro tipos 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 LMD, que estn incluidas en un programa escrito en
lenguaje anfitrin (Cobol, PL/I, Pascal ,C). Estn encargados de escribir programas de
aplicacin que utilicen bases de datos. Estos programas de aplicacin operan con los
datos de todas las maneras usuales: recuperan informacin, crean informacin nueva,
suprimen o cambian informacin existente, etc.
Los usuarios sofisticados: Interactan con el sistema sin programas escritos. En su
lugar, ellos forman sus consultas en lenguajes de consulta de bases de datos.
Usuarios especializados: Son usuarios sofisticados 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 conocimiento y experto, sistemas que almacenan los
datos con los tipos de datos completos y sistemas de modelado del entorno.
Usuarios normales: son usuarios no sofisticados que interactan con el sistema mediante
la invocacin de alguno de los programas de aplicacin permanentes que se ha escrito
previamente. Por ejemplo, un cajero bancario que necesita transferir 7.500 Ptas. De la
cuenta A la cuenta B invoca un programa llamado transferir. Este programa pide al cajero
el importe de dinero a transferir, la cuenta de la que el dinero va a ser transferido y la
cuenta a la que el dinero va a ser transferido.
(ELMASRI /NAVATHE) Muchas personas participan en el diseo uso y mantenimiento de
una base de datos grande con algunos cientos de usuarios. Estas personas se clasifican en
dos tipos Actores en el escenario y Trabajadores tras bambalinas.
Actores en el escenario: Personas cuyo trabajo requiere el empleo cotidiano de una base
de datos grande y son:
Administradores de bases de datos(DBA: database administrator): Administra 2
recursos el primero es la propia base de datos y el segundo es el SGBD y el software con el
relacionado. El DBA 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 encarga de identificar los datos que se almacenarn
en la base de datos y de elegir las estructuras apropiadas para representar y almacenar
dichos datos. Los diseadores tienen la responsabilidad de comunicarse con todos los
futuros usuarios de la base de datos, a fin de comprender sus necesidades, y de presentar
un diseo que satisfaga esos requerimientos. Casi siempre, los diseadores interactan con
cada uno de los grupos de usuarios potenciales y desarrollan una vista de la base de datos
que satisfaga los requerimientos de datos y de procesamiento para ese grupo.
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. Hay varias categoras de usuarios finales:
Usuarios finales espordicos: Tiene acceso de vez en cuando a la base de datos, pero es
posible que requieran informacin diferente en cada ocasin. Utilizan un lenguaje de
consulta de base de datos avanzado para especificar sus solicitudes, y suelen ser gerentes
de nivel medio o alto u otras personas que examinan de modo superficial y ocasional la
base de datos.
Usuarios finales simples o paramtricos: Constituyen una porcin apreciable de la
totalidad de los usuarios finales. La funcin de su trabajo gira en torno a consultas y
actualizaciones de la base de datos, utilizando tipos estndar de estas operaciones que se
han programado y probado con mucho cuidado. Todos estamos acostumbrados a tratar
con varios tipos de estos usuarios, los cajeros bancarios revisan saldos y asientan retiros y
depsitos, los encargados de reservaciones areas revisan las disponibilidades para una
solicitud presentada y hacer reservaciones.
Usuarios finales avanzados: Se cuentan ingenieros, cientficos, analistas de negocios y
otros, quienes conocen a cabalidad los recursos del SGBD para satisfacer sus complejos
requerimientos.
Usuarios autnomos: emplean bases de datos personalizadas gracias a los paquetes de
programas comerciales que cuentan con interfaces de fcil uso, basadas en mens o en
grficos. Un ejemplo es el usuario de un paquete fiscal que almacena diversos datos
financieros personales para fines fiscales.
Analistas de Sistemas y Programadores de aplicaciones: Determinan los requerimientos
de los usuarios finales, sobre todo de los simples y paramtricos, y desarrollan
especificaciones para transacciones programadas que satisfagan dichos requerimientos.
Los programadores de aplicaciones implementan esas especificaciones en forma de
programas, y luego prueban, depuran, documentan y mantienen estas transacciones
programadas. Para realizar dichas tareas, estos analistas y programadores deben de
conocer a la perfeccin toda la gama de capacidades del SGBD.
Trabajadores tras bambalinas: Laboran para mantener el entorno del sistema de base
de datos, pero que no tienen un claro inters en la base de datos en s misma.
Diseadores e implementadotes del SGBD: Se encargan de disear e implementar los
mdulos e interfaces de SGBD en forma de paquetes de software. Un SGBD es un sistema
complejo de software que consta de diversos componentes o mdulos, como los mdulos
para implementar el catlogo, los lenguajes de consulta, los procesadores de interfaz, el
acceso a los datos y la seguridad.
Creadores de herramientas: Las herramientas son paquetes de software que facilitan el
diseo y el empleo de los sistemas de base de datos, y que ayudan a elevar el rendimiento.
Estos paquetes son opcionales y a menudo se adquieren por separado. Incluyen paquetes
para disear bases de datos, vigilar el rendimiento, proporcionar Interfaces de lenguaje
natural o grficos, elaborar prototipos, realizar simulaciones y generar datos de prueba.
Los creadores de herramientas se ocupan de disear e implementar estos paquetes. En
muchos casos hay proveedores independientes de software, que crean y comercializan
estas herramientas.
Operadores y personal de mantenimiento: Son los miembros del personal de
administracin del sistema que tienen a su cargo el funcionamiento de mantenimiento
reales del entorno del hardware y software del sistema de base de datos.
1.7 LENGUAJE DE UN SISTEMA GESTOR DE
BASES DE DATOS

Una vez finalizado el diseo de una base de datos y escogido un SGBD para su
implementacin, el primer paso consiste en especificar el esquema conceptual y el esquema
interno de la base de datos, y la correspondencia entre ambos. En muchos SGBD no se
mantiene una separacin estricta de niveles, por lo que el administrador de la base de datos
y los diseadores utilizan el mismo lenguaje para definir ambos esquemas, es el lenguaje de
definicin de datos (LDD). El SGBD posee un compilador de LDD cuya funcin consiste
en procesar las sentencias del lenguaje para identificar las descripciones de los distintos
elementos de los esquemas y almacenar la descripcin del esquema en el catlogo o
diccionario de datos. Se dice que el diccionario contiene metadatos: describe los objetos de
la base de datos.
Cuando en un SGBD hay una clara separacin entre los niveles conceptual e interno, el
LDD slo sirve para especificar el esquema conceptual. Para especificar el esquema interno
se utiliza un lenguaje de definicin de almacenamiento (LDA).


Las correspondencias entre ambos esquemas se pueden especificar en cualquiera de los dos
lenguajes. Para tener una verdadera arquitectura de tres niveles sera necesario disponer de
un tercer lenguaje, el lenguaje de definicin de vistas (LDV), que se utilizara para
especificar las vistas de los usuarios y su correspondencia con el esquema conceptual.

Lenguaje de manejo de datos


Una vez creados los esquemas de la base de datos, los usuarios necesitan un lenguaje que
les permita manipular los datos de la base de datos: realizar consultas, inserciones,
eliminaciones y modificaciones. Este lenguaje es el que se denomina lenguaje de manejo de
datos (LMD).

Hay dos tipos de LMD: los procedurales y los no procedurales. Con un LMD procedural el
usuario (normalmente ser un programador) especifica qu datos se necesitan y cmo hay
que obtenerlos. Esto quiere decir que el usuario debe especificar todas las operaciones de
acceso a datos llamando a los procedimientos necesarios para obtener la informacin
requerida. Estos lenguajes acceden a un registro, lo procesan y basndose en los resultados
obtenidos, acceden a otro registro, que tambin deben procesar. As se va accediendo a
registros y se van procesando hasta que se obtienen los datos deseados. Las sentencias de
un LMD procedural deben estar embebidas en un lenguaje de alto nivel, ya que se necesitan
sus estructuras (bucles, condicionales, etc.) para obtener y procesar cada registro individual.
A este lenguaje se le denomina lenguaje anfitrin. Las bases de datos jerrquicas y de red
utilizan LMD procedurales.

Un LMD no procedural se puede utilizar de manera independiente para especificar
operaciones complejas sobre la base de datos de forma concisa. En muchos SGBD se
pueden introducir interactivamente instrucciones del LMD desde un terminal o bien
embeberlas en un lenguaje de programacin de alto nivel. Los LMD no procedurales
permiten especificar los datos a obtener en una consulta o los datos que se deben actualizar,
mediante una sola y sencilla sentencia. El usuario o programador especifica qu datos
quiere obtener sin decir cmo se debe acceder a ellos. El SGBD traduce las sentencias del
LMD en uno o varios procedimientos que manipulan los conjuntos de registros necesarios.
Esto libera al usuario de tener que conocer cul es la estructura fsica de los datos y qu
algoritmos se deben utilizar para acceder a ellos. A los LMD no procedurales tambin se les
denomina declarativos. Las bases de datos relacionales utilizan LMD no procedurales,
como SQL (Structured Query Language) o QBE (Query-By-Example). Los lenguajes no
procedurales son ms fciles de aprender y de usar que los procedurales, y el usuario debe
realizar menos trabajo, siendo el SGBD quien hace la mayor parte.
La parte de los LMD no procedurales que realiza la obtencin de datos es lo que se
denomina un lenguaje de consultas. En general, las rdenes tanto de obtencin como de
actualizacin de datos de un LMD no procedural se pueden utilizar interactivamente, por lo
que al conjunto completo de sentencias del LMD se le denomina lenguaje de consultas,
aunque es tcnicamente incorrecto.

lenguajes de cuarta generacin.

No existe consenso sobre lo que es un lenguaje de cuarta generacin (4GL). Lo que en un
lenguaje de tercera generacin (3GL) como COBOL requiere cientos de lneas de cdigo,
tan solo necesita diez o veinte lneas en un 4GL. Comparado con un 3GL, que es
procedural, un 4GL es un lenguaje no procedural: el usuario define qu se debe hacer, no
cmo debe hacerse. Los 4GL se apoyan en unas herramientas de mucho ms alto nivel
denominadas herramientas de cuarta generacin. El usuario no debe definir los pasos a
seguir en un programa para realizar una determinada tarea, tan slo debe definir una serie
de parmetros que estas herramientas utilizarn para generar un programa de aplicacin. Se
dice que los 4GL pueden mejorar la productividad de los programadores en un factor de 10,
aunque se limita el tipo de problemas que pueden resolver. Los 4GL abarcan:
Lenguajes de presentacin, como lenguajes de consultas y generadores de informes.
Lenguajes especializados, como hojas de clculo y lenguajes de bases de datos.
Generadores de aplicaciones que definen, insertan, actualizan y obtienen datos de la
base de datos.
Lenguajes de muy alto nivel que se utilizan para generar el cdigo de la aplicacin.

Los lenguajes SQL y QBE son ejemplos de 4GL. Hay otros tipos de 4GL:
Un generador de formularios es una herramienta interactiva que permite crear
rpidamente formularios de pantalla para introducir o visualizar datos. Los
generadores de formularios permiten que el usuario defina el aspecto de la pantalla,
qu informacin se debe visualizar y en qu lugar de la pantalla debe visualizarse.
Algunos generadores de formularios permiten la creacin de atributos derivados
utilizando operadores aritmticos y tambin permiten especificar controles para la
validacin de los datos de entrada.
Un generador de informes es una herramienta para crear informes a partir de los
datos almacenados en la base de datos. Se parece a un lenguaje de consultas en que
permite al usuario hacer preguntas sobre la base de datos y obtener informacin de
ella para un informe. Sin embargo, en el generador de informes se tiene un mayor
control sobre el aspecto de la salida. Se puede dejar que el generador determine
automticamente el aspecto de la salida o se puede disear sta para que tenga el
aspecto que desee el usuario final.
Un generador de grficos es una herramienta para obtener datos de la base de datos
y visualizarlos en un grfico mostrando tendencias y relaciones entre datos.
Normalmente se pueden disear distintos tipos de grficos: barras, lneas, etc.
Un generador de aplicaciones es una herramienta para crear programas que hagan
de interface entre el usuario y la base de datos. El uso de un generador de
aplicaciones puede reducir el tiempo que se necesita para disear un programa de
aplicacin. Los generadores de aplicaciones constan de procedimientos que realizan
las funciones fundamentales que se utilizan en la mayora de los programas. Estos
procedimientos estn escritos en un lenguaje de programacin de alto nivel y
forman una librera de funciones entre las que escoger. El usuario especifica qu
debe hacer el programa y el generador de aplicaciones es quien determina cmo
realizar la tarea.
NOTA: FALTA EL PUNTO NUMERO 1.8 ESE ME FALTO INVESTIGAR EL CUAL
ES TPICOS SELECTOS EN BASE DE DATOS.

Anda mungkin juga menyukai