SGDB 4.0

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 20

Sistemas Gestores de Bases de Datos.

Definimos un Sistema Gestor de Bases de Datos o SGBD, también llamado


DBMS (Data Base Management System) como una colección de datos
relacionados entre sí, estructurados y organizados, y un conjunto de
programas que acceden y gestionan esos datos. La colección de esos datos se
denomina Base de Datos o BD, (DB Data Base).
Antes de aparecer los SGBD (década de los setenta), la información se trataba
y se gestionaba utilizando los típicos sistemas de gestión de archivos que iban
soportados sobre un sistema operativo.
Éstos consistían en un conjunto de programas que definían y trabajaban
sus propios datos. Los datos se almacenan en archivos y los programas
manejan esos archivos para obtener la información. Si la estructura de
los datos de los archivos cambia, todos los programas que los manejan se
deben modificar; por ejemplo, un programa trabaja con un archivo de datos
de alumnos, con una estructura o registro ya definido; si se incorporan
elementos o campos a la estructura del archivo, los programas que utilizan
ese archivo se tienen que modificar para tratar esos nuevos
elementos.
Sistemas Gestores de Bases de Datos.
En estos sistemas de gestión de archivos, la definición de los
datos se encuentra codificada dentro de los programas de
aplicación en lugar de almacenarse de forma independiente, y
además el control del acceso y la manipulación de los datos
viene impuesto por los programas de aplicación. Esto supone
un gran inconveniente a la hora de tratar grandes volúmenes
de información. Surge así la idea de separar los datos
contenidos en los archivos de los programas que los manipulan,
es decir, que se pueda modificar la estructura de los datos de
los archivos sin que por ello se tengan que modificar los
programas con los que trabajan. Se trata de estructurar y
organizar los datos de forma que se pueda acce- der a ellos con
independencia de los programas que los gestionan.
Sistemas Gestores de Bases de Datos
Inconvenientes de un sistema de gestión de archivos:
 
• Redundancia e inconsistencia de los datos, se produce porque los archivos son
creados por distintos programas y van cambiando a lo largo del tiempo, es decir,
pueden tener distintos formatos y los datos pueden estar duplicados en varios sitios.
Por ejemplo, el teléfono de un alumno puede aparecer en más de un archivo. La
redundancia aumenta los costes de almacenamiento y acceso, y trae consigo la
inconsistencia de los datos: las copias de los mismos datos no coinciden por aparecer
en varios archivos.
 • Dependencia de los datos física-lógica, o lo que es lo mismo, la estructura física
de los datos (definición de archivos y registros) se encuentra codificada en los
programas de aplicación. Cualquier cambio en esa estructura implica al programador
identificar, modificar y probar todos los programas que manipulan esos archivos.
 • Dificultad para tener acceso a los datos, proliferación de programas, es decir,
cada vez que se necesite una consulta que no fue prevista en el inicio implica la
necesidad de codificar el programa de aplicación necesario. Lo que se trata de
probar es que los entornos convencionales de procesamiento de archivos no
permiten recuperar los datos necesarios de una forma conveniente y eficiente.
Sistemas Gestores de Bases de Datos
• Separación y aislamiento de los datos, es decir, al estar repartidos en varios archivos, y tener
diferentes formatos, es difícil escribir nuevos programas que aseguren la manipulación de los
datos correctos. Antes se deberían sincronizar todos los archivos para que los datos
coincidiesen.
 • Dificultad para el acceso concurrente, en un sistema de gestión de archivos es complicado
que los usuarios actualicen los datos simultáneamente. Las actualizaciones concurrentes
pueden dar por resultado datos inconsistentes, ya que se puede acceder a los datos por medio
de diversos programas de aplicación.
 • Dependencia de la estructura del archivo con el lenguaje de programación, la estructura se
