Dependencia funcional en DBMS: qué es, tipos y ejemplos

¿Qué es la dependencia funcional?

La dependencia funcional (FD) es una restricción que determina la relación de un atributo con otro atributo en un sistema de administración de base de datos (DBMS). La dependencia funcional ayuda a mantener la calidad de los datos en la base de datos. Desempeña un papel vital para encontrar la diferencia entre un buen y un mal diseño de base de datos.

Una dependencia funcional se indica con una flecha "→". La dependencia funcional de X en Y está representada por X → Y. Entendamos la dependencia funcional en DBMS con un ejemplo.

Ejemplo:

Número de empleado Nombre de empleado Salario Ciudad
1 Dana 50000 San Francisco
2 Francis 38000 Londres
3 Andrés 25000 Tokio

En este ejemplo, si conocemos el valor del número de empleado, podemos obtener el nombre del empleado, la ciudad, el salario, etc. Con esto, podemos decir que la ciudad, el nombre del empleado y el salario dependen funcionalmente del número de empleado.

En este tutorial, aprenderá:

  • Términos clave
  • Reglas de dependencias funcionales
  • Tipos de dependencias funcionales en DBMS
  • Dependencia multivalor en DBMS
  • Dependencia funcional trivial en DBMS
  • Dependencia funcional no trivial en DBMS
  • Dependencia transitiva en DBMS
  • ¿Qué es la normalización?
  • Ventajas de la dependencia funcional

Términos clave

A continuación, se muestran algunos términos clave para la dependencia funcional en la base de datos:

Términos clave Descripción
Axioma Axiomas es un conjunto de reglas de inferencia que se utilizan para inferir todas las dependencias funcionales de una base de datos relacional.
Descomposición Es una regla que sugiere que si tiene una tabla que parece contener dos entidades que están determinadas por la misma clave primaria, entonces debería considerar dividirlas en dos tablas diferentes.
Dependiente Se muestra en el lado derecho del diagrama de dependencia funcional.
Determinante Se muestra en el lado izquierdo del diagrama de dependencia funcional.
Unión Sugiere que si dos tablas están separadas y el PK es el mismo, debería considerar colocarlas. juntos

Reglas de dependencias funcionales

A continuación se muestran las tres reglas más importantes para la dependencia funcional en la base de datos:

  • Regla reflexiva -. Si X es un conjunto de atributos e Y es_subconjunto_de X, entonces X tiene un valor de Y.
  • Regla de aumento: cuando x -> y se cumple y c es un conjunto de atributos, entonces ac -> bc también se cumple. Eso es agregar atributos que no cambian las dependencias básicas.
  • Regla de la transitividad: esta regla es muy similar a la regla transitiva en álgebra si x -> y se cumple e y -> z se cumple, entonces x -> z también se cumple. X -> y se llama funcionalmente que determina y.

Tipos de dependencias funcionales en DBMS

Hay principalmente cuatro tipos de dependencia funcional en DBMS. A continuación se muestran los tipos de dependencias funcionales en DBMS:

  • Dependencia multivalor
  • Dependencia funcional trivial
  • Dependencia funcional no trivial
  • Dependencia transitiva

Dependencia multivalor en DBMS

La dependencia de valores múltiples se produce en la situación en la que hay varios atributos de valores múltiples independientes en una sola tabla. Una dependencia multivalor es una restricción completa entre dos conjuntos de atributos en una relación. Requiere que ciertas tuplas estén presentes en una relación. Considere el siguiente ejemplo de dependencia multivalor para comprenderlo.

Ejemplo:

Modelo de auto Maf_year Color
H001 2017 Metálico
H001 2017 Verde
H005 2018 Metálico
H005 2018 Azul
H010 2015 Metálico
H033 2012 gris

En este ejemplo, maf_year y color son independientes entre sí pero dependen de car_model. En este ejemplo, se dice que estas dos columnas son multivalor dependientes de car_model.

Esta dependencia se puede representar así:

car_model -> maf_year

car_model-> color

