310 likes | 476 Views
Introducción a los Sistemas de Bases de Datos. SBD. Gabriel Vásquez Dpto. Electrónica, Instrumentación y Control. Origen de los sistemas de bases de datos La necesidad de gestionar cada vez mayores cantidades de información por computador. Requerimientos Almacenar la información.
E N D
Introducción a los Sistemas de Bases de Datos SBD Gabriel Vásquez Dpto. Electrónica, Instrumentación y Control
Origen de los sistemas de bases de datos La necesidad de gestionar cada vez mayores cantidades de información por computador. Requerimientos • Almacenar la información. • Controlar la coherencia y seguridad de los datos. • Consultar su contenido. • Actualizar (modificar o borrar) la información previamente guardada.
información debe entenderse en un sentido amplio, es decir, información no son sólo los datos, sino también las relaciones entre ellos y las restricciones que deben cumplir.
Ejemplo: Sistema de gestión de personal de una empresa Cedula Nombre Fecha de Nacimiento Cargo Etc…
El sistema debería ser capaz de controlar automáticamente que por ejemplo la cedula no pueda repetirse (Restricción de unicidad en la cédula) se pretende disponer de un programa o conjunto de programas (aplicación informática) que, permitiendo insertar, obtener, modificar y borrar datos, incorpore capacidades adicionales de control sobre ellos.
Si no se sabe nada de SGBD la primera opción podría ser programar una aplicación en algún lenguaje manejando sistemas de archivos para almacenar la información Hacer persistencia de la información a través de ficheros planos.
Problemas? Supongamos que se pretenda encontrar a los que están en un cierto intervalo de edades, o que se desee localizar a los que tienen determinados conocimientos u otros requerimientos similares. Es decir, se pretenderán búsquedas por condiciones variables, las cuales deberían estar contempladas en la aplicación.
Como estas, hay una serie de operaciones y circunstancias que son comunes a casi todas las aplicaciones de gestión de información. Años 60 se crea una herramienta que ofreciendo capacidades generales de gestión de información permite efectuar los desarrollos precisos para abordar la especificidad de cada problema concreto.
Se crean los sistemas de gestión de bases de datos. Que es una base de datos? colección organizada de datos y sus relaciones, relativa a un problema concreto, que puede ser compartida por un conjunto de usuarios/ aplicaciones
Que es un SGBD? En consecuencia, un Sistema Gestor de Bases de Datos es un programa o conjunto de programas que sirve para mantener bases de datos y responder a consultas sobre ellas.
Objetivos de trabajar con técnicas de bases de datos disfrutar de una visión abstracta de los datos que facilite el desarrollo y uso de las aplicaciones. Para ello, el sistema esconde ciertos detalles de cómo se almacenan y mantienen los datos, ofreciendo una visión sencilla de la estructura y del manejo de estos a través de distintos niveles de abstracción.
Niveles de Abstracción Cada usuario, dependiendo del rol que desempeñe, observará el sistema a través de uno de estos niveles. Nivel de Aplicación Nivel lógico Nivel Físico
Nivel de Aplicación El nivel más alto de observación del sistema corresponde al usuario final. Por ello, es el que tendrá una percepción más simple del conjunto, ya que sólo percibirá los datos según la visión que le den los programas (la aplicación informática) que utilice para acceder a ellos.
Nivel Lógico En este nivel se describen los datos que se almacenan en la base de datos, las relaciones que existen entre ellos y las restricciones que deben cumplir Para describir los datos se pueden utilizar diferentes modelos
Nivel Físico o Nivel Interno Se describe cómo se almacenan realmente los datos
RAZONES QUE JUSTIFICAN EL USO DE BASES DE DATOS • Flexibilidad de adaptación a cada problema concreto. • Optimización en la gestión de la información para facilitar el acceso a los datos. • Independencia física y lógica de los datos. • Control de la integridad de los datos. • Garantía sobre la consistencia de la información. • Facilidad de acceso concurrente. • Protección ante fallos del sistema. • Seguridad ante accesos restringidos.
Adaptación a cada problema En el Nivel Lógico se describen los datos, las relaciones que existen entre ellos y las restricciones que deben cumplir. A esta descripción, que responde a la especificidad de cada caso concreto, se le asigna un nombre (el de la base de datos), bajo el cual es reconocida por el SGBD. Este es el encargado de asegurar que la información que se procese responda al ordenamiento descrito en el Nivel Lógico. Queda claro que un mismo SGBD puede soportar diferentes bases de datos, cada una relativa a un problema distinto.
Optimización en la gestión de la información Los SGBD incorporan procedimientos de almacenamiento, acceso y recuperación de datos concebidos para un uso general. Uso de lenguajes estandarizados. SELECT nombre, apellidos FROM Empleados WHERE nivel_ estudios = “SUPERIOR"
Independencia física y lógica de los datos Capacidad para hacer cambios en el nivel físico y/o lógico sin necesidad de hacer cambios sustanciales en la aplicación Cambiar la BD de un computador a otro. Cambiar la estructura de las tablas de la BD.
Integridad de los datos • De unicidad: Por ejemplo, no poder repetir la cédula en una tabla de empleados. • De referencia entre tablas: Por ejemplo, no poder efectuar un pago (insertar una nueva fila en la tabla de pagos) a un empleado si su cédula no figura en la tabla de empleados. • Otras: Por ejemplo, que el estado civil sólo pueda ser: soltero, casado, viudo o divorciado. (Dominio de valores). O que, en una operación de pago, la cédula del que paga no debe coincidir con la cédula del que cobra. (Regla de negocio).
Consistencia de la base de datos Consistencia es un término más amplio que el de integridad. Podría definirse como la coherencia entre todos los datos de la base de datos. Cuando se pierde la integridad también se pierde la consistencia. Pero la consistencia también puede perderse por razones de funcionamiento
Ejemplo de perdida de consistencia Sean A y B dos cuentas bancarias, se debe mantener la suma de los saldos de ambas. si después de restar a la cuenta A, la cantidad a transferir, por algún motivo no se suma la misma cantidad a la cuenta B, la base de datos pierde su consistencia.
…Ejemplo perdida de consistencia El proceso cuenta con dos operaciones que deben realizarse ambas o ninguna. Concepto de Transacción La correcta gestión de transacciones garantiza que se conserva la consistencia de la base de datos.
Facilidad de acceso concurrente Las aplicaciones de bases de datos, generalmente, están concebidas para que la información sea compartida por un conjunto de usuarios. La interacción «simultánea» sobre los datos puede dar lugar a estados de inconsistencia.
Ejemplo de acceso concurrente Una cuenta familiar tiene un saldo de 2.000 US$. Prácticamente al mismo tiempo, el marido y la mujer acuden a diferentes cajeros automáticos a retirar 120 y 150 US$. Si los dos programas actúan concurrentemente, ambos pueden leer el saldo 2.000 US$ , uno de ellos, tomaría la cantidad de 120 US$ y, el otro, de 150 US$. Al dar la orden para aceptar la operación, el primer programa efectuaría la diferencia 2.000 — 120 = 1.880 y grabaría este resultado como saldo y el segundo programa calcularía 2.000 — 150 = 1.850 que también lo grabaría como saldo. Por lo que, dependiendo de cuál de las dos operaciones se procesase antes, el saldo resultante podría ser 1.880 US$ o 1.850 US$ que no responderían a la realidad que sería 2.000 — 120 — 150 = 1.730 US$.
Protección ante fallos del sistema Estos se basan en espacios de memoria intermedios, replicación de la base de datos y copias de seguridad.
Seguridad ante accesos restringidos Capacidad de definir diferentes tipos de usuarios que el sistema es capaz de reconocer mediante el uso de claves de acceso Las autorizaciones de acceso a datos pueden ser: de lectura, de inserción, de actualización, de borrado o combinaciones de ellas. Autorizaciones para cambio en el nivel lógico.
¿Preguntas? Gabriel Vásquez Dpto. Electrónica, Instrumentación y Control