2021.07.16 - [TIL ( CODESTATES)] - 백엔드 개발자 면접 후기 (직무수행능력평가) - 1편
5. Deletion Anomaly 문제와 그 해결 방법
(용어조차 처음 들어보았다. 하지만 공부하면서 알고보니 아쉽다. 내용은 아는데 용어를 몰라서 서술을 못했다는 게...)
Data Anomalies
Normalization is the process of splitting relations into well structured relations that allow users to insert, delete, and update tuples without introducing database. Without normalization many problems can occur when trying to load an integrated conceptual model into the DBMS. These problems arise from relations that are generated directly from user views are called anomalies. There are three types of anomalies: update, deletion and insertion anomalies.
데이터 정규화를 하지 않을 경우 여러 가지 Anomaly (이상 현상)이 발생할 수 있는데 그 종류로는
- Insertion Anomaly
- Update Anomaly
- Deletion Anomaly
가 있다.
Update Anomaly
Update Anomaly는 데이터가 중복되거나 부분적으로 업데이트를 했을 때 발생하는, 데이터 불일치 현상이다.
예를 들어,
- 중복된 데이터가 있는 테이블을(A.Brunchs)
- 업데이트 해야할 때(A.Brunchs가 부서를 CIS에서 Marketing으로 부서 이동을 한다던가)
위 표에서 A.Brunchs의 데이터 두 개 모두를 변경하지 않으면 불일치가 발생하게 된다.
Deletion Anomaly
Deletion Anomaly는 다른 데이터를 삭제함으로 인해 데이터 손실이 발생하는 이상을 말한다.
예를 들어,
- 데이터 하나를 삭제했는데 (Student_Group에서 Beta Alph Psi를 삭제할 경우)
- 해당 그룹에 속해있던 직원 J.Longfellow와 해당 직원이 속한 부서인 Accounting 까지도 삭제되는 것이다.
Insertion Anomaly
Insertion Anomaly는 어떤 데이터가 존재하지 않아서 데이터를 삽입하지 못할 때 발생하는 이상이다.
예를 들어,
- Student_Group은 정해진 값들을 가지고 있어서 null을 허용하지 않는데
- 신입 직원이 Student_Group에 아직 속하지 못한 경우(null)
이 직원의 정보는 db에 입력될 수 없다.
'TIL ( CODESTATES)' 카테고리의 다른 글
[Git] The requested URL returned error: 403 (0) | 2021.08.15 |
---|---|
새로 알게 된 깃헙 명령어 cherry-pick (0) | 2021.07.28 |
백엔드 개발자 면접 후기 (직무수행능력평가) - 1편 (0) | 2021.07.16 |
mysql root 비밀번호 변경하기 (0) | 2021.05.23 |
branch merge 실수 재현해보기 (0) | 2021.04.14 |