Unidad 1. Básico: Introducción a las bases de datos (I)


Objetivos de un SGBD

Un sistema gestor de bases de datos por definición debe cumplir los siguientes objetivos:

Independencia de los datos.

Recordando uno de los problemas que plantean los ficheros convencionales. La independencia de los datos consiste en hacer que los programas no sean tan dependientes de la estructura de los datos.

Se han definido dos tipos de independencia:

  1. La independencia física: consiste en poder modificar la definición interna de los datos (el esquema interno) sin que ello suponga una modificación de los programas existentes.
    Por ejemplo, se puede cambiar la ubicación de la base de datos, o se puede añadir un índice sobre una tabla para que las consultas se ejecuten más rápidamente, sin que eso suponga una variación en los esquemas externos y conceptual, por lo que los programas (que utilizan el esquema externo) no se verán afectados.
  2. La independencia lógica: consiste en poder cambiar el esquema conceptual sin que ello suponga una modificación de los programas existentes.

Por ejemplo podemos añadir un nuevo dato en la tabla de clientes como la dirección de email sin que los esquemas externos se vean afectados.

Seguridad e integridad.

La seguridad consiste en que los usuarios no puedan acceder a datos sin  autorización.

Si juntamos toda la información de la empresa en un mismo sitio, el SGBD debe tener mecanismos para que cualquier usuario pueda tener acceso a únicamente la información que necesita para las tareas que tiene encomendadas.
Esta seguridad se consigue por medio de los esquemas externos, ya que el usuario sólo tiene acceso a su esquema externo que le proporciona los datos que el administrador ha considerado incluir en ese esquema. Para el usuario no habrá más datos que estos.
Además los SGBD tienen mecanismos para definir autorizaciones que pueden ser de distinto tipo: autorización de lectura, de inserción, de actualización, autorizaciones especiales para poder variar el esquema conceptual etc.

La integridad se refiere a que la información almacenada en la base de datos esté libre de errores. Esto no siempre es posible ya que existen distintos tipos de errores que tienen diferentes soluciones:

* Fallos de hardware. Estos errores no los puede evitar el SGBD pero se pueden subsanar facilitando copias de seguridad y procesos de recuperación.

* Fallos del programador. Puede que aparezcan datos erróneos en la base de datos como consecuencia de errores en el programa que genera estos datos. Para evitar al máximo este tipo de errores el sistema debe ser fácil de programar, cuantos más controles realice el sistema de forma automática, menos controles habrá que incluir a nivel de programación por lo que limitaremos la probabilidad de fallo y los programas deben ser probados con juegos de ensayos bien definidos.

* Fallos del usuario final. El usuario que introduce datos en la base de datos también puede cometer errores, el sistema debe permitir controlar al máximo la información que se introduce para limitar el número de estos errores, para ello los SGBD incluyen cláusulas de validación de los datos, validaciones de diferentes tipos que veremos con más detalle más adelante.

* Fallos derivados de la concurrencia. Ya que toda la información está centralizada y los distintos usuarios acceden a ella de forma simultánea, pueden ocurrir problemas cuando dos usuarios quieren acceder al mismo dato a la vez. Por ello el SGBD debe tener establecidos mecanismos para evitar este tipo de problema, bloquear registros, abortar automáticamente transacciones etc.

Redundancia mínima

La redundancia consiste en que exista algún dato repetido en varios lugares.
Por ejemplo si tenemos la dirección del cliente en la factura, en la cuenta contable, en los datos generales del cliente; esto como ya vimos anteriormente nos producirá varios problemas:

  • la información repetida ocupa espacio innecesario.
  • la variación de un domicilio supone el variar ese domicilio en todos los lugares donde esté almacenado.
    • mayor tiempo de proceso
    • posibilidad de inconsistencia

Por todo ello hay que evitar al máximo esa redundancia, esto se consigue utilizando herramientas de diseño y obteniendo un diseño óptimo de la base de datos.

Facilidad de recuperación de la información

Otro objetivo muy importante de un SGBD es el proporcionar al usuario (o programador) unas herramientas potentes de manejo de datos para que pueda de manera sencilla y rápida, obtener toda la información que desea sin que, por ello se tenga que hacer un programa complejo.
Veremos que el SQL, lenguaje empleado para recuperar información de la base de datos, es un lenguaje muy potente y cercano al lenguaje hablado, y además los SGBD incluyen entornos gráficos sencillos de utilizar.

   Inicio  Adelante



.