define dentro de los programas. Esto implica que los formatos de los archivos sean
incompatibles. La incompatibilidad entre archivos generados por distintos lenguajes hace que
los datos sean difíciles de procesar.
 • Problemas en la seguridad de los datos. Resulta difícil implantar restricciones de seguridad
pues las aplicaciones se van añadiendo al sistema según se van necesitando.
 • Problemas de integridad de datos, es decir, los valores almacenados en los archivos deben
cumplir con restricciones de consistencia. Por ejemplo, no se puede insertar una nota de un
alumno en una asignatura si previamente esa asignatura no está creada. Otro ejemplo, las
unidades en almacén de un producto determinado no deben ser inferiores a una cantidad. Esto
implica añadir gran número de líneas de código en los programas. El problema se complica
cuando existen restricciones que implican varios datos en distintos archivos.
 
Sistemas Gestores de Bases de Datos
Todos estos inconvenientes hacen posible el fomento y desarrollo de SGBD.
El objetivo primordial de un gestor es proporcionar eficiencia y seguridad a
la hora de extraer o almacenar información en las BD. Los sistemas gestores
de BBDD están diseñados para gestionar grandes bloques de información,
que implica tanto la definición de estructuras para el almacenamiento como
de mecanismos para la gestión de la información.
 Una BD es un gran almacén de datos que se define una sola vez; los datos
pueden ser accedidos de forma simultánea por varios usuarios; están
relacionados y existe un número mínimo de duplicidad; además en las BBDD
se almacenarán las descripciones de esos datos, lo que se llama metadatos
en el diccionario de datos.
El SGBD es una aplicación que permite a los usuarios definir, crear y
mantener la BD y proporciona un acceso controlado a la misma. Debe
prestar los siguientes servicios:
Sistemas Gestores de Bases de Datos
• Creación y definición de la BD: especificación de la estructura, el tipo de
los datos, las restricciones y relaciones entre ellos mediante lenguajes de
definición de datos. Toda esta información se almacena en el diccionario de
datos, el SGBD proporcionará mecanismos para la gestión del diccionario de
datos.
• Manipulación de los datos realizando consultas, inserciones y
actualizaciones de los mismos utilizando lenguajes de manipulación de
datos.
• Acceso controlado a los datos de la BD mediante mecanismos de
seguridad de acceso a los usuarios.
• Mantener la integridad y consistencia de los datos utilizando
mecanismos para evitar que los datos sean perjudicados por cambios no
autorizados.
• Acceso compartido a la BD, controlando la interacción entre usuarios
concurrentes.
• Mecanismos de respaldo y recuperación para restablecer la información
en caso de fallos en el sistema.

 
Arquitectura de los Sistemas de BD
En 1975, el comité ANSI-SPARC (American National Standard Institute -
Standards Planning and Requirements Committee) propuso una
arquitectura de tres niveles para los SGBD cuyo objetivo principal era el de
separar los programas de aplicación de la BD física. En esta arquitectura el
esquema de una BD se define en tres niveles de abstracción distintos:
• Nivel interno o físico: el más cercano al almacenamiento físico, es decir,
tal y como están almacenados en el ordenador. Describe la estructura física
de la BD mediante un esquema interno. Este esquema se especifica con un
modelo físico y describe los detalles de cómo se almacenan físicamente los
datos: los archivos que contienen la información, su organización, los
métodos de acceso a los registros, los tipos de registros, la longitud, los
campos que los componen, etcétera.
 • Nivel externo o de visión: es el más cercano a los usuarios, es decir, es
donde se describen varios esquemas externos o vistas de usuarios. Cada
esquema describe la parte de la BD que interesa a un grupo de usuarios en
este nivel se representa la visión individual de un usuario o de un grupo de
usuarios.
Arquitectura de los Sistemas de BD
• Nivel conceptual: describe la estructura de toda la BD para un grupo 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 físicas de almacenamiento.
Representa la información contenida en la BD.

