Base De Datos
La principal diferencia entre estos tres modelos es que en el diseño conceptual se obtienen todos los requerimientos, en el diseño lógico se convierten todos lo requerimientos en entidades con su respectivos atributos y en el diseño físico se realiza la construcción de tablas con sus respectiva relaciones entre ellas.El diseño físico se divide de cuatro fases, cada una de ellas compuesta por una serie de pasos:
1. Traducir el esquema lógico global para el SGBD específico:
- Diseñar las relaciones base para el SGBD.
- Diseñar las reglas para el SGBD.
2. Diseñar la representación física:
- Analizar las transacciones.
- Escoger las organizaciones de ficheros.
- Escoger los índicessecundarios.
- Estimar la necesidad de espacio en disco.
3. Diseñar los mecanismos de seguridad.
- Diseñar las vistas de los usuarios.
- Diseñar las reglas de acceso.
4. Monitorizar y afinar el sistema.
El objetivo de la etapa de Diseño Físico es producir una descripción de la implementación de la base de datos en memoria secundaria, incluyendo a su vez las estructuras dealmacenamiento y los métodos de acceso que se utilizarán para conseguir un acceso eficiente a los datos.
Fase 1. Traducción del Esquema Lógico
La primera fase del diseño lógico consiste en traducir el esquema lógico global en un esquema que se pueda implementar en el SGBD escogido. Para ello, es necesario conocer toda la funcionalidad que éste ofrece.
El diseñador deberásaber:
- Si el sistema soporta la definición de claves primarias y foráneas.
- Si el sistema soporta la definición de datos requeridos (es decir, si se pueden definir atributos como no nulos).
- Si el sistema soporta la definición de dominios.
- Si el sistema soporta la definición de reglas.
- ¿Cómo se crean las relaciones base en el sistema?
1.1 Diseñar lasRelaciones Base para el SGBD
Las relaciones base se definen mediante el lenguaje de definición de datos del SGBD. Para ello, se utiliza el esquema lógico global y el diccionario de datos. El esquema lógico consta de un conjunto de relaciones junto a sus atributos, clave primaria y claves foráneas, si las tiene, así como sus reglas de integridad. En el diccionario de datos por otro lado, sedescriben cada uno de los atributos definiendo a la vez, los tipo de datos, longitud y restricciones de dominio, el valor por defecto (opcional) y si admite o no valores nulos.
Ejemplo:
CREATE DOMAIN string AS VARCHAR(15);
CREATE DOMAIN tipo AS VARCHAR(1)
CHECK (VALUE IN (‘O‘,’A’,’E',’P') );
CREATE TABLE empleado (
ci INT4 NOT NULL,
nombre STRING NOT NULL,
tipoTIPO NOT NULL DEFAULT ‘O',
sueldo INT4 NOT NULL,
ci_jefe INT4 NOT NULL,
PRIMARY KEY (ci),
FOREIGN KEY (ci_jefe) REFERENCES propietario
ON DELETE cascade );
1.2 Diseñar las Reglas para el SGBD
Las actualizaciones que se realizan sobre las relaciones de la Base de Datos de una organización deben observar ciertas restricciones propias de la misma. Algunos SGBDproporcionan mecanismos que permiten definir estas restricciones y vigilan que no se violen.
Ejemplo:
No es posible que un empleado tenga un sueldo menor que cero, por lo tanto, se debe definir entonces una restricción en la sentencia CREATE TABLE de la relación EMPLEADO.
- Creación de la Restricción:
CREATE FUNCTION validar_sueldo() RETURNS trigger as $validar$
BEGIN
IF NEW.sueldo< 0 THEN
RAISE EXCEPTION ‘% no puede tener un sueldo negativo’,
NEW.nombre;
END IF;
RETURN NEW;
END;
$validar$ LANGUAGE plpgsql;
CREATE TRIGGER validar BEFORE INSERT OR UPDATE
ON empleado FOR EACH ROW EXECUTE PROCEDURE
validar_sueldo();
Fase II. Diseño de la Representación Física
Uno de los objetivos principales del diseño físico es almacenar los datos de modo...
Regístrate para leer el documento completo.