¿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 |
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 |
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.