Esta arquitectura describe los datos a tres niveles de abstracción. En realidad los
únicos datos que existen están a nivel físico almacenados en discos u otros
dispositivos. Los SGBD basados en esta arquitectura permiten que cada grupo de
usuarios haga referencia a su propio esquema externo. El SGBD debe de transformar
cualquier petición de usuario (esquema externo) a una petición expresada en
términos de esquema conceptual, para finalmente ser una petición expresada en el
esquema interno que se procesará sobre la BD almacenada.
Arquitectura de los Sistemas de BD
El proceso de transformar peticiones y resultados de un nivel a otro se
denomina correspondencia o transformación, el SGBD es capaz de
interpretar una solicitud de datos y realiza los siguientes pasos:
 • El usuario solicita unos datos y crea una consulta.
 • El SGBD verifica y acepta el esquema externo para ese usuario.
 • Transforma la solicitud al esquema conceptual.
 • Verifica y acepta el esquema conceptual.
 • Transforma la solicitud al esquema físico o interno.
 • Selecciona la o las tablas implicadas en la consulta y ejecuta la consulta.
 • Transforma del esquema interno al conceptual, y del conceptual al
externo.
 • Finalmente, el usuario ve los datos solicitados.
 
Para una BD específica sólo hay un esquema interno y uno conceptual, pero
puede haber varios esquemas externos definidos para uno o para varios
usuarios.
Arquitectura de los Sistemas de BD
Con la arquitectura a tres niveles se introduce el concepto de
independencia de datos, se definen dos tipos de independencia:
 
• Independencia lógica: la capacidad de modificar el esquema conceptual
sin tener que alterar los esquemas externos ni los programas de aplicación.
Se podrá modificar el esquema conceptual para ampliar la BD o para
reducirla, por ejemplo, si se elimina una entidad, los esquemas externos
que no se refieran a ella no se verán afectados.
 
• Independencia física: la capacidad de modificar el esquema interno sin
tener que alterar ni el esquema conceptual, ni los externos. Por ejemplo, se
pueden reorganizar los archivos físicos con el fin de mejorar el rendimiento
de las operaciones de consulta o de actualización, o se pueden añadir
nuevos archivos de datos porque los que había se han llenado. La
independencia física es más fácil de conseguir que la lógica, pues se refiere
a la separación entre las aplicaciones y las estructuras físicas de
almacenamiento.
Arquitectura de los Sistemas de BD
En los SGBD basados en arquitecturas de varios niveles se hace necesario
ampliar el catálogo o el diccionario de datos para incluir la información
sobre cómo establecer las correspondencias entre las peticiones de los
usuarios y los datos, entre los diversos niveles. El SGBD utiliza una serie de
procedimientos adicionales para realizar estas correspondencias haciendo
referencia a la información de correspondencia que se encuentra en el
diccionario. La independencia de los datos se consigue porque al
modificarse el esquema en algún nivel, el esquema del nivel inmediato
superior permanece sin cambios. Sólo se modifica la correspondencia entre
los dos niveles. No es preciso modificar los programas de aplicación que
hacen referencia al esquema del nivel superior.
Sin embargo, los dos niveles de correspondencia implican un gasto de
recursos durante la ejecución de una consulta o de un programa, lo que
reduce la eficiencia del SGBD. Por esta razón pocos SGBD han implementado
la arquitectura completa.
Componentes de los SGBD
Los SGBD son paquetes de software muy complejos que deben
proporcionar una serie de servicios que van a permitir almacenar y explotar
los datos de forma eficiente. Los componentes principales son los
siguientes:

LENGUAJES DE LOS SGDB


Todos los SGBD ofrecen lenguajes e interfaces apropiadas para cada tipo de
usuario:
administradores, diseñadores, programadores de aplicaciones y usuarios
finales.
Los lenguajes van a permitir al administrador de la BD especificar los datos
que componen la BD, su estructura, las relaciones que existen entre ellos,
las reglas de integridad, los controles de acceso, las características de tipo
físico y las vistas externas de los usuarios. Los lenguajes del SGBD se
clasifican en:
 
