Bases de datos: arquitectura, componentes y modelo relacional en un SGBD
Bases de datos y sistemas de gestión
El gestor de la BD: es el componente software encargado de garantizar el correcto, seguro, íntegro y eficiente acceso y almacenamiento de los datos.
Factores
- El volumen de la BD
- Las estructuras físicas definidas para el almacenamiento de los mismos
- Los procedimientos desarrollados para la manipulación de los datos
- Las características del hardware
- La calidad del propio gestor
Responsable de
- Garantizar la privacidad de los datos
- Garantizar la seguridad de los datos
- Garantizar la integridad de los datos
- Garantizar el acceso concurrente a la BD sin que ello ocasione pérdida de la integridad de la BD
- Interactuar con el SO y con el gestor de archivos del mismo
Administrador de BD (DBA)
Es un componente humano de suma importancia. Responsabilidades: la definición, administración, seguridad, privacidad e integridad de la información que se está tratando.
Tareas
- Definir el esquema lógico de la BD
- Definir el esquema físico de la BD
- Definición de las vistas externas
- Controlar la privacidad de los datos mediante la concesión de privilegios a usuarios o a grupos
- Especificar los procedimientos para mantener la seguridad de los datos almacenados
- Mantener los esquemas
Jerárquico
- Colección de árboles
- Nodos
- Raíz
- Padre
- Gemelos
- Hijos
- Caminos
- Hojas
- Rama
- Arcos o lazos
Desventajas: no es posible representar relaciones entre registros, ni relaciones reflexivas entre ellos.
Ventajas del diseño de BD
- Independencia lógica de datos: los cambios realizados en un objeto de la base de datos no obligan a modificar otros elementos de la base de datos.
- Independencia física de los datos: la BD no depende del dispositivo de almacenamiento en que se guarde.
Características de las BBDD
- Desempeño
- Mínima redundancia
- Capacidad de acceso
- Simplicidad
- Integridad
- Seguridad y privacidad
- Afinación
- Interfaz con el pasado y con el futuro
Ventajas de BD frente a los SGF
- Control centralizado de los datos, de los usuarios y de sus accesos
- Mayor coherencia de los datos al eliminar la inconsistencia de los datos
- Almacenamiento físico eficiente
- Mantenimiento de la integridad de la BD
Situaciones en las que puede ser preferible no usar un SGBD
- En banco de datos y las aplicaciones son simples y bien definidos, y no se esperan cambios en ellas
- Existen estrictos requerimientos de tiempo real que pueden no cumplirse como consecuencia del recargo que impone la BD
- No se requieren accesos concurrentes
Conceptos fundamentales de bases de datos
BD: es una colección de archivos relacionados que almacenan: una representación abstracta del dominio de un problema del mundo real y los datos correspondientes a la información acerca del mismo.
Arquitectura de BD
- Nivel externo: es el nivel más cercano a los usuarios y a su forma de ver los datos. Cada nivel externo describe sólo la parte de la BD que necesita para su aplicación o uso, y existen distintos tipos de usuarios.
- Nivel conceptual: conecta los otros 2 niveles.
- Nivel interno: es el más cercano al almacenamiento físico.
Componentes de un SGBD
- Lenguaje de definición de datos: lenguaje artificial basado en un determinado modelo de datos que permite la representación lógica de los datos.
- Lenguaje de definición de almacenamiento de los datos: subcomponente del DDL.
- Lenguaje de manipulación de datos.
- Diccionario de datos.
- Gestor de la BD: es el componente software encargado de garantizar el correcto, seguro, íntegro y eficiente acceso y almacenamiento de los datos.
- Administrador de la BD: componente humano de suma importancia.
Arquitectura de referencia
Los niveles de la arquitectura se estructuran de forma que el nivel externo se relaciona con el conceptual y este con el interno, permitiendo la independencia entre niveles.
Sistema de información empresarial
Es un conjunto formal de procesos que, operando sobre una colección de datos estructurada según las necesidades de la empresa, recopilan, elaboran y distribuyen la información necesaria para las operaciones de dicha empresa y para las actividades de dirección y control correspondientes, para desempeñar su actividad de acuerdo a su estrategia de negocio.
Objetivo
Facilitar el desempeño de las actividades administrativas y de gestión en todos los niveles de la empresa, mediante el suministro de la información adecuada, con la calidad suficiente, a la persona que la necesita, en el momento y lugar oportunos y con el formato preciso para su utilización correcta.
Objetivos básicos
- Automatización de procesos operativos
- Proporcionar información que sirva de apoyo al proceso de toma de decisiones
- Lograr ventajas competitivas a través de su implantación y uso
Data mining
Predicción de futuras tendencias y comportamientos.
Data warehousing
Colección de datos en la cual se encuentra integrada la información de una institución y que se usa como soporte para el proceso de toma de decisiones gerenciales.
Subsistemas de la empresa
- Subsistema productivo: áreas o departamentos empresariales que intervienen directamente en la gestión de la producción.
- Subsistema financiero: encargado de la gestión, captación, administración y control de los recursos financieros.
- Subsistema directivo: responsable de la definición de objetivos, de la toma de decisiones y de la gestión de la calidad de cada elemento de la empresa.
Modelos de datos y sistemas de ficheros
Modelo empleado en el diseño físico
- Basado en ficheros de datos y programas que interactúan con ellos
- Basado en la gestión de base de datos
Fichero: agrupación de datos relacionados que hacen referencia a un tema o temas determinados y que se ubica en uno o más lugares concretos.
Organización de un fichero
Es la forma de estructurar y almacenar datos en un dispositivo de almacenamiento.
Clasificación atendiendo a su direccionalidad
- Archivos sin dirección: aquellos en los que no es posible acceder a los contenidos a partir de una dirección, sino que hay que hacerlo leyendo secuencialmente la información hasta llegar al dato requerido.
- Archivos con dirección: aquellos en los que existe una relación biunívoca entre contenidos y ubicación de dichos contenidos.
Operaciones sobre registros de un fichero
- Actualización: adición, inserción, modificación o eliminación de registros. Permite mantener el fichero actualizado.
- Consulta: permite acceder a los registros para conocer el contenido de sus campos.
Operaciones que crean nuevos ficheros
- Copia: a partir de un fichero se crea otro con la misma estructura y contenido.
- Intersección: consiste en crear un nuevo fichero partiendo de los registros comunes de 2 o más ficheros con la misma estructura.
- Concatenación: con 2 ficheros de la misma estructura, se crea un 3.º fichero que contiene la información de ambos.
- Partición: a partir de un fichero se crean uno o más ficheros con la misma estructura y contenido.
Problemas de los gestores de ficheros
Respecto a los archivos:
- Integridad semántica: conjunto de restricciones, también llamadas reglas de validación o limitantes de consistencia, que permiten o no almacenar determinados valores.
- Control de autorizaciones: trata de evitar que se produzcan accesos indebidos a los datos.
- Concurrencia de accesos: varios usuarios acceden a la vez al mismo fichero de datos para trabajar con él, sin que exista un programa que controle el orden de acceso de los usuarios al fichero.
Respecto a los datos:
- Redundancia: repetición innecesaria de información en varios ficheros.
- Inconsistencia: información redundante en la que los datos de los distintos ficheros no concuerdan entre sí.
- Aislamiento: fragmentación de la información.
Modelo relacional
Está basado en conceptos muy sencillos y se le asocia la teoría de normalización de relaciones, que pretende eliminar comportamientos anómalos de las relaciones y la eliminación de redundancias superfluas.
El modelo relacional (SGBDR)
Es un software que almacena los datos en forma de tablas.
Funciones de un SGBDR
- Definición de tablas y relaciones
- Ayuda a la introducción, modificación y borrado de datos
- Realización de consultas
- Realización de formularios
- Realización de informes
- Módulo para crear programas o aplicaciones
Lenguajes de consulta formales
Sirven para que el usuario solicite información de la base de datos. Existen 2 tipos:
- Lenguajes procedimentales: el usuario le ordena al sistema que realice una serie de operaciones con la base de datos para obtener el resultado deseado.
- Lenguajes no procedimentales: el usuario describe la información que desea sin indicar un procedimiento específico para obtenerla.