Anda di halaman 1dari 13

UNIVERSIDAD NACIONAL DEL CENTRO DEL PERU

FACULTAD INGENIERIA DE SISTEMAS

Modelamiento de Base de Datos


MODELO LOGICO

ING. RAFAEL ROJAS BUJAICO

MODELO LOGICO
El diseo lgico de una base de datos consta de dos etapas: - El diseo lgico estndar - El diseo lgico especfico. En el Diseo Lgico Estndar, se toma el esquema conceptual resultante de la fase de diseo conceptual, y teniendo en cuenta los requisitos de proceso, de construye un Esquema Lgico Estndar (ELS), que se apoya en un Modelo Lgico Estndar (MLS), que ser el mismo modelo de datos soportado por el SGBD a utilizar, pero sin las restricciones de ningn producto comercial en concreto. Una buena forma de describir el ELS es utilizando el lenguaje estndar del MLS (por ejemplo SQL).

En la fase de diseo lgico, adems de las herramientas ya descritas (MLS, MLE, lenguajes SQL), se disponen de otras que permiten establecer un buen diseo lgico, como por ejemplo la normalizacin, la desnormalizacin.

Pasos del esquema conceptual al esquema lgico estndar


Lo primero que hay que realizar en la fase de diseo lgico, es obtener el esquema lgico estndar, a partir del esquema conceptual obtenido en la primera fase. Primero se describen las Reglas Bsicas para convertir los tipos de Entidad, Relaciones y Atributos. Segundo se muestran las reglas especializadas para convertir las relaciones opcionales 1-M, jerarquas de generalizacin y relaciones 1-1.
A. REGLAS BSICAS DE CONVERSIN: - Convierte todo lo que est en un Diagrama Entidad Relacin excepto las jerarquas de Generalizacin.

1. Regla del tipo de Entidad: Cada tipo de Entidad (excepto los subtipos) se convierte en una tabla. La llave primaria del tipo de Entidad (si no es dbil) se convierte en la llave primaria de la tabla. Los atributos del tipo Entidad se convierten en las columnas de la tabla. Es decir una entidad se transforma en una relacin: esto es, cada entidad genera una tabla, con sus mismos atributos, incluyendo las claves. 2. Regla de Relacin 1-M: Cada relacin 1-M se convierte en una llave fornea en la tabla que corresponda al tipo de entidad hija (el tipo de entidad cerca del smbolo de pata de cuervo). Si la cardinalidad mnima del lado madre de la relacin es 1, la llave fornea no debe aceptar valores nulos. Importa las claves de la entidad con las que se relaciona: cada relacin con cardinalidad 1-N importa los atributos clave que contiene la entidad con cardinalidad N.

3. Regla de Relacin M-N: Cada relacin de M-N se convierte en una tabla separada. La llave primaria de la tabla es una combinacin de llaves formada por las llaves primarias de los tipos de entidad que participan en la relacin M-N. Las relaciones entre entidades con cardinalidad M-N generan una tabla, con los atributos clave de ambas entidades. 4. Regla de Dependencia Identificable: Cada relacin identificable (representada por una lnea de relacin contnua) agrega un componente a la llave primaria. La llave primaria de la tabla que corresponda a la entidad dbil est formada por: i. La llave local subrayada (si es que existe) de la entidad dbil. ii. La(s) llave(s) primaria(s) de l(os) tipo(s) de entidad conectada por la relacin identificable. Cada relacin dependiente, importa la clave de la otra entidad, como clave.

B. CONVERSIN DE RELACIONES OPCIONALES 1-M: - La llave fornea resultante contiene valores nulos, recuerde que una relacin con una cardinalidad mnima de 0 es opcional. - Para evitar los valores nulos cuando se convierte una relacin 1-M opcional se puede aplicar la regla 5. 5. Regla Opcional de la Relacin 1-M: Cada relacin 1-M con la cardinalidad mnima de 0 en el lado de la madre se convierte en una tabla nueva. La llave primaria de la tabla nueva es la llave primaria del tipo de entidad del lado de la hija (muchos) de la relacin.
El uso de la Regla 5 en lugar de la Regla 2 evita que haya valores nulos en las llaves forneas, a la vez que genera tambin ms tablas.

En muchas base de datos la generalizacin de tablas adicionales puede ser ms importante que evitar los valores nulos.

C. CONVERSIN DE JERARQUAS DE GENERALIZACIN: - El alcance para convertir las jerarquas de generalizacin imita la notacin entidad-relacin tanto como es posible. La Regla 6 convierte cada tipo de entidad de jerarqua de generalizacin en una tabla. 6. Regla de Jerarqua de Generalizacin: Cada tipo de entidad de una jerarqua de generalizacin se convierte en una tabla. Las columnas de una tabla son los atributos correspondientes a un tipo de entidad mas la llave primaria del tipo de entidad madre. Para cada tabla que represente a un subtipo, se define una restriccin de llave fornea que apunta a la tabla que corresponde a un tipo de entidad madre.

D. CONVERSIN DE RELACIONES 1-1: - Las relaciones de 1-1 no son comunes. Pueden ocurrir cuando las entidades con identificadores separados estn muy relacionadas. La regla 7 convierte las relaciones 1-1 en dos llaves forneas, a menos de que generen muchos valores nulos. 7. Regla de la Relacin 1-1: Cada relacin 1-1 se convierte en 2 llaves forneas. Si la relacin es opcional con respecto a uno de los tipos de entidad, se puede eliminar la llave fornea correspondiente para deshacerse de los valores nulos.

Etapas en el diseo lgico


Etapa de Estructuracin: donde el objetivo primordial es encontrar un
esquema que sea una representacin fidedigna del mundo real. La forma de lograrlo es mediante el particionamiento horizontal, para evitar valores

nulos, y el proceso de normalizacin.

Etapa de Reestructuracin: donde se tienen en cuenta aspectos ms


ligados con el nivel fsico, y que consiste el modificar el esquema obtenido en
la fase anterior para adaptarlo a las consideraciones de eficiencia. Esta etapa, que debera ser ajena al diseo lgico, se considera aqu debido a la falta de flexibilidad de los SGBD, obligando a trasladar a esta etapa aspectos mas relacionados con el nivel fsico. La forma de lograrlo es mediante la desnormalizacin, y el particionamiento, bien sea horizontal, vertical o mixto

Particionamiento Horizontal de Relaciones


Como su propio nombre indica, el particionamiento horizontal consiste en dividir longitudinalmente las filas que forman una tabla, esto es, separar las filas que conforman una relacin, para llevarlas a otra.

Particionamiento vertical de relaciones


El particionamiento vertical de relaciones consiste, al contrario que en el caso del particionamiento horizontal, en dividir las tablas de forma transversal, es

decir, crear nuevas tablas con la informacin correspondiente a un


subconjunto de los atributos de las mismas, pero manteniendo intacta la informacin correspondiente a las filas.

El resultado es que tenemos el mismo nmero de filas en todas las tablas, pero ms tablas con menos atributos. Este proceso se realiza en la reestructuracin, ya que las ventajas que ofrece estn relacionadas con la eficiencia. Entre ellas destacan: Aumento de la concurrencia: cada vez que un usuario accede a una fila de la tabla, sta se bloquea, es decir, no puede ser accedida por otro usuario. Al dividir una tabla en ms, la concurrencia aumenta, es decir, si un usuario accede a una fila de una tabla, otro podr acceder a la misma fila en otra tabla. Aumento de la velocidad de consulta / actualizacin: al ser las tablas ms pequeas, una consulta o actualizacin podr realizarse en un menor tiempo, ya que se necesitarn menos accesos a disco para completar la accin. Disminucin de tiempos de consulta de informacin irrelevante: si se quiere consultar un solo atributo de una tabla, se deber acceder a toda la fila, con lo que ello supone. En cambio, al reducir el tamao de las filas, la informacin a la que accedemos tendr ms probabilidad de ser utilizada. Por contra, la principal desventaja que tiene este mtodo es el aumento del tiempo de consulta /actualizacin si se desea acceder a dos o ms tablas. Es por ello por lo que hay que realizar un estudio pormenorizado de la probabilidad de consultas que se va a realizar.

Particionamiento mixto
El particionamiento mixto consiste en un hbrido entre ambos tipos de particionamiento. O bien se aplica un particionamiento vertical a una tabla previamente particionada horizontalmente, o bien se aplica un particionamiento horizontal a una tabla particionada verticalmente. Por lo tanto, existen dos opciones: Realizar primero un particionamiento horizontal, por ejemplo para ubicar las distintas filas de una tabla en distintos nodos de una base distribuida, y posteriormente realizar un particionamiento vertical sobre las tablas obtenidas, para conseguir un mayor ajuste de los tiempos de acceso a datos (evitar acceder a datos irrelevantes). Realizar primero un particionamiento vertical, para conseguir disminuir los

tiempos de acceso y posteriormente realizar un particionamiento horizontal


sobre dichas tablas.

Anda mungkin juga menyukai