Componentes de los SGBD
• Lenguaje de definición de datos (LDD o DDL): se utiliza para especificar el
esquema de la BD, las vistas de los usuarios y las estructuras de almacenamiento.
Es el que define el esquema conceptual y el esquema interno. Lo utilizan los dise-
ñadores y los administradores de la BD.
• Lenguaje de manipulación de datos (LMD o DML): se utilizan para leer y
actualizar los datos de la BD. Es el utilizado por los usuarios para realizar consultas,
inserciones, eliminaciones y modificaciones. Los hay procedurales, en los que el
usuario será normalmente un programador y especifica las operaciones de acceso
a los datos llamando a los procedimientos necesarios. Estos lenguajes acceden a
un registro y lo procesan. Las sentencias de un LMD procedural están embebidas
en un lenguaje de alto nivel llamado anfitrión. Las BD jerárquicas y en red utilizan
estos LMD procedurales.
 No procedurales son los lenguajes declarativos. En muchos SGBD se pueden
introducir interactivamente instrucciones del LMD desde un terminal, también
pueden ir embebidas en un lenguaje de programación de alto nivel. Estos
lenguajes permiten especificar los datos a obtener en una consulta, o los datos a
modificar, mediante sentencias sencillas. Las BD relacionales utilizan lenguajes no
procedurales como SQL (Structured Quero Language) o QBE (Query By Example).
Componentes de los SGBD
DICCIONARIO DE DATOS
El diccionario de datos es el lugar donde se deposita información acerca de
todos los datos que forman la BD. Es una guía en la que se describe la BD y los
objetos que la forman.
 El diccionario contiene las características lógicas de los sitios donde se
almacenan los datos del sistema, incluyendo nombre, descripción, alias,
contenido y organización. Identifica los procesos donde se emplean los datos y
los sitios donde se necesita el acceso inmediato a la información.
 En una BD relacional, el diccionario de datos proporciona información acerca
de:
• La estructura lógica y física de la BD.
 • Las definiciones de todos los objetos de la BD: tablas, vistas, índices,
disparadores, procedimientos, funciones, etcétera.
 • El espacio asignado y utilizado por los objetos.
 • Los valores por defecto de las columnas de las tablas.
 • Información acerca de las restricciones de integridad.
 • Los privilegios y roles otorgados a los usuarios.
 • Auditoría de información, como los accesos a los objetos.
Componentes de los SGBD
Un diccionario de datos debe cumplir las siguientes características:
 • Debe soportar las descripciones de los modelos conceptual, lógico,
interno y externo de la BD.
 • Debe estar integrado dentro del SGBD.
 • Debe apoyar la transferencia eficiente de información al SGDB. La
conexión entre los modelos interno y externo debe ser realizada en tiempo
de ejecución.
 • Debe comenzar con la reorganización de versiones de producción de la
BD. Además debe reflejar los cambios en la descripción de la BD. Cualquier
cambio a la descripción de programas ha de ser reflejado automáticamente
en la librería de descripción de programas con la ayuda del diccionario de
datos.
 • Debe estar almacenado en un medio de almacenamiento con acceso
directo para la fácil recuperación de información.
Componentes de los SGBD
SEGURIDAD E INTEGRIDAD DE DATOS
Un SGBD proporciona los siguientes mecanismos para garantizar la seguridad
e integridad de los datos:
 • Debe garantizar la protección de los datos contra accesos no autorizados,
tanto intencionados como accidentales. Debe controlar que sólo los usuarios
autorizados accedan a la BD.
 • Los SGBD ofrecen mecanismos para implantar restricciones de integridad
