기술(Tech, IT)/데이터베이스(Database)

[DB] Functional Dependency(함수 종속성) - (1)

Daniel803 2023. 2. 9. 13:05

 Thomas Connolly와 Carolyn Begg의 저서인 Database Systems, A Practical Approach to Design, Implementation and Management Sixth Edition에 따르면 Funtional Dependency에 대한 정의는 아래와 같다.

 

: Describes the relationship between attributes in a relation. For example, if A and B are attributes of realation R, B is functionally dependent on A, if each value of A is associated with exactly one value of B. (A and B may each consist of one or more attributes.)

: 관계 속에 있는 속성 간의 관계를 설명한다. 예를 들어, A와 B가 관계 R의 속성일 때, A의 모든 값이 B에 정확히 하나씩 관계를 형성하고 있다면, B는 A에 함수적으로 의존하고 있다. (A와 B는 하나 이상의 속성으로 구성돼 있다.)

 

 GURU99는 다음과 같이 정의하고 있다.

: Functional Dependency (FD) is a constraint that determines the relation of one attribute to another attribute in a Database Management System (DBMS). Functional Dependency helps to maintain the quality of data in the database. It plays a vital role to find the difference between good and bad database design.
 A functional dependency is denoted by an arrow “→”. The functional dependency of X on Y is represented by X → Y.

: 함수 종속성은 데이터베이스 관리 시스템에서 한 속성이 다른 한 속성과의 관계를 결정하는 제약이다. 함수 종송석은 데이터베이스에서 데이터의 질을 유지하는데 기여한다. 이것은 데이터베이스의 설계과 훌륭한지 그렇지 못한지를 결정하는 중요한 역할을 한다.

 함수 종속성은 화살표(→)로 표시한다. X의 Y에 대한 함수 종속성은 X → Y으로 나타낸다.

 여기서 X는 결정자(Determinant), Y는 종속자(Depedent Attribute)라 한다. 함수 종속성은 데이터베이스의 정규화(Normalization)을 위해 반드시 알아야하는 개념이다. 

 

함수 종속성의 종류는 아래와 같다.

1. Full Funtional Dependency(완전 함수 종속)

2. Partial Funtional Dependency(부분 함수 종속)

3. Transitive Functional Dependency(이행 함수 종속)

4. Boyce-codd Normalization(결정자 함수 종속)

5. Multi-Valued Dependency(다중값 종속)

 

참고

- Database Systems, A Practical Approach to Design, Implementation and Management Sixth Edition

- https://www.guru99.com/dbms-functional-dependency.html

- https://velog.io/@busybean3/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%ED%95%A8%EC%88%98-%EC%A2%85%EC%86%8D%EC%84%B1Functional-Dependency