Clase 9 PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 49

BASES DE DATOS

RELACIONALES

Clase N° 09

14 – NOVIEMBRE - 2022
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
El proceso de normalización consiste en designar y utilizar reglas a las relaciones obtenidas tras el paso
del modelo entidad-relación al modelo relacional, lo que se busca es que la estructura de las tablas
proporcione un bajo nivel de redundancia, minimice hasta donde sea posible la inconsistencia y sea
capaz de proporcionar acceso eficiente a los datos facilitando su gestión posterior, evitando problemas
de actualización de los datos. Las formas normales son los niveles de calidad de un modelo relacional
que definen las reglas que estos deben respetar, estas permiten verificar la solidez del diseño.

La normalización de bases de datos relacionales se realiza para:


• Resguardar la integridad de los datos.
• Prevenir la redundancia de datos.
• Optimizar el espacio de almacenamiento.
• Evitar la eliminación de datos de manera accidental.
• Reducir los inconvenientes al momento de actualizar los datos en las tablas.
• Disminuir el nivel de dificultad en el acceso e interpretación de los datos.
• Minimizar el tiempo y complejidad en el proceso de revisión de las bases de datos.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
En la teoría de bases de datos relacionales, las formas normales (FN) entregan los criterios para obtener
el grado de vulnerabilidad de una tabla a inconsistencias y anomalías lógicas. Entre mayor sea la forma
normal aplicable a una tabla, menor vulnerabilidad presentará en cuanto a inconsistencias y anomalías.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Antes de comenzar con los conceptos de formas normales se verán algunas definiciones:

Dependencia funcional: A → B Representa que B es funcionalmente dependiente de A.


Para un valor de A siempre le corresponde el mismo valor de B. Ejemplo: Si A es el Rut, y B el Nombre,
entonces para un número de Rut, le corresponde siempre el mismo nombre de titular.

Dependencia funcional completa: A → B Si B depende de A completamente.


Se considera este tipo de dependencia cuando A está compuesto por más de un atributo. Ejemplo, se
tiene que A corresponde al atributo compuesto: Rut_Empleado + Cod_depto y B es Nombre_depto. En
este caso B depende del Cod_depto, pero no del Rut_Empleado. En este caso, no hay dependencia
funcional completa.

Dependencia transitiva: A→B→C. Si A→B y B→C.


Entonces se tiene que C depende de forma transitiva de A. Ejemplo: Sea A el Rut de un alumno, B la
ciudad en la que vive y C la comuna. Es un caso de dependencia transitiva A→ B → C.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Determinante funcional
Todo atributo, o conjunto de ellos, de los que depende algún otro atributo. Ejemplo: El Rut es un
determinante funcional pues atributos como nombre, dirección, ciudad, etc, dependen de él.

Dependencia multivaluada: A→→B.


Son un tipo de dependencias en las que un determinante funcional no implica un único valor, sino un
conjunto de ellos. Un valor de A siempre implica varios valores de B. Ejemplo: CursoUniversitario →→
Modalidad. Para el primer curso siempre va a aparecer en el campo Modalidad uno de los siguientes
valores: Ciencias Naturales, Ciencias Sociales o Matemáticas. El segundo curso es igual.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Reglas o niveles de normalización

Para normalizar una base de datos se dispone principalmente de 3 reglas, las que son conocidas como
Forma normal, que van de la 1 a la 3, y si la base de datos cumple con cada regla, se dice que está en la
"primera o segunda o tercera forma normal". Si bien es cierto existen otros niveles de normalización, en
general, las primeras tres formas normales son el mínimo que deben cubrir la mayoría de las bases de
datos.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Primera Forma Normal: 1FN

Una Relación está en 1FN si, y solo si, cada atributo es atómico.

Se puede observar que esta tabla no está en 1FN debido a que el campo Telefonos_alumnos cuenta con
más de un dato dentro de una sola celda y por ende no es un campo cuyos valores sean atómicos. La
solución sería la siguiente:
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Segunda Forma Normal:

2FN Una relación se encuentra en 2FN si, y solo si, está en 1FN. Todos los atributos que no forman parte
de la Clave Principal tienen dependencia funcional completa de ella.