en la BD.
Estas restricciones van a proteger la BD contra daños accidentales. Los valores
de los datos que se almacenan deben satisfacer ciertos tipos de restricciones
de consistencia y reglas de integridad, que especificará el administrador de la
BD. El SGBD puede determinar si se produce una violación de la restricción.
 • Proporciona herramientas y mecanismos para la planificación y realización
de copias de seguridad y restauración.
 • Debe ser capaz de recuperar la BD llevándola a un estado consistente en
caso de ocurrir algún suceso que la dañe.
 • Debe asegurar el acceso concurrente y ofrecer mecanismos para conservar
la consis- tencia de los datos en el caso de que varios usuarios actualicen la BD
de forma concurrente.
Componentes de los SGBD
ADMINISTRADOR DE BD
En los sistemas de gestión de BBDD actuales existen diferentes categorías de
usuarios. Estas categorías se caracterizan porque cada una de ellas tiene una
serie de privilegios o permisos sobre los objetos que forman la BD.
 En los sistemas Oracle las categorías más importantes son:
 • Los usuarios de la categoría DBA (Database Administrator), cuya función
es preci- samente administrar la base y que tienen, el nivel más alto de
privilegios.
 • Los usuarios de la categoría RESOURCE, que pueden crear sus propios
objetos y tienen acceso a los objetos para los que se les ha concedido
permiso.
 • Los usuarios del tipo CONNECT, que solamente pueden utilizar aquellos
objetos para los que se les ha concedido permiso de acceso.
 El DBA tiene una gran responsabilidad ya que posee el máximo nivel de
privilegios. Será el encargado de crear los usuarios que se conectarán a la BD.
En la administración de una BD siempre hay que procurar que haya el menor
número de administradores, a ser posi- ble una sola persona.
Componentes de los SGBD
El DBA tiene una gran responsabilidad ya que posee el máximo nivel de
privilegios. Será el encargado de crear los usuarios que se conectarán a la
BD. En la administración de una BD siempre hay que procurar que haya el
menor número de administradores, a ser posible una sola persona.
El objetivo principal de un DBA es garantizar que la BD cumple los fines
previstos por la organización, lo que incluye una serie de tareas como:
• Instalar SGBD en el sistema informático.
 • Crear las BBDD que se vayan a gestionar.
 • Crear y mantener el esquema de la BD.
 • Crear y mantener las cuentas de usuario de la BD.
 • Arrancar y parar SGBD, y cargar las BBDD con las que se ha de trabajar.
 • Colaborar con el administrador del S.O. en las tareas de ubicación,
dimensionado y control de los archivos y espacios de disco ocupados por el
SGBD.
 • Colaborar en las tareas de formación de usuarios.
 • Establecer estándares de uso, políticas de acceso y protocolos de trabajo
diario para los usuarios de la BD.
 • Suministrar la información necesaria sobre la BD a los equipos de análisis
y programación de aplicaciones.
Componentes de los SGBD
• Efectuar tareas de explotación como:
 – Vigilar el trabajo diario colaborando en la información y resolución de las
dudas de los usuarios de la BD.
 – Controlar en tiempo real los accesos, tasas de uso, cargas en los
servidores, anomalías, etcétera.
 – Llegado el caso, reorganizar la BD.
 – Efectuar las copias de seguridad periódicas de la BD.
 – Restaurar la BD después de un incidente material a partir de las copias de
seguridad.
 – Estudiar las auditorías del sistema para detectar anomalías, intentos de
violación de la seguridad, etcétera.
 – Ajustar y optimizar la BD mediante el ajuste de sus parámetros, y con
ayuda de las herramientas de monitorización y de las estadísticas del sistema.
En su gestión diaria, el DBA suele utilizar una serie de herramientas de
administración de la BD.
 Con el paso del tiempo, estas herramientas han adquirido sofisticadas
prestaciones y facilitan en gran medida la realización de trabajos que, hasta no
hace demasiado, requerían de arduos esfuerzos por parte de los
administradores.

También podría gustarte