Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Arquitectura de los sistemas de bases de datos (página 2)




Enviado por Mart�nez Lucia



Partes: 1, 2

 

El nivel clave en esta arquitectura,
como se puede adivinar, es el conceptual. Éste contiene la
descripción de las entidades, relaciones y
propiedades de interés
para la empresa (UoD),
y constituye una plataforma estable desde la que proyectar los
distintos esquemas externos, que describen los datos
según los programadores, sobre el esquema interno, que
describe los datos según el sistema
físico. Las posibles proyecciones de datos quedan
resumidas en la grafica

Posibles proyecciones de datos

Como cabría esperar, en la práctica
cotidiana de implementación de bases de datos,
esta arquitectura no es seguida al cien por cien por los DBMSs
comerciales. Existen muy pocos productos que
contengan aplicaciones para facilitar la fase de análisis. Por lo general, el nivel
conceptual se obvia en los productos comerciales, salvo honrosas
excepciones. Lo habitual es que el DBA realice el modelado
conceptual usando sus propios recursos, o tal
vez asistido por alguna aplicación de análisis, ya
sea general o específica. El procesador del
esquema conceptual, es por tanto el propio DBA. Los DBMSs
sí suelen ofrecer facilidades para la creación de
esquemas externos, pero sin pasar por el nivel conceptual. Por
supuesto, un DBMS comercial no está obligado a seguir las
recomendaciones de estandarización de arquitecturas del
comité ANSI/X3/SPARC. Por lo que respecta al modelo
relacional de bases de datos,
que ya existía antes del informe de este
comité, los fabricantes de RDBMSs se ajustan en mayor o
menor medida al modelo teórico y, en cuanto a la
arquitectura, han intentado seguir las recomendaciones del
grupo RDBTG
(Relational Data Base Task Group), parte del comité
ANSI/X3/SPARC.

El resultado de este grupo fue restar importancia a las
arquitecturas y realzar la de los lenguajes e interfaces. Como
consecuencia, el lenguaje
SQL,
está hoy en día totalmente estandarizado, y en
cambio
encontramos distintas arquitecturas de RDBMS. Sin embargo se
pueden distinguir dos tipos generales de arquitecturas para estos
sistemas de bases
de datos.

Arquitectura separada de RDBMS

Arquitectura integrada de RDBMS

El tipo de arquitectura integrada es en general
preferible a la arquitectura separada y el más
común entre los RDBMSs comerciales. De todos modos, la
consecuencia de una integración de los lenguajes de
definición de datos (DDL) y los de manipulación de
datos (DML) en un sólo lenguaje
(DMDL: Data Manipulation and Description Language), son a
nuestro parecer positivas y negativas. Por un lado, esta
integración resulta muy cómoda para el DBA,
puesto que le basta con aprender un solo lenguaje formal para
realizar todas las tareas de creación y mantenimiento
de la base de datos.
Pero por otro lado, estos sistemas (tanto los separados como los
uniformes) fuerzan una proyección directa desde el nivel
externo al interno, haciendo que el nivel conceptual, el
fundamental según la arquitectura ANSI/X3/SPARC,
desaparezca o se implemente en el nivel externo como una vista
global externa. Por esta razón algunos DBAs inexpertos
tienden a obviar la fase de análisis, cuando de hecho es
la vital para la correcta implementación de la base de
datos. Insistimos en que un buen modelado conceptual es una
condición indispensable para el correcto desarrollo de
una base de datos. Pensamos que lo ideal es usar un DBMS que nos
permita desarrollar todas las tareas (de descripción y de
manipulación) lo más fácilmente posible,
pero no sin antes disponer de todas las herramientas
necesarias para un correcto modelado conceptual, estén
éstas o no incluidas en el DBMS.

1 El enfoque jerárquico

Un DBMS jerárquico utiliza jerarquías o
árboles
para la representación lógica
de los datos. Los archivos son
organizados en jerarquías, y normalmente cada uno de ellos
se corresponde con una de las entidades de la base de datos. Los
árboles jerárquicos se representan de forma
invertida, con la raíz hacia arriba y las hojas hacia
abajo.