Dependencia funcional trivial en DBMS

La dependencia Trivial es un conjunto de atributos que se denominan triviales si el conjunto de atributos está incluido en ese atributo.

Entonces, X -> Y es una dependencia funcional trivial si Y es un subconjunto de X. Entendamos con un ejemplo de dependencia funcional trivial.

Por ejemplo:

Emp_id Emp_name
AS555 Harry
AS811 Jorge
AS999 Kevin

Considere esta tabla de con dos columnas Emp_id y Emp_name.

{Emp_id, Emp_name} -> Emp_id es una dependencia funcional trivial ya que Emp_id es un subconjunto de {Emp_id, Emp_name}.

Dependencia funcional no trivial en DBMS

La dependencia funcional, que también se conoce como dependencia no trivial, ocurre cuando A-> B se cumple cuando B no es un subconjunto de A. En una relación, si el atributo B no es un subconjunto del atributo A, entonces se considera como no trivial. dependencia.

Compañía CEO Edad
Microsoft Satya Nadella 51
Google Sundar Pichai 46
manzana Tim Cook 57

Ejemplo:

(Compañía} -> {CEO} (si conocemos la Compañía, conocemos el nombre del CEO)

Pero el CEO no es un subconjunto de la Compañía y, por lo tanto, es una dependencia funcional no trivial.

Dependencia transitiva en DBMS

Una dependencia transitiva es un tipo de dependencia funcional que ocurre cuando t está formada indirectamente por dos dependencias funcionales. Entendamos con el siguiente ejemplo de dependencia transitiva.

Ejemplo:

Compañía CEO Edad
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Company} -> {CEO} (si conocemos a la empresa, conocemos el nombre de su CEO)

{CEO} -> {Age} Si conocemos al director ejecutivo, conocemos la edad

Por lo tanto, de acuerdo con la regla de la regla de dependencia transitiva:

{Company} -> {Age} debería mantenerse, eso tiene sentido porque si conocemos el nombre de la empresa, podemos saber su edad.

Nota: Debe recordar que la dependencia transitiva solo puede ocurrir en una relación de tres o más atributos.

¿Qué es la normalización?

La normalización es un método para organizar los datos en la base de datos que le ayuda a evitar anomalías en la redundancia, inserción, actualización y eliminación de datos. Es un proceso de análisis de los esquemas de relación en función de sus diferentes dependencias funcionales y clave primaria.

La normalización es inherente a la teoría de bases de datos relacionales. Puede tener el efecto de duplicar los mismos datos dentro de la base de datos, lo que puede resultar en la creación de tablas adicionales.

Ventajas de la dependencia funcional

  • La dependencia funcional evita la redundancia de datos. Por lo tanto, los mismos datos no se repiten en varias ubicaciones de esa base de datos.
  • Le ayuda a mantener la calidad de los datos en la base de datos.
  • Le ayuda a definir los significados y las limitaciones de las bases de datos.
  • Te ayuda a identificar malos diseños.
  • Le ayuda a encontrar los hechos relacionados con el diseño de la base de datos.

Resumen

  • La dependencia funcional es cuando un atributo determina otro atributo en un sistema DBMS.
  • Axioma, Descomposición, Dependiente, Determinante, Unión son términos clave para la dependencia funcional
  • Cuatro tipos de dependencia funcional son 1) Multivalor 2) Trivial 3) No trivial 4) Transitiva
  • La dependencia de varios valores se produce en la situación en la que hay varios atributos independientes de varios valores en una sola tabla
  • La dependencia Trivial ocurre cuando un conjunto de atributos que se denominan trivial si el conjunto de atributos está incluido en ese atributo
  • La dependencia no trivial ocurre cuando A-> B es cierto donde B no es un subconjunto de A
  • Un transitivo es un tipo de dependencia funcional que ocurre cuando está formada indirectamente por dos dependencias funcionales
  • La normalización es un método para organizar los datos en la base de datos que le ayuda a evitar la redundancia de datos.

Articulos interesantes...