Continuando con el ejemplo anterior. Se utilizará la siguiente tabla:


CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Se examinarán las dependencias funcionales. El gráfico que las representa es el siguiente:
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Cada vez que aparece un Rut aparecerá el Nombre_alumno correspondiente, y la Ciudad_alumno
correspondiente. Eso quiere decir que: Rut → Nombre_alumno y Rut → Ciudad_alumno. Además,
siempre que aparece un Curso aparecerá el Tutor_alumno respectivo. Eso quiere decir, Curso → Tutor_
alumno. Los atributos Nombre_alumno y Ciudad_alumno no dependen funcionalmente de Curso, y el
atributo Tutor_alumno no depende funcionalmente del Rut.

El único atributo que sí depende de forma completa de la clave compuesta Rut y Curso es
Fecha_matricula: (Rut, Curso) → Fecha_matricula.

Al momento de seleccionar la Clave Primaria de una tabla se debe elegir un atributo o conjunto de ellos
de los que dependan funcionalmente del resto de los atributos. Junto con lo anterior, debe ser una
dependencia funcional completa. Si se elige el Rut como clave primaria, se tiene un atributo
(Tutor_alumno) que no depende funcionalmente de él. Si se elige Curso como clave primaria, existen
otros atributos que no dependen de él.
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Tercera Forma Normal: 3FN

Una relación está en 3FN si, y solo si, está en 2FN y no existen dependencias transitivas. Todas las
dependencias funcionales deben ser respecto a la clave principal.

Continuando con el ejemplo anterior. Se trabajará con la siguiente tabla:


CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Las dependencias funcionales existentes son las siguientes. Si se observa, existe una dependencia
funcional transitiva: Rut → Ciudad_alumno → Comuna_alumno
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
Para que la tabla esté en 3FN, no pueden existir dependencias funcionales transitivas. Para solucionarlo
se deberá crear una nueva tabla. El resultado es:
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
RESULTADO FINAL
CONCEPTOS Y APLICACIÓN DE NORMALIZACIÓN: 1FN-2FN-3FN
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Un diagrama o modelo entidad-relación es la forma gráfica de la expresión de una base de datos, es una
herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema
de información, así como sus interrelaciones y propiedades.

El modelo debe estar compuesto principalmente por:

• Entidades: Una entidad es una «cosa» u «objeto» ya sean reales o abstractos que se diferencian
entre sí.

• Relaciones: Una relación es una asociación entre varias entidades.

• Atributos: Estos definen las características de las entidades. Cada entidad posee diferentes atributos,
que en conjunto describen a esta entidad.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Otros conceptos relacionados importantes

Cardinalidad

Otra de las características importantes que se debe considerar en este modelo es la cardinalidad de
cada extremo en una relación. La cardinalidad expresa cuántas del conjunto de entidades de un
extremo de la relación están relacionadas con la cantidad de entidades del conjunto del otro extremo.
Pueden ser “uno a uno”', “uno a varios”' o “varios a varios”’.

Por ejemplo, un artículo puede ser escrito por un solo autor o por varios, pero nunca por ninguno; un
autor puede pertenecer a exactamente una institución (no para cero o varias); un artículo puede tener
cero, uno o varios experimentos. Finalmente, un autor puede escribir muchos artículos, o ninguno.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Llaves

Es un atributo de una entidad, la cual identifica a la entidad de los demás registros. Una forma de
representar en diagramas o textos la llave primaria es agregando “#” como prefijo de la llave primaria
(PK) o subrayando el nombre de la llave primaria.

Tipos de llaves:

• Llave primaria: Corresponde a un conjunto de uno o más atributos de una tabla, que tomados en
conjunto permiten identificar un registro como único, es decir, en una tabla es posible determinar
cuál es un registro exactamente sólo con conocer la llave primaria.

• Llave primaria compuesta: Es una llave primaria compuesta por varios atributos de una tabla, por lo
general una llave primaria compuesta está formada por dos llaves foráneas de la tabla.

• Llave foránea: Es el atributo de una entidad que existe como dependencia en otra entidad, esto
quiere decir que es una columna o grupo de columnas de una tabla que contiene valores que
coinciden con la clave primaria de otra tabla.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
La estructura lógica general de una base de datos se puede expresar gráficamente mediante un
diagrama entidad relación, el cual se compone de:

• Rectángulos, que representan conjuntos de entidades.

• Elipses, que representan atributos.

• Rombos, que representan relaciones entre conjuntos de entidades.

• Líneas, que unen los atributos con los conjuntos de entidades y los conjuntos de entidades con las
relaciones.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
La estructura lógica general de una base de datos se puede expresar gráficamente mediante un
diagrama entidad relación, el cual se compone de:

• Rectángulos, que representan conjuntos de entidades.

• Elipses, que representan atributos.

• Rombos, que representan relaciones entre conjuntos de entidades.

• Líneas, que unen los atributos con los conjuntos de entidades y los conjuntos de entidades con las
relaciones.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Se seleccionan las entidades:

Se seleccionan los atributos de cada entidad:


DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Se relacionan las entidades:
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Diseño Lógico: Modelo Relacional

Es una descripción de la estructura de la base de datos en términos de las estructuras de datos que
puede procesar un tipo de SGBD.
DIAGRAMA ENTIDAD RELACIÓN Y MODELO RELACIONAL
Diseño Físico (o de máquina)

Es una descripción de la implementación de una base de datos: las estructuras de almacenamiento y los
métodos utilizados para tener un acceso eficiente a los datos. Por ello, el diseño físico depende del
esquema físico se expresa mediante su lenguaje de definición de datos. Es una implementación de una
base de datos en las estructuras de almacenamiento y los métodos eficiente a los datos.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
El diccionario de datos es una recopilación de información sobre los datos; es compilado por los
analistas de sistemas para guiarse a través del análisis y diseño. Como documento, el diccionario de
datos recopila y coordina términos de datos específicos, además de confirmar lo que significa cada
término para distintas personas en la organización.

Los sistemas actuales son grandes y complejos, difíciles de controlar y manejar; para facilitar estas
tareas se utilizan los Diccionarios de Datos, quienes presentan las siguientes ventajas:

• Un diccionario de datos es un conjunto de metadatos que contienen las características lógicas y


puntuales de los datos que se van a utilizar en el sistema, incluyendo descripción, alias, contenido y
organización.

• Los diccionarios se desarrollan durante el análisis de flujo de datos y ayudan a los analistas que
participan en la determinación de los requerimientos del sistema, evitando así las ambigüedades, su
contenido también se emplea durante el diseño del proyecto.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
Componentes

Aunque el diccionario de datos contiene información sobre los datos y procedimientos, hay una
colección más grande de información sobre el proyecto: el repositorio y puede contener lo siguiente:

1. Información sobre los datos que mantiene el sistema, incluyendo flujos de datos, almacenes de
datos, estructuras de registros, elementos, entidades y mensajes.

2. Lógica de procedimiento y casos de uso.

3. Diseño de pantallas e informes.

4. Relaciones de datos, como la forma en que una estructura de datos está vinculada con otra.

5. Requerimientos del proyecto y entregables finales del sistema.

6. Información administrativa del proyecto, como calendarios de entrega, logros, cuestiones que hay
que resolver y usuarios del proyecto.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
Diseño

Definición de los flujos de datos: Por lo general, se define primero los flujos de datos. Las entradas y
salidas del sistema se determinan a partir de las entrevistas, de observar a los usuarios y analizar los
documentos, además de otros sistemas existentes. Debe contener la siguiente información:

1. ID, un número de identificación opcional. Algunas veces el ID se codifica mediante un esquema para
identificar al sistema y la aplicación en el mismo.

2. Un nombre descriptivo único para este flujo de datos. Este nombre es el texto que debe aparecer en
el diagrama y se debe referenciar en todas las descripciones que utilicen el flujo de datos.

3. Una descripción general del flujo de datos.

4. El origen del flujo de datos. Este origen puede ser una entidad externa, un proceso o un flujo de
datos que provenga de un almacén de datos.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
5. El destino del flujo de datos (los mismos elementos enlistados bajo el origen).

6. Una indicación para determinar si el flujo de datos es un registro que entra o sale de un archivo, o
un registro que contiene un informe, formulario o pantalla. Si el flujo de datos contiene información
que se utiliza entre procesos, se designa como interno.

7. El nombre de la estructura de datos que describe a los elementos que se encuentran en este flujo de
datos.

8. Para un flujo de datos simple, podrían ser uno o varios elementos.

9. El volumen por unidad de tiempo. Los datos podrían ser registros por día o cualquier otra unidad de
tiempo.

10. Un área para comentarios adicionales y anotaciones sobre el flujo de datos.


DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
Estructura

Descripción de las estructuras de datos

Por lo general, para describir las estructuras de datos se utiliza la notación algebraica. Este método
permite al analista producir una vista de los elementos que forman la estructura de datos, junto con la
información sobre los mismos. Por ejemplo, el analista indicará si hay muchos elementos iguales en la
estructura de datos (un grupo repetitivo) o si pueden existir dos elementos mutuamente excluyentes de
cada uno de los otros elementos.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
La notación algebraica utiliza los siguientes símbolos:

1. Un signo de igual (=) significa “está compuesto de”.

2. Un signo positivo (+) significa “y”.

3. Las llaves { } indican elementos repetitivos, también conocidos como grupos repetitivos o tablas
repetitivas.

4. Puede haber un elemento repetitivo o varios de ellos en el grupo. El grupo repetitivo puede tener
condiciones, como un número fijo de repeticiones, o límites superiores e inferiores para el número
de repeticiones.

5. Los corchetes [ ] representan una situación del tipo cualquiera/o (either/or). Puede estar presente
cualquier elemento u otro, pero no ambos. Los elementos que se enlistan entre corchetes son
mutuamente excluyentes.

6. Los paréntesis ( ) representan un elemento opcional. Los elementos opcionales se pueden dejar en
blanco en las pantallas de entrada de datos y pueden contener espacios o ceros para los campos
numéricos en las estructuras de archivos.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
Estructuras de datos lógicas y físicas

Cuando se definen las estructuras de datos por primera vez, se incluyen solo los elementos de datos que
el usuario puede ver, como nombre, dirección y saldo actual. Esta etapa es el diseño lógico que muestra
lo que la empresa necesita para sus operaciones diarias. Dentro de lo que es la interacción humana con
el computador, es importante que el diseño lógico refleje con precisión el modelo mental de la forma en
que el usuario ve el sistema. Al utilizar el diseño lógico como base, el analista puede diseñar las
estructuras de datos físicas, que incluyen los elementos adicionales necesarios para implementar el
sistema.
DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
Los siguientes son ejemplos de elementos de diseño físicos:

1. Los campos clave que se utilizan para localizar registros en la tabla de una base de datos. Un
ejemplo es un número de artículo, que la empresa no necesita para operar, pero es necesario para
definir y localizar los registros de computadora.

2. Los códigos para identificar el estado de los registros maestros, como si un empleado está activo (si
trabaja en la actualidad) o inactivo. Podemos mantener dichos códigos en archivos que produzcan
información fiscal.

3. Los códigos de transacción se utilizan para identificar los tipos de registros cuando un archivo
contiene distintos tipos de éstos. Un ejemplo es un archivo de créditos que contiene registros para
los artículos devueltos, así como registros de pagos.

4. Las entradas de grupos repetitivos que contienen el conteo de los elementos en el grupo.

5. Los límites en cuanto al número de elementos en un grupo repetido.

6. La contraseña que utiliza un cliente para acceder a un sitio Web seguro.


DICCIONARIO DE DATOS: COMPONENTES, DISEÑO Y ESTRUCTURA
CREACIÓN DEL DICCIONARIO DE DATOS
Las entradas en el diccionario de datos se pueden crear después de haber completado el diagrama de
flujo de datos, o construir a medida que este se desarrolle. El uso de la notación algebraica y registros
estructurales permite al analista desarrollar el diccionario de datos y los diagramas de flujo de datos
mediante una metodología arriba-abajo.

Por ejemplo, el analista puede crear un flujo de datos Diagrama 0 después de las primeras entrevistas y
al mismo tiempo crear las entradas preliminares en el diccionario de datos. Por lo general estas
entradas consisten en los nombres de los flujos de datos que se encuentran en el diagrama de flujo de
datos y sus correspondientes estructuras de datos.

Después de realizar varias entrevistas adicionales con los usuarios para aprender sobre los detalles del
sistema y las formas en que interactúan con él, el analista expandirá el diagrama de flujo de datos y
creará los diagramas hijos. Después hay que modificar el diccionario de datos para incluir los nuevos
registros estructurales y los elementos que se hayan deducido de entrevistas posteriores, de la
observación y del análisis de los documentos.
CREACIÓN DEL DICCIONARIO DE DATOS
Cada nivel de un diagrama de flujo de datos debe usar datos apropiados. El Diagrama 0 debe incluir solo
formularios, pantallas, informes y registros. A medida que se crean los diagramas hijos, el flujo de datos
que entra y sale de los procesos se vuelve cada vez más detallado, incluyendo los registros estructurales
y los elementos.
CREACIÓN DEL DICCIONARIO DE DATOS
Entre los tipos de información que debe guardar el sistema se pueden mencionar:
• Nombres de las relaciones.
• Nombres de los atributos de cada relación.
• Dominios y las longitudes de los atributos.
• Nombres de las vistas definidas en la base de datos y las definiciones de esas vistas.
• Restricciones de integridad (Ejemplo, las restricciones de las claves).

Además, muchos sistemas almacenan de los usuarios del sistema los siguientes datos:
• Nombres de los usuarios autorizados.
• Información de las cuentas de usuarios.
• Contraseñas u otra información usada para autenticar a los usuarios.

Además, se puede guardar información estadística y descriptiva sobre estos asuntos:


• Número de tuplas de cada relación.
• Método de almacenamiento utilizado para cada relación (por ejemplo, con agrupaciones o sin
agrupaciones).
INTEGRIDAD REFERENCIAL
Es un sistema de reglas y está relacionada con el concepto de clave foránea. Concretamente, la clave
externa de una tabla de referencia siempre debe aludir a una fila válida de la tabla a la que se haga
referencia. Lo que se busca es asegurar que los registros de tablas relacionadas son válidos y que no se
eliminen o modifiquen datos relacionados de forma accidental produciendo errores de integridad. Por
ejemplo, se tiene las siguientes relaciones:
TIPOS DE CLAVES
Clave primaria

Corresponde a una columna o un conjunto de columnas que identifican de forma única a una fila
específica en una tabla. La clave primaria brinda una manera importante de distinguir una fila de otra.
Subrayar las columnas o la colección de columnas que componen la clave primaria por lo general es la
mejor manera de representar la clave primaria de todas las tablas de la base de datos.
TIPOS DE CLAVES
Clave foránea

Una clave foránea en una base de datos relacional es una clave que se usa en una tabla secundaria y
que coincide con la clave primaria en una tabla primaria relacionada. Las claves foráneas pueden tener
valores duplicados (multiplicidad) en la tabla secundaria, mientras que para las claves primarias eso no
es posible. El uso adecuado de claves foráneas permite exigir la integridad referencial.
TIPOS DE CLAVES
Clave candidata

La clave candidata es aquella que puede identificar de forma única a cada tupla de la relación. De entre
ellas se escoge la clave primaria.
TIPOS DE CLAVES
Clave candidata

La clave candidata es aquella que puede identificar de forma única a cada tupla de la relación. De entre
ellas se escoge la clave primaria.
TIPOS DE CLAVES
Clave alternativa

Es aquella clave candidata que no fue elegida como clave primaria, pero que alternativamente puede
servir para identificar de forma única las tuplas de una relación
IDEAS CLAVE
Ejemplo de un diagrama Entidad-Relación:
IDEAS CLAVE
Por medio del siguiente Cuadro sinóptico, se aprecia el concepto de normalización y sus características
principales:
IDEAS CLAVE
Cuadro sinóptico modelo entidad- relación
IDEAS CLAVE
Mapa conceptual Normalización
MUCHAS GRACIAS

También podría gustarte