Estructura de un árbol jerárquico

Un DBMS jerárquico recorre los distintos nodos de
un árbol en un preorden que requiere tres
pasos:

  1. Visitar la raíz.
  2. Visitar el hijo más a la izquierda, si lo
    hubiera, que no haya sido visitado.
  3. Si todos los descendientes del segmento considerado
    se han visitado, volver a su padre e ir al punto 1.

Cada nodo del árbol representa un tipo de
registro
conceptual, es decir, una entidad. A su vez, cada registro o
segmento está constituido por un número de campos
que los describen – las propiedades o atributos de las
entidades. Las relaciones entre entidades están
representadas por las ramas. cada departamento es una entidad que
mantiene una relación de uno a muchos con los profesores,
que a su vez mantienen una relación de uno a muchos con
los cursos que imparten.


Base de datos jerárquica. Estructura
lógica y ejemplo

A modo de resumen, enumeramos las siguientes
características de las bases de datos
jerárquicas:

  1. Los segmentos de un archivo
    jerárquico están dispuestos en forma de
    árbol.
  2. Los segmentos están enlazados mediante
    relaciones uno a muchos.
  3. Cada nodo consta de uno o más
    campos.
  4. Cada ocurrencia de un registro padre puede tener
    distinto número de ocurrencias de registros
    hijos.
  5. Cuando se elimina un registro padre se deben eliminar
    todos los registros hijos (integridad de los
    datos).
  6. Todo registro hijo debe tener un único
    registro padre excepto la raíz.

Las reglas de integridad en el modelo jerárquico
prácticamente se reducen a la ya mencionada de
eliminación en cadena de arriba a abajo. Las relaciones
muchos a muchos no pueden ser implementadas de forma directa.
Este modelo no es más que una extensión del modelo
de ficheros.

REDUNDANCIA

Esta se presenta cuando se repiten innecesariamente
datos en los archivos que conforman la base de datos. Esta
redundancia aumenta los costes de almacenamiento y
acceso y además puede llevar a inconsistencia de los
datos.

Si un cliente ha
realizado más de un pedido todos los datos de este cliente
estarán repetidos tantas veces como pedidos haya, lo mismo
sucede para los artículos esto es opuesto al principal
objetivo de
una base de datos que consiste en evitar la repetición de
los mismos.

Redundancia e inconsistencia de datos: Puesto que
los archivos que mantienen almacenada la información son creados por diferentes
tipos de programas de
aplicación existe la posibilidad de que si no se controla
detalladamente el almacenamiento, se pueda originar un duplicado
de información, es decir que la misma información
sea más de una vez en un dispositivo de almacenamiento.
Esto aumenta los costos de
almacenamiento y acceso a los taos, además de que puede
originar la inconsistencia de los datos-es decir diversas copias
de un mismo dato no concuerdan entre sí-, por ejemplo: que
se actualiza la dirección de un cliente en un archivo y que
en otros archivos permanezca la anterior.

INTEGRIDAD

El objetivo en cuanto a la integridad es proteger la
base de datos contra operaciones que
introduzcan inconsistencias en los datos, por eso hablamos de
integridad en el sentido de corrección,
validez o precisión de los datos de la base.
El subsistema de integridad de un SGBD debe, por tanto, detectar
y corregir, en la medida de lo posible, las operaciones
incorrectas. Existen dos tipos de operaciones que pueden atentar
contra la integridad de los datos que son las operaciones
semánticamente inconsistentes y las interferencias debidas
a accesos concurrentes.

Seguridad e integridad de los datos

Se trata de garantizar la coherencia de los datos,
comprobando que sólo los usuarios autorizados puedan
efectuar las operaciones correctas sobre la base de datos. Esto
se consigue mediante:

  • Un control
    sobre los usuarios que acceden a la base de datos y los tipos
    de operaciones que están autorizados a realizar. Este
    control se llama gestión de autorizaciones, y
    permite crear o borra usuarios y conceder o retirar derechos a efectuar
    determinados tipos de operaciones (por ejemplo: crear objetos,
    borrar objetos, modificar datos, etc.
  • La validación de las operaciones realizadas
    con los datos. Este control se hace mediante un conjunto de
    reglas llamadas restricciones de integridad. Existen
    varios tipos de restricciones de integridad, como por ejemplo,
    las restricciones de integridad referencial, que imponen que
    las modificaciones realizadas sobre algunos datos, obliguen a
    realizar modificaciones de otros datos con los que están
    enlazados (por ejemplo, si se modifica el código de un artículo, se
    debería modificar ese código en todos los pedidos
    que soliciten el artículo.
  • Una protección de los datos contra los accesos
    malintencionados y los fallos. Los accesos malintencionado se
    suelen evitar con la asignación de palabras de paso
    (password) a los usuarios, la definición de vistas,
    protección física de los datos
    (encriptado de los datos). Con respecto a los fallos causados
    por manipulaciones incorrectas, o accidentes
    lógicos o físicos, los S.G.B.D. suelen disponer
    de utilidades de recuperación de los datos
    después de un fallo.

La correcta utilización de todas estas
operaciones de seguridad e
integridad constituye una tarea esencial del Administrador de
la base de datos (gestión
de usuarios y sus derechos, gestión de vistas y
recuperación después de un fallo).

Terminología en la arquitectura de la bases
de datos

  • Incoherencia de los datos: Si una
    operación de puesta al día múltiple no se
    ha realizado completamente el estado de la
    base de datos queda incoherente y puede producir errores
    importantes
  • Versatilidad para representar la
    información
    : Ofrecer diferentes visiones de la
    información que se almacena en la BD.
  • Desempeño: Debe dar respuesta en un
    tiempo
    adecuado, permitiendo el acceso simultaneo al mismo o diferente
    datos.
  • Mínima redundancia.
  • Capacidad de acceso: Debe responder en tiempo
    adecuado a consultas previstas e imprevistas.
  • Simplicidad: Cambios en los requerimientos no
    deben suponer grandes cambios en el modelo de
    datos.
  • Seguridad: Capacidad para proteger los datos
    contra perdidas totales y/o parciales,

Contra destrucción causada por el entorno
(fuego, inundación,…)

Contra destrucción causada por fallos del
sistema

Contra accesos no autorizados a la
BD

Contra accesos indebidos a los datos

  • Privacidad: Debe reservar la
    información de accesos de personas no
    autorizadas.
  • Afinación: Organización de datos afines para obtener
    buenos tiempos de respuesta.
  • Integridad: Que los datos sean correctos y se
    correspondan a los requerimientos del dominio.

    Integridad frente a fallos Hw o Sw o de
    acceso concurrente

Integridad asegurando que los datos se ajustan a
los requerimientos del problema

  • Abstracción de la información.
    Los usuarios de los SGBD ahorran a los usuarios detalles acerca
    del almacenamiento físico 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 abstracción.
  • Independencia. La independencia de los datos consiste en la
    capacidad de modificar el esquema (físico o
    lógico) de una base de datos sin tener que realizar
    cambios en las aplicaciones que se sirven de ella.
  • Redundancia mínima. Un buen diseño de una base de datos
    logrará evitar la aparición de información
    repetida o redundante. De entrada, lo ideal es lograr una
    redundancia nula; no obstante, en algunos casos la complejidad
    de los cálculos hace necesaria la aparición de
    redundancias.
  • Consistencia. En aquellos casos en los que no
    se ha logrado esta redundancia nula, será necesario
    vigilar que aquella información que aparece repetida se
    actualice de forma coherente, es decir, que todos los datos
    repetidos se actualicen de forma simultánea.
  • Seguridad. La información almacenada en
    una base de datos puede llegar a tener un gran valor. Los
    SGBD deben garantizar que esta información se encuentra
    asegurada frente a usuarios malintencionados, que intenten leer
    información privilegiada; frente a ataques que deseen
    manipular o destruir la información; o simplemente ante
    las torpezas de algún usuario autorizado pero
    despistado. Normalmente, los SGBD disponen de un complejo
    sistema de permisos a usuarios y grupos de
    usuarios, que permiten otorgar diversas categorías de
    permisos.
  • Integridad. Se trata de adoptar las medidas
    necesarias para garantizar la validez de los datos almacenados.
    Es decir, se trata de proteger los datos ante fallos de
    hardware, datos
    introducidos por usuarios descuidados, o cualquier otra
    circunstancia capaz de corromper la información
    almacenada.
  • Respaldo y recuperación. Los SGBD deben
    proporcionar una forma eficiente de realizar copias de
    seguridad de la información almacenada en ellos, y de
    restaurar a partir de estas copias los datos que se hayan
    podido perder.
  • Control de la concurrencia. En la
    mayoría de entornos (excepto quizás el
    doméstico), lo más habitual es que sean muchas
    las personas que acceden a una base de datos, bien para
    recuperar información, bien para almacenarla. Y es
    también frecuente que dichos accesos se realicen de
    forma simultánea. Así pues, un SGBD debe
    controlar este acceso concurrente a la información, que
    podría derivar en inconsistencias.
  • Tiempo de respuesta. Lógicamente, es
    deseable minimizar el tiempo que el SGBD tarda en darnos la
    información solicitada y en almacenar los cambios
    realizados.
  • Inconsistencia Ocurre cuando existe
    información contradictoria o incongruente en la base de
    datos.
  • Dificultad en el acceso de los datos debido a
    que los sistemas de procesamiento de archivos generalmente se
    conforman en distintos tiempos o épocas y ocasionalmente
    por distintos programadores, el formato de la
    información no es uniforme y se requiere de establecer
    métodos
    de enlace y conversión para combinar datos contenidos en
    distintos archivos.
  • Aislamiento de los datos, Se refiere a la
    dificultad de extender las aplicaciones que permitan controlar
    a la base de datos, como pueden ser, nuevos reportes,
    utilerías y demás debido a la diferencia de
    formatos en los archivos almacenados.
  • Anomalías en el acceso concurrente
    Ocurre cuando el sistema es multiusuario y no se establecen los
    controles adecuados para sincronizar los procesos que
    afectan a la base de datos. Comúnmente se refiere a la
    poca o nula efectividad de los procedimientos
    de bloqueo.
  • Problemas de seguridad Se presentan cuando no
    es posible establecer claves de acceso y resguardo en forma
    uniforme para todo el sistema, facilitando así el acceso
    a intrusos.
  • Problemas de integridad Ocurre cuan no existe
    a través de todo el sistema procedimientos uniformes de
    validación para los datos
  • Archivos de datos Almacenan a la base de
    datos.
  • Diccionario de datos Almacenan información
    referente a la estructura de la base de datos.
  • Índices Permiten un acceso eficiente
    (rápido y confiable) a la información almacenada
    en la base de datos
  • Manejador de Archivo Asigna espacio en el medio de
    almacenamiento para las estructuras
    que habrán de almacenar la
    información.
  • Manejador de Bases de datos Es la interfase entre los
    datos de bajo nivel y los programas de
    aplicaciones.
  • Procesador de consulta Se encarga de traducir las
    proposiciones de un lenguaje de consultas a instrucciones de
    bajo nivel.
  • Precompiladotes de DML.- Se encarga de traducir las
    proposiciones en DML al lenguaje de diseño del manejador
    (Pascal, C,
    Ensamblador
    etc.
  • Compilador de DDL.- Se encarga de convertir las
    proposiciones en DDL a tablas que contienen
    metadatos.

 

Martínez Lucia

Reyes Yismely

PUERTO LA CRUZ, JUNIO 2006